[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <34ee9676-567f-4c07-83b0-f3b8b1e08db9@linaro.org>
Date: Mon, 12 Feb 2024 16:02:49 +0100
From: neil.armstrong@...aro.org
To: Dmitry Rokosov <ddrokosov@...utedevices.com>, jbrunet@...libre.com,
mturquette@...libre.com, adeep@...ina.in, robh+dt@...nel.org,
krzysztof.kozlowski+dt@...aro.org, khilman@...libre.com,
martin.blumenstingl@...glemail.com, conor+dt@...nel.org
Cc: kernel@...rdevices.ru, sdfw_system_team@...rdevices.ru,
rockosov@...il.com, linux-amlogic@...ts.infradead.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH v1 2/2] arm64: dts: amlogic: axg: initialize default SoC
capacitance
On 09/02/2024 22:28, Dmitry Rokosov wrote:
> The capacitance value is required for the usage of the cpufreq cooling
> device and power_allocator thermal governor in the appropriate energy
> model.
>
> It helps to compute the power estimated by the SoC at the appropriate
> frequency. If it is the frequency of an existing OPP, or at the
> frequency of the first OPP above the requested value otherwise.
>
> The power is estimated as P = C * V^2 * f, with C being the SoC's
> capacitance and V and f respectively representing the voltage and
> frequency of the OPP.
>
> Since AXG SoC doesn't have SCMI protocol support, we need to initialize
> capacitance using the 'dynamic-power-coefficient' DT entry. Its value is
> retrieved from the vendor kernel, and it gives us the following
> freq2power mapping:
> +-----------+--------+
> | frequency,| power, |
> | MHz | uW |
> +-----------+--------+
> | 100 | 10354 |
> +-----------+--------+
> | 250 | 27104 |
> +-----------+--------+
> | 500 | 55447 |
> +-----------+--------+
> | 667 | 77327 |
> +-----------+--------+
> | 1000 | 129024 |
> +-----------+--------+
> | 1200 | 164656 |
> +-----------+--------+
> | 1296 | 192489 |
> +-----------+--------+
> | 1416 | 239870 |
> +-----------+--------+
>
> Signed-off-by: Dmitry Rokosov <ddrokosov@...utedevices.com>
> ---
> arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> index ea96fef328e8..6d12b760b90f 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> @@ -74,6 +74,7 @@ cpu0: cpu@0 {
> enable-method = "psci";
> next-level-cache = <&l2>;
> clocks = <&scpi_dvfs 0>;
> + dynamic-power-coefficient = <140>;
> #cooling-cells = <2>;
> };
>
> @@ -84,6 +85,7 @@ cpu1: cpu@1 {
> enable-method = "psci";
> next-level-cache = <&l2>;
> clocks = <&scpi_dvfs 0>;
> + dynamic-power-coefficient = <140>;
> #cooling-cells = <2>;
> };
>
> @@ -94,6 +96,7 @@ cpu2: cpu@2 {
> enable-method = "psci";
> next-level-cache = <&l2>;
> clocks = <&scpi_dvfs 0>;
> + dynamic-power-coefficient = <140>;
> #cooling-cells = <2>;
> };
>
> @@ -104,6 +107,7 @@ cpu3: cpu@3 {
> enable-method = "psci";
> next-level-cache = <&l2>;
> clocks = <&scpi_dvfs 0>;
> + dynamic-power-coefficient = <140>;
> #cooling-cells = <2>;
> };
>
Reviewed-by: Neil Armstrong <neil.armstrong@...aro.org>
Powered by blists - more mailing lists