[PATCH v2 2/5] dt-bindings: gpu: add a power_model optional properties for MALI

Rob Herring robh at kernel.org
Mon Jul 17 13:07:33 PDT 2017


On Mon, Jul 17, 2017 at 04:14:28PM +0800, Caesar Wang wrote:
> This patch adds the MALI's power-model to set the IPA model to be used
> for power management.

What's IPA? India Pale Ale or Intermediate Physical Address?

> 
> Signed-off-by: Caesar Wang <wxt at rock-chips.com>
> ---
> 
> Changes in v2: None
> 
>  Documentation/devicetree/bindings/gpu/arm,mali-midgard.txt | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/gpu/arm,mali-midgard.txt b/Documentation/devicetree/bindings/gpu/arm,mali-midgard.txt
> index a461e47..b616e6b 100644
> --- a/Documentation/devicetree/bindings/gpu/arm,mali-midgard.txt
> +++ b/Documentation/devicetree/bindings/gpu/arm,mali-midgard.txt
> @@ -37,6 +37,18 @@ Optional properties:
>  - operating-points-v2 : Refer to Documentation/devicetree/bindings/power/opp.txt
>    for details.
>  
> +- power_model : Sets power model parameters. Note that this model was designed for the Juno
> +	        platform, and may not be suitable for other platforms. A structure containing :
> +	- compatible: Should be arm,mali-simple-power-model
> +	- dynamic-coefficient: Coefficient, in pW/(Hz V^2), which is multiplied
> +	  by v^2*f to calculate the dynamic power consumption.
> +	- static-coefficient: Coefficient, in uW/V^3, which is multiplied by
> +	  v^3 to calculate the static power consumption.
> +	- ts: An array containing coefficients for the temperature scaling
> +	  factor. This is used to scale the static power by a factor of
> +	  tsf/1000000, where tsf = ts[3]*T^3 + ts[2]*T^2 + ts[1]*T + ts[0],
> +	  and T = temperature in degrees.
> +	- thermal-zone: A string identifying the thermal zone used for the GPU

This can all easily be implied by the compatible string. I'm not 
inclined to accept something Mali specific here.

This looks *very* precise, but I'd be surprised if these values are any 
more than magic values (at least the dynamic coef) adjusted until the 
desired power/performance requirements are achieved. To put it another 
way, why don't we have similar values for CPUs? 

Rob



More information about the Linux-rockchip mailing list