[coreboot] [patch] vt8237r_ide bugfix: ide_[01]_80pin_cable flags needs to be unsigned

Tobias Diedrich ranma+coreboot at tdiedrich.de
Sat Nov 13 02:29:30 CET 2010


Currently the 
        cablesel |= (sb->ide0_80pin_cable << 28) |
                    (sb->ide0_80pin_cable << 20) |
                    (sb->ide1_80pin_cable << 12) |
                    (sb->ide1_80pin_cable << 4);
in vt8237r_ide.c ends up doing
	cablesel |= 0xfffffff0;
(with both bits set to 1) which is probably not the intended result. ;)

After a short discussion on irc the consensus was to change the
bitfields to u8 as it's probably not worth it using bitfields here.

Signed-off-by: Tobias Diedrich <ranma+coreboot at tdiedrich.de>

---

Index: src/southbridge/via/vt8237r/chip.h
===================================================================
--- src/southbridge/via/vt8237r/chip.h.orig	2010-11-13 02:09:04.000000000 +0100
+++ src/southbridge/via/vt8237r/chip.h	2010-11-13 02:22:32.000000000 +0100
@@ -50,12 +50,12 @@
 	 */
 	u16 fn_ctrl_hi;
 
-	int ide0_enable:1;
-	int ide1_enable:1;
+	u8 ide0_enable;
+	u8 ide1_enable;
 
 	/* 1 = 80-pin cable, 0 = 40-pin cable */
-	int ide0_80pin_cable:1;
-	int ide1_80pin_cable:1;
+	u8 ide0_80pin_cable;
+	u8 ide1_80pin_cable;
 };
 
 #endif /* SOUTHBRIDGE_VIA_VT8237R_CHIP_H */




More information about the coreboot mailing list