On 21/03/2019 15:33, Sameer Pujar wrote: > gic-pm driver is using pm_clk_*() interface to manage clock resources. With > this, clocks always remain ON. This happens on Tegra devices which use BPMP > co-processor to manage the clocks, where clocks are enabled during prepare > phase. This is necessary because calls to BPMP are always blocking. When > pm_clk_*() interface is used on such devices, clock prepare count is not > balanced till driver remove() gets executed and hence clocks are seen ON > always. This patch helps to keep clock ref counts balanced and thus clocks > are off, when device not in use. > > Please note that this works for any device and the fix is not specific to > Tegra devices. > > Suggested-by: Mohan Kumar D <mkumard@xxxxxxxxxx> > Signed-off-by: Sameer Pujar <spujar@xxxxxxxxxx> > Reviewed-by: Jonathan Hunter <jonathanh@xxxxxxxxxx> The $subject is only relevant to Tegra. For other devices this may not be a problem. However, the $subject implies there is a bug in the driver where really there is not. Furthermore, devm_clk is only used for allocating clocks and has nothing to do with clock management and so it is still a bit confusing. I would suggest that you change the $subject to simply 'update driver to use clk_bulk APIs' or 'update driver not to use pm-clk APIs' and let the changelog describe why we are doing this. Cheers Jon -- nvpublic