Hi Alexandre, Could you apply this patch?
Regards, -Dongsheng > -----Original Message----- > From: Dongsheng Wang [mailto:dongsheng.w...@freescale.com] > Sent: Wednesday, August 12, 2015 5:14 PM > To: alexandre.bell...@free-electrons.com > Cc: a.zu...@towertech.it; rtc-li...@googlegroups.com; linux- > ker...@vger.kernel.org; Wang Dongsheng-B40534 > Subject: [PATCH v2] rtc/ds3232: fix ds3232 get a WARNING trace in resume > function > > From: Wang Dongsheng <dongsheng.w...@freescale.com> > > If ds3232 work on some platform that is not implementation > irq_set_wake, ds3232 will get a WARNING trace in resume. > So fix ds3232->suspended state to false when irq_set_irq_wake > return error. > > ------------[ cut here ]------------ > WARNING: CPU: 0 PID: 729 at kernel/irq/manage.c:604 > irq_set_irq_wake+0x4b/0x8c() > Unbalanced IRQ 201 wake disable > Modules linked in: > CPU: 0 PID: 729 Comm: sh Not tainted 3.12.19-rt30+ #25 > [<800107d9>] (unwind_backtrace+0x1/0x88) from [<8000e4ef>] > (show_stack+0xb/0xc) > [<8000e4ef>] (show_stack+0xb/0xc) from [<802b5fa9>] > (dump_stack+0x4d/0x60) > [<802b5fa9>] (dump_stack+0x4d/0x60) from [<800186dd>] > (warn_slowpath_common+0x45/0x64) > [<800186dd>] (warn_slowpath_common+0x45/0x64) from [<80018717>] > (warn_slowpath_fmt+0x1b/0x24) > [<80018717>] (warn_slowpath_fmt+0x1b/0x24) from [<8003a8d3>] > (irq_set_irq_wake+0x4b/0x8c) > [<8003a8d3>] (irq_set_irq_wake+0x4b/0x8c) from [<80204fcb>] > (ds3232_resume+0x2d/0x36) > [<80204fcb>] (ds3232_resume+0x2d/0x36) from [<801954c7>] > (dpm_run_callback.isra.13+0xb/0x28) > [<801954c7>] (dpm_run_callback.isra.13+0xb/0x28) from [<80195b1b>] > (device_resume+0x7b/0xa2) > [<80195b1b>] (device_resume+0x7b/0xa2) from [<80195f0f>] > (dpm_resume+0xbb/0x19c) > [<80195f0f>] (dpm_resume+0xbb/0x19c) from [<801960d9>] > (dpm_resume_end+0x9/0x12) > [<801960d9>] (dpm_resume_end+0x9/0x12) from [<80037e1d>] > (suspend_devices_and_enter+0x17d/0x1d0) > [<80037e1d>] (suspend_devices_and_enter+0x17d/0x1d0) from [<80037ee1>] > (pm_suspend+0x71/0x128) > [<80037ee1>] (pm_suspend+0x71/0x128) from [<80037449>] > (state_store+0x6d/0x80) > [<80037449>] (state_store+0x6d/0x80) from [<800af4d5>] > (sysfs_write_file+0x9f/0xde) > [<800af4d5>] (sysfs_write_file+0x9f/0xde) from [<8007a437>] > (vfs_write+0x7b/0x104) > [<8007a437>] (vfs_write+0x7b/0x104) from [<8007a7f7>] > (SyS_write+0x27/0x48) > [<8007a7f7>] (SyS_write+0x27/0x48) from [<8000c121>] > (ret_fast_syscall+0x1/0x44) > ---[ end trace 640959d2e8de6ccc ]--- > > Signed-off-by: Wang Dongsheng <dongsheng.w...@freescale.com> > --- > *v2* > - Use dev_warn_once to instead of dev_info > > diff --git a/drivers/rtc/rtc-ds3232.c b/drivers/rtc/rtc-ds3232.c > index 7e48e53..3554970 100644 > --- a/drivers/rtc/rtc-ds3232.c > +++ b/drivers/rtc/rtc-ds3232.c > @@ -463,7 +463,10 @@ static int ds3232_suspend(struct device *dev) > > if (device_can_wakeup(dev)) { > ds3232->suspended = true; > - irq_set_irq_wake(client->irq, 1); > + if (irq_set_irq_wake(client->irq, 1)) { > + dev_warn_once(dev, "Can not set wakeup sources\n"); > + ds3232->suspended = false; > + } > } > > return 0; > -- > 2.1.0.27.g96db324 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/