Messages in this thread Patch in this message | | | Date | Wed, 31 Dec 2003 00:00:29 +0100 | From | Vojtech Pavlik <> | Subject | Re: 2.6.0-test6: APM unable to suspend (the 2.6.0-test2 saga continues) |
| |
On Tue, Dec 30, 2003 at 07:53:03PM +0000, Russell King wrote: > On Tue, Dec 30, 2003 at 07:40:03PM +0000, Russell King wrote: > > On Tue, Dec 30, 2003 at 10:47:10AM -0800, Linus Torvalds wrote: > > > On Tue, 30 Dec 2003, Russell King wrote: > > > > > > > > - i8042_noaux=1 - this doesn't seem to make any difference, although > > > > this does appear to leave the CTR set as 0x65, which appears to be > > > > the BIOS-set value. > > > > > > Doesn't that leave the kbd mask the same? In particular, it still sets the > > > "disable" bit, aka I8042_CTR_KBDDIS later on.. > > > > Seems to. With noaux unset, CTR is set to 0x47. > > > > > What happens if you just define I8042_CTR_KBDDIS to zero? > > > > That still causes suspend to fail. I've separately tested I8042_CTR_KBDINT > > set to zero as well, and that still causes failure. > > I just tried this change to i8042.c, and suspend magically started > working. > > @@ -814,8 +815,8 @@ > i8042_port_register(&i8042_kbd_values, &i8042_kbd_port); > > init_timer(&i8042_timer); > - i8042_timer.function = i8042_timer_func; > - mod_timer(&i8042_timer, jiffies + I8042_POLL_PERIOD); > +// i8042_timer.function = i8042_timer_func; > +// mod_timer(&i8042_timer, jiffies + I8042_POLL_PERIOD); > > register_reboot_notifier(&i8042_notifier); > > So it looks like i8042 could do with hooking some power management > to disable this timer before suspend and resume it afterwards. > > Vojtech?
Agreed. There should already be some in -mm kernels, and I'll make sure the timer is deleted before suspend. Thanks for finding this.
-- Vojtech Pavlik SuSE Labs, SuSE CR - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |