That patch says

+ outb(0x60, 0x64); /* write Controller Command Byte */
+               udelay(50);
+               kb_wait();
+               udelay(50);
+               outb(0x14, 0x60);       /* set "System flag" */

so the comment doesn't agree with the code: it sets
all flags in the command byte, not just the system
flag.  Perhaps importantly, it disables the keyboard
clock.  Why not do a read-modify-write sequence instead?
Something like

outb(0x20, 0x64); /* read Controller Command Byte */
               udelay(50);
               kb_wait();
               udelay(50);
               u8 cmd = inb(0x60);
               udelay(50);
               kb_wait();
               udelay(50);
outb(0x60, 0x64); /* write Controller Command Byte */
               udelay(50);
               kb_wait();
               udelay(50);
               outb(cmd | 0x04, 0x60); /* set "System flag" */

Segher

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to