[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b544e079-c9de-23d3-80f7-cff89293eeb5@linaro.org>
Date: Wed, 23 Aug 2023 09:48:19 +0200
From: Daniel Lezcano <daniel.lezcano@...aro.org>
To: AngeloGioacchino Del Regno
<angelogioacchino.delregno@...labora.com>,
Bernhard Rosenkränzer <bero@...libre.com>,
rafael@...nel.org, amitk@...nel.org, rui.zhang@...el.com,
matthias.bgg@...il.com, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, rdunlap@...radead.org,
ye.xingchen@....com.cn, p.zabel@...gutronix.de,
Alexandre Mergnat <amergnat@...libre.com>
Cc: linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
linux-mediatek@...ts.infradead.org, devicetree@...r.kernel.org,
wenst@...omium.org, james.lo@...iatek.com,
rex-bc.chen@...iatek.com, nfraprado@...labora.com,
abailon@...libre.com, amergnat@...libre.com, khilman@...libre.com
Subject: Re: [PATCH v4 2/5] thermal/drivers/mediatek/lvts_thermal: Add suspend
and resume
On 31/05/2023 10:05, AngeloGioacchino Del Regno wrote:
[ ... ]
>> static const struct lvts_ctrl_data mt8195_lvts_mcu_data_ctrl[] = {
>> {
>> .cal_offset = { 0x04, 0x07 },
>> @@ -1268,6 +1300,8 @@ MODULE_DEVICE_TABLE(of, lvts_of_match);
>> static struct platform_driver lvts_driver = {
>> .probe = lvts_probe,
>> .remove = lvts_remove,
>> + .suspend = lvts_suspend,
>
> Should we do that in noirq handlers?
> We're risking to miss a thermal interrupt.
I'm not sure missing a thermal interrupt is a problem in this context
but we may go in the irq routine with an undefined state sensor setup
(eg. the internal clock stopped in the suspend and then read the sensor
in the isr).
IMO, using suspend_noirq and resume_noirq may be required here.
Alexandre are you taking over the next iteration?
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
Powered by blists - more mailing lists