[PATCH v2] arm64: dts: rockchip: Add dtsi file for RK3399S SoC variant

Dragan Simic dsimic at manjaro.org
Fri Oct 11 01:23:13 PDT 2024


Hello Diederik,

On 2024-10-11 10:00, Diederik de Haas wrote:
> On Fri Oct 11, 2024 at 9:40 AM CEST, Dragan Simic wrote:
>> Following the hierarchical representation of the SoC data that's been 
>> already
>> established in the commit 296602b8e5f7 ("arm64: dts: rockchip: Move 
>> RK3399
>> OPPs to dtsi files for SoC variants"), add new SoC dtsi file for the 
>> Rockchip
>> RK3399S SoC, which is yet another variant of the Rockchip RK3399 SoC.
>> ...
>> The RK3399S variant is used in the Pine64 PinePhone Pro only, [1] 
>> whose board
>> dts file included the necessary adjustments to the CPU DVFS OPPs.  
>> This commit
>> effectively moves those adjustments into the separate RK3399S SoC dtsi 
>> file,
>> following the above-mentioned "encapsulation" approach.
>> ...
>> ---
>> ...
>>  .../dts/rockchip/rk3399-pinephone-pro.dts     |  23 +---
>>  arch/arm64/boot/dts/rockchip/rk3399-s.dtsi    | 123 
>> ++++++++++++++++++
>>  2 files changed, 124 insertions(+), 22 deletions(-)
>>  create mode 100644 arch/arm64/boot/dts/rockchip/rk3399-s.dtsi
>> 
>> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts 
>> b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
>> index 1a44582a49fb..eee6cfb6de01 100644
>> --- a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
>> +++ b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
>> @@ -13,7 +13,7 @@
>>  #include <dt-bindings/input/gpio-keys.h>
>>  #include <dt-bindings/input/linux-event-codes.h>
>>  #include <dt-bindings/leds/common.h>
>> -#include "rk3399.dtsi"
>> +#include "rk3399-s.dtsi"
>> 
>>  / {
>>  	model = "Pine64 PinePhone Pro";
>> @@ -456,27 +456,6 @@ mpu6500 at 68 {
>>  	};
>>  };
>> 
>> -&cluster0_opp {
>> -	opp04 {
>> -		status = "disabled";
>> -	};
>> -
>> -	opp05 {
>> -		status = "disabled";
>> -	};
>> -};
>> -
>> -&cluster1_opp {
>> -	opp06 {
>> -		opp-hz = /bits/ 64 <1500000000>;
>> -		opp-microvolt = <1100000 1100000 1150000>;
>> -	};
>> -
>> -	opp07 {
>> -		status = "disabled";
>> -	};
>> -};
>> -
>>  &io_domains {
>>  	bt656-supply = <&vcc1v8_dvp>;
>>  	audio-supply = <&vcca1v8_codec>;
>> diff --git a/arch/arm64/boot/dts/rockchip/rk3399-s.dtsi 
>> b/arch/arm64/boot/dts/rockchip/rk3399-s.dtsi
>> new file mode 100644
>> index 000000000000..e54f451af9f3
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/rockchip/rk3399-s.dtsi
>> @@ -0,0 +1,123 @@
>> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
>> +/*
>> + * Copyright (c) 2016-2017 Fuzhou Rockchip Electronics Co., Ltd
>> + */
>> +
>> +#include "rk3399-base.dtsi"
>> +
>> +/ {
>> +	cluster0_opp: opp-table-0 {
>> +		compatible = "operating-points-v2";
>> +		opp-shared;
>> +
>> +		opp00 {
>> +			opp-hz = /bits/ 64 <408000000>;
>> +			opp-microvolt = <825000 825000 1250000>;
>> +			clock-latency-ns = <40000>;
>> +		};
>> +		opp01 {
>> +			opp-hz = /bits/ 64 <600000000>;
>> +			opp-microvolt = <825000 825000 1250000>;
>> +		};
>> +		opp02 {
>> +			opp-hz = /bits/ 64 <816000000>;
>> +			opp-microvolt = <850000 850000 1250000>;
>> +		};
> 
> Is there a reason why there isn't a line separator between the various
> opp nodes? Normally there is one between nodes.
> Note that in rk3588-opp.dtsi there are no separator lines between the
> opp nodes, while they do exist between other nodes.
> And in rk356x.dtsi the opp nodes do have a separator line.

That has also bothered me. :)  I already had a look around in various
dts(i) files long time ago and there seems to be no preferred layout.

In this particular case, it's better to have no separator lines because
that's what we already have lacking in rk3399.dtsi, rk3399-t.dtsi, etc.,
so running something like "diff rk3399.dtsi rk3399-s.dtsi" makes it easy
to see what actually differs in the RK3399 SoC variants, without having
to filter out any whitespace differences.



More information about the Linux-rockchip mailing list