forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
2.3 KiB
89 lines
2.3 KiB
Binding for ST's CPUFreq driver |
|
=============================== |
|
|
|
ST's CPUFreq driver attempts to read 'process' and 'version' attributes |
|
from the SoC, then supplies the OPP framework with 'prop' and 'supported |
|
hardware' information respectively. The framework is then able to read |
|
the DT and operate in the usual way. |
|
|
|
Frequency Scaling only |
|
---------------------- |
|
|
|
No vendor specific driver required for this. |
|
|
|
Located in CPU's node: |
|
|
|
- operating-points : [See: ../power/opp-v1.yaml] |
|
|
|
Example [safe] |
|
-------------- |
|
|
|
cpus { |
|
cpu@0 { |
|
/* kHz uV */ |
|
operating-points = <1500000 0 |
|
1200000 0 |
|
800000 0 |
|
500000 0>; |
|
}; |
|
}; |
|
|
|
Dynamic Voltage and Frequency Scaling (DVFS) |
|
-------------------------------------------- |
|
|
|
This requires the ST CPUFreq driver to supply 'process' and 'version' info. |
|
|
|
Located in CPU's node: |
|
|
|
- operating-points-v2 : [See ../power/opp-v2.yaml] |
|
|
|
Example [unsafe] |
|
---------------- |
|
|
|
cpus { |
|
cpu@0 { |
|
operating-points-v2 = <&cpu0_opp_table>; |
|
}; |
|
}; |
|
|
|
cpu0_opp_table: opp_table { |
|
compatible = "operating-points-v2"; |
|
|
|
/* ############################################################### */ |
|
/* # WARNING: Do not attempt to copy/replicate these nodes, # */ |
|
/* # they are only to be supplied by the bootloader !!! # */ |
|
/* ############################################################### */ |
|
opp0 { |
|
/* Major Minor Substrate */ |
|
/* 2 all all */ |
|
opp-supported-hw = <0x00000004 0xffffffff 0xffffffff>; |
|
opp-hz = /bits/ 64 <1500000000>; |
|
clock-latency-ns = <10000000>; |
|
|
|
opp-microvolt-pcode0 = <1200000>; |
|
opp-microvolt-pcode1 = <1200000>; |
|
opp-microvolt-pcode2 = <1200000>; |
|
opp-microvolt-pcode3 = <1200000>; |
|
opp-microvolt-pcode4 = <1170000>; |
|
opp-microvolt-pcode5 = <1140000>; |
|
opp-microvolt-pcode6 = <1100000>; |
|
opp-microvolt-pcode7 = <1070000>; |
|
}; |
|
|
|
opp1 { |
|
/* Major Minor Substrate */ |
|
/* all all all */ |
|
opp-supported-hw = <0xffffffff 0xffffffff 0xffffffff>; |
|
opp-hz = /bits/ 64 <1200000000>; |
|
clock-latency-ns = <10000000>; |
|
|
|
opp-microvolt-pcode0 = <1110000>; |
|
opp-microvolt-pcode1 = <1150000>; |
|
opp-microvolt-pcode2 = <1100000>; |
|
opp-microvolt-pcode3 = <1080000>; |
|
opp-microvolt-pcode4 = <1040000>; |
|
opp-microvolt-pcode5 = <1020000>; |
|
opp-microvolt-pcode6 = <980000>; |
|
opp-microvolt-pcode7 = <930000>; |
|
}; |
|
};
|
|
|