From mboxrd@z Thu Jan 1 00:00:00 1970 From: pavel@ucw.cz (Pavel Machek) Date: Thu, 7 Jan 2010 07:52:32 +0100 Subject: sharp c-3000 aka spitz: fix warn_on introduced in 2.6.32-rc1 In-Reply-To: References: <20100106071026.GD1382@ucw.cz> Message-ID: <20100107065230.GA1303@ucw.cz> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed 2010-01-06 15:17:39, Eric Miao wrote: > On Wed, Jan 6, 2010 at 3:10 PM, Pavel Machek wrote: > > > > Sharp-SL code uses strange, complex grouping of gpios for wakeups > > toggling. Fortunately, it is unneeded in recent kernels (and actually > > provokes WARN_ONs during resume). Remove it. > > > > Signed-off-by: Pavel Machek > > Pavel, > > The code to be removed below is used to support pxa27x_keypad > to be able to resume from sleep. What's the exact reason to remove > this on spitz? Well, otherwise I get this during resume: (2.6.32 regression) (and similar for matrix-keypad, but dmitry worked around that already). Problem is that gpio-keys and matrix-keypad want to set_wake for each gpio individually, hw can do that, but pxa27x.c breaks it. I don't get it; what is pxa27x_keypad used on? It looks like matrix-keypad subset. Pavel pxa2xx-spi pxa2xx-spi.2: resume sharp-scoop sharp-scoop.0: resume matrix-keypad matrix-keypad: resume gpio-keys gpio-keys: resume ------------[ cut here ]------------ WARNING: at kernel/irq/manage.c:361 set_irq_wake+0x7c/0x138() Unbalanced IRQ 191 wake disable Modules linked in: [] (unwind_backtrace+0x0/0xe4) from [] (warn_slowpath_common+0x4c/0x80) [] (warn_slowpath_common+0x4c/0x80) from [] (warn_slowpath_fmt+0x28/0x38) [] (warn_slowpath_fmt+0x28/0x38) from [] (set_irq_wake+0x7c/0x138) [] (set_irq_wake+0x7c/0x138) from [] (gpio_keys_resume+0x94/0xd0) [] (gpio_keys_resume+0x94/0xd0) from [] (platform_pm_resume+0x30/0x54) [] (platform_pm_resume+0x30/0x54) from [] (pm_op+0xa0/0xc0) [] (pm_op+0xa0/0xc0) from [] (dpm_resume_end+0x100/0x474) [] (dpm_resume_end+0x100/0x474) from [] (suspend_devices_and_enter+0x8c/0x1dc) [] (suspend_devices_and_enter+0x8c/0x1dc) from [] (enter_state+0xe8/0x120) [] (enter_state+0xe8/0x120) from [] (state_store+0x90/0xc4) [] (state_store+0x90/0xc4) from [] (kobj_attr_store+0x1c/0x24) [] (kobj_attr_store+0x1c/0x24) from [] (sysfs_write_file+0x104/0x18c) [] (sysfs_write_file+0x104/0x18c) from [] (vfs_write+0xb0/0x164) [] (vfs_write+0xb0/0x164) from [] (sys_write+0x40/0x70) [] (sys_write+0x40/0x70) from [] (ret_fast_syscall+0x0/0x28) ---[ end trace d1b2070efbc838e4 ]--- leds-gpio leds-gpio: resume sharpsl-nand sharpsl-nand: resume -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html