Messages in this thread | | | Subject | Re: [regression, bisected] adb trackpad disappears after suspend to ram | From | Benjamin Herrenschmidt <> | Date | Tue, 02 Jun 2009 14:49:24 +1000 |
| |
> So, it seems we lose and interrupt during resume and that confuses the > ADB controller driver or something like this. Do you use the keyboard or > the trackpad as a wake-up device? > > Please additionally try to go back to the original code, put > 'sleepy_trackpad = 1' at the beginning of do_adb_reset_bus() in > drivers/macintosh/adb.c and see if the problem is reproducible with that.
Well, the ADB controller is also the PMU (drivers/macintosh/via-pmu.c) which is also the system controller, handles the actual sleep state, etc... :-)
That code is a bit itchy around the edges. I'm not sure it would have lost an interrupt, that sounds more like losing an IRQ would have broken it completely but it's not -impossible- (especially if it's the external GPIO or CB1 interrupt that notifies of an incoming ADB message).
I haven't managed to reproduce the problem yet here though. I'll see if I can with a titanium powerbook I have somewhere in storage that might be a bit closer to your machine than the wallstreet powerbook I've been using to test at work :-) My other powerbook test machine uses a USB trackpad.
Cheers, Ben.
| |