On Mon, Feb 14, 2005 at 11:32:30AM -0500, Prarit Bhargava wrote:

> I didn't see a final ACK on this patch -- just checking for one :)

The patch was redone - we now check for error from the 'flush' command
before sending CTL_TEST.

> P.
> 
> Prarit Bhargava wrote:
> 
> >I've taken into account Dmitry's comments (thanks Dmitry!) and 
> >generated a new patch.
> >
> >Thanks,
> >
> >P.
> >Jesse Barnes wrote:
> >
> >>On Friday, January 21, 2005 8:35 am, Vojtech Pavlik wrote:
> >> 
> >>
> >>>No. But vacant ports usually return 0xff. The problem here is that 0xff
> >>>is a valid value for the status register, too. Fortunately this patch
> >>>checks for 0xff only after the timeout failed.
> >>>  
> >>
> >>
> >>On PCs you'll get all 1s, but on some ia64 platforms and others, 
> >>you'll take a hard machine check exception if you try to access 
> >>non-existent memory (mmio, port space, or otherwise).
> >>
> >>Jesse
> >>-
> >>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/
> >>
> >> 
> >>
> >------------------------------------------------------------------------
> >
> >===== i8042.c 1.71 vs edited =====
> >--- 1.71/drivers/input/serio/i8042.c 2005-01-03 08:11:49 -05:00
> >+++ edited/i8042.c   2005-01-21 11:50:11 -05:00
> >@@ -696,7 +696,10 @@
> >             unsigned char param;
> >
> >             if (i8042_command(&param, I8042_CMD_CTL_TEST)) {
> >-                    printk(KERN_ERR "i8042.c: i8042 controller self test 
> >timeout.\n");
> >+                    if (i8042_read_status() != 0xFF)
> >+                            printk(KERN_ERR "i8042.c: i8042 controller 
> >self test timeout.\n");
> >+                    else
> >+                            printk(KERN_ERR "i8042.c: no i8042 
> >controller found.\n");
> >                     return -1;
> >             }
> >
> >@@ -1016,16 +1019,22 @@
> >     i8042_aux_values.irq = I8042_AUX_IRQ;
> >     i8042_kbd_values.irq = I8042_KBD_IRQ;
> >
> >-    if (i8042_controller_init())
> >+    if (i8042_controller_init()) {
> >+            i8042_platform_exit();
> >             return -ENODEV;
> >+    }
> >
> >     err = driver_register(&i8042_driver);
> >-    if (err)
> >+    if (err) {
> >+            i8042_platform_exit();
> >             return err;
> >+    }
> >
> >     i8042_platform_device = platform_device_register_simple("i8042", -1, 
> >     NULL, 0);
> >     if (IS_ERR(i8042_platform_device)) {
> >             driver_unregister(&i8042_driver);
> >+            i8042_platform_exit();
> >+            del_timer_sync(&i8042_timer);
> >             return PTR_ERR(i8042_platform_device);
> >     }
> >
> > 
> >
> 

-- 
Vojtech Pavlik
SuSE Labs, SuSE CR
-
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