lkml.org 
[lkml]   [2018]   [Jul]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] i2c: i2c-qcom-geni: Fix suspend clock handling
On Mon, Jul 09, 2018 at 04:49:37PM -0700, Evan Green wrote:
> pm_runtime_suspended can return 0 even if the last runtime power
> management function called in the device was a suspend call. This
> trips up the i2c-qcom-geni's suspend_noirq accounting, which was
> trying to use the function to determine if it should disable clocks
> or if that had already been done.
>
> The fix is to track whether or not clocks have been enabled explicitly
> in the driver with a new member. While in there, also honor the return
> value of geni_se_resources_off, which can technically fail.
>
> An example of the warning generated during suspend:
> [ 68.314733] WARNING: CPU: 0 PID: 1990 at drivers/clk/clk.c:595 clk_core_disable+0x28/0x200
> [ 68.464576] Call trace:
> [ 68.554410] [<ffffff80083f0ed0>] clk_core_disable+0x28/0x200
> [ 68.560244] [<ffffff80083f349c>] clk_disable+0x38/0x4c
> [ 68.565541] [<ffffff8008408910>] geni_se_resources_off+0x40/0x74
> [ 68.571731] [<ffffff800862aadc>] geni_i2c_runtime_suspend+0x2c/0x3c
> [ 68.578185] [<ffffff800862ae6c>] geni_i2c_suspend_noirq+0x38/0x68
> [ 68.584475] [<ffffff800852bd40>] dpm_run_callback+0x104/0x210
> [ 68.590404] [<ffffff800852c3d4>] __device_suspend_noirq+0x158/0x1a8
> [ 68.596859] [<ffffff800852dff0>] dpm_noirq_suspend_devices+0x180/0x38c
> [ 68.603594] [<ffffff80080fdebc>] suspend_devices_and_enter+0x49c/0x964
> [ 68.610321] [<ffffff80080fea14>] pm_suspend+0x690/0x6e0
> [ 68.615712] [<ffffff80080fc930>] state_store+0xd4/0xf8
> [ 68.621014] [<ffffff80088a57f0>] kobj_attr_store+0x18/0x28
> [ 68.626672] [<ffffff8008297a54>] sysfs_kf_write+0x5c/0x68
> [ 68.632240] [<ffffff8008296a00>] kernfs_fop_write+0x174/0x1b8
> [ 68.638177] [<ffffff800821a2c4>] __vfs_write+0x58/0x160
> [ 68.643567] [<ffffff800821a5d8>] vfs_write+0xcc/0x184
> [ 68.648780] [<ffffff800821a850>] SyS_write+0x64/0xb4
>
> Signed-off-by: Evan Green <evgreen@chromium.org>
> ---
> This change applies atop Karthik's patch [1], which as far as I can tell
> technically hasn't landed yet, but also hasn't had feedback in awhile
> either. I opted to submit this as a separate patch, but if the maintainers
> prefer it's fine with me if this get folded in to another spin of the
> base series.
>
> [1] https://patchwork.kernel.org/patch/10460819/

Yeah, since the FSI driver seems to be mostly done now, this will be the
next new driver I will have a look at.

If the maintainers of the driver ack or rev this patch, I would then
just fold it into the driver itself when I apply it?

D'accord everyone?

[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2018-07-15 22:06    [W:0.061 / U:0.320 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site