RE: [PATCH v2] arm64: dts: renesas: r9a09g057: Add OPP table

From: Biju Das
Date: Tue Oct 08 2024 - 13:34:11 EST




> -----Original Message-----
> From: Biju Das <biju.das.jz@xxxxxxxxxxxxxx>
> Sent: Tuesday, October 8, 2024 6:19 PM
> Subject: RE: [PATCH v2] arm64: dts: renesas: r9a09g057: Add OPP table
>
> Hi Prabhakar,
>
> > -----Original Message-----
> > From: Prabhakar <prabhakar.csengg@xxxxxxxxx>
> > Sent: Tuesday, October 8, 2024 5:50 PM
> > Subject: [PATCH v2] arm64: dts: renesas: r9a09g057: Add OPP table
> >
> > From: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> >
> > Add OPP table for RZ/V2H(P) SoC.
> >
> > Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
> > ---
> > v1->v2
> > - Set opp-microvolt to 800000 for frequencies below 1.1GHz
> > ---
> > arch/arm64/boot/dts/renesas/r9a09g057.dtsi | 41 ++++++++++++++++++++++
> > 1 file changed, 41 insertions(+)
> >
> > diff --git a/arch/arm64/boot/dts/renesas/r9a09g057.dtsi b/arch/arm64/boot/dts/renesas/r9a09g057.dtsi
> > index 1ad5a1b6917f..4bbe75b81f54 100644
> > --- a/arch/arm64/boot/dts/renesas/r9a09g057.dtsi
> > +++ b/arch/arm64/boot/dts/renesas/r9a09g057.dtsi
> > @@ -20,6 +20,39 @@ audio_extal_clk: audio-clk {
> > clock-frequency = <0>;
> > };
> >
> > + /*
> > + * The default cluster table is based on the assumption that the PLLCA55 clock
> > + * frequency is set to 1.7GHz. The PLLCA55 clock frequency can be set to
> > + * 1.7/1.6/1.5/1.1 GHz based on the BOOTPLLCA_0/1 pins (and additionally can be
> > + * clocked to 1.8GHz as well). The table below should be overridden in the board
> > + * DTS based on the PLLCA55 clock frequency.
> > + */
> > + cluster0_opp: opp-table-0 {
> > + compatible = "operating-points-v2";
> > +
> > + opp-1700000000 {
> > + opp-hz = /bits/ 64 <1700000000>;
> > + opp-microvolt = <900000>;
>
> Not sure CA-55 can change voltage from 800mV to 900mV??
> Based on Power Domain Control, it needs to be in AWO mode for changing the PD_CA55 voltage.
>
> The manual says OD voltage is 0.9V and ND voltage is 0.8V.
>
> Is 1.7GHZ is ND or OD?

{1.7,1.6,1.5 GHz} is enabled when VDD09_CA55 is at 0.9 V
and for 1.1 GHz it is 0.8V.

Maybe when you do /2, /4, /8 using dividers, the voltage may be still
the same??

Cheers,
Biju

>
>
> > + clock-latency-ns = <300000>;
> > + };
> > + opp-850000000 {
> > + opp-hz = /bits/ 64 <850000000>;
> > + opp-microvolt = <800000>;
> > + clock-latency-ns = <300000>;
> > + };
> > + opp-425000000 {
> > + opp-hz = /bits/ 64 <425000000>;
> > + opp-microvolt = <800000>;
> > + clock-latency-ns = <300000>;
> > + };
> > + opp-212500000 {
> > + opp-hz = /bits/ 64 <212500000>;
> > + opp-microvolt = <800000>;
> > + clock-latency-ns = <300000>;
> > + opp-suspend;
> > + };
> > + };
> > +
> > cpus {
> > #address-cells = <1>;
> > #size-cells = <0>;
> > @@ -30,6 +63,8 @@ cpu0: cpu@0 {
> > device_type = "cpu";
> > next-level-cache = <&L3_CA55>;
> > enable-method = "psci";
> > + clocks = <&cpg CPG_CORE R9A09G057_CA55_0_CORE_CLK0>;
> > + operating-points-v2 = <&cluster0_opp>;
> > };
> >
> > cpu1: cpu@100 {
> > @@ -38,6 +73,8 @@ cpu1: cpu@100 {
> > device_type = "cpu";
> > next-level-cache = <&L3_CA55>;
> > enable-method = "psci";
> > + clocks = <&cpg CPG_CORE R9A09G057_CA55_0_CORE_CLK1>;
> > + operating-points-v2 = <&cluster0_opp>;
> > };
> >
> > cpu2: cpu@200 {
> > @@ -46,6 +83,8 @@ cpu2: cpu@200 {
> > device_type = "cpu";
> > next-level-cache = <&L3_CA55>;
> > enable-method = "psci";
> > + clocks = <&cpg CPG_CORE R9A09G057_CA55_0_CORE_CLK2>;
> > + operating-points-v2 = <&cluster0_opp>;
> > };
> >
> > cpu3: cpu@300 {
> > @@ -54,6 +93,8 @@ cpu3: cpu@300 {
> > device_type = "cpu";
> > next-level-cache = <&L3_CA55>;
> > enable-method = "psci";
> > + clocks = <&cpg CPG_CORE R9A09G057_CA55_0_CORE_CLK3>;
> > + operating-points-v2 = <&cluster0_opp>;
> > };
> >
> > L3_CA55: cache-controller-0 {
> > --
> > 2.43.0
>