Re: [PATCH v2 2/2] soc: amlogic: ee-pwrc: ensure driver state maches HW state
From: Kevin Hilman <khilman@baylibre.com>
Date: 2019-09-30 15:32:14
Also in:
linux-amlogic, linux-pm
Jerome Brunet [off-list ref] writes:
On Fri 27 Sep 2019 at 08:37, Neil Armstrong [off-list ref] wrote:quoted
On 26/09/2019 21:08, Kevin Hilman wrote:quoted
Neil Armstrong [off-list ref] writes:quoted
On 25/09/2019 23:35, Kevin Hilman wrote:quoted
From: Kevin Hilman <khilman@baylibre.com> During init, ensure that the driver on/off state as well as clock and reset state matches the hardware state. Do this by always calling the drivers 'on' function, and then callling the 'off' function if the HW state was initially detected as off.[...]quoted
I don't see what you are trying to solve except simplifying the code.Simplifying the code is a worthwhile goal on its own, but that's not the only thing I'm tring to accomplish.I still find it ugly to power_on a domain to power it off right afterwards. The issue is with the CCF enable handling which is not in sync with the HW, if you boot with an already enabled clock, it won't be marked enabled in CCF, and it's clearly bad when you want to have a fine-tuned gate state handling.CCF should disable unused clock so, in theory, you should not have to call enable() then disable() to get things in sync.
But CCF won't disabled unused clocks until late(ish) in the boot process, which is also when the unused PM domains will be disabled, so I think there's still a potential for race between the late "disable unused" features of clocks and pm-domains. Kevin _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel