OSDN Git Service

powercap/drivers/dtpm: Encapsulate even more the code
authorDaniel Lezcano <daniel.lezcano@linaro.org>
Fri, 12 Mar 2021 13:04:07 +0000 (14:04 +0100)
committerDaniel Lezcano <daniel.lezcano@linaro.org>
Thu, 21 Oct 2021 14:03:31 +0000 (16:03 +0200)
commit4570ddda43387e5a130dd85e71a1947b0c11da77
tree33a01d427251b3ce75245470942c3c811203188f
parent6880fa6c56601bb8ed59df6c30fd390cc5f6dd8f
powercap/drivers/dtpm: Encapsulate even more the code

In order to increase the self-encapsulation of the dtpm generic code,
the following changes are adding a power update ops to the dtpm
ops. That allows the generic code to call directly the dtpm backend
function to update the power values.

The power update function does compute the power characteristics when
the function is invoked. In the case of the CPUs, the power
consumption depends on the number of online CPUs. The online CPUs mask
is not up to date at CPUHP_AP_ONLINE_DYN state in the tear down
callback. That is the reason why the online / offline are at separate
state. As there is already an existing state for DTPM, this one is
only moved to the DEAD state, so there is no addition of new state
with these changes. The dtpm node is not removed when the cpu is
unplugged.

That simplifies the code for the next changes and results in a more
self-encapsulated code.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Link: https://lore.kernel.org/r/20210312130411.29833-1-daniel.lezcano@linaro.org
drivers/powercap/dtpm.c
drivers/powercap/dtpm_cpu.c
include/linux/cpuhotplug.h
include/linux/dtpm.h