Tanix TX6 has a fixed regulator. As DVFS is instructed to change voltage to meet OPP table, the DVFS is not working as expected. Avoid to introduce a new dedicated OPP Table where voltage are equals to the fixed regulator as it will only duplicate all the OPPs. Instead remove the fixed regulator so the DVFS framework will create dummy regulator and will have the same behavior. Add some comments to explain this in the device-tree. Reported-by: Piotr Oniszczuk <warpme@xxxxx> Fixes: add1e27fb703 ("arm64: dts: allwinner: h6: Enable CPU opp tables for Tanix TX6") Signed-off-by: Clément Péron <peron.clem@xxxxxxxxx> --- .../boot/dts/allwinner/sun50i-h6-tanix-tx6.dts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts index be81330db14f..3e96fcb317ea 100644 --- a/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts +++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-tanix-tx6.dts @@ -48,7 +48,15 @@ }; &cpu0 { - cpu-supply = <®_vdd_cpu_gpu>; + /* + * Don't specify the CPU regulator, as it's a fixed + * regulator DVFS will not work as it is intructed + * to reach a voltage which can't be reached. + * Not specifying a regulator will create a dummy + * regulator allowing all OPPs. + * + * cpu-supply = <®_vdd_cpu_gpu>; + */ }; &de { @@ -68,7 +76,13 @@ }; &gpu { - mali-supply = <®_vdd_cpu_gpu>; + /* + * Don't specify the GPU regulator, see comment + * above for the CPU supply. + * + * mali-supply = <®_vdd_cpu_gpu>; + */ + status = "okay"; }; -- 2.20.1