[PATCH v2 3/3] riscv: dts: starfive: jh7110: bootph-pre-ram hinting needed by boot loader
Hal Feng
hal.feng at starfivetech.com
Fri Aug 22 02:27:05 PDT 2025
> -----Original Message-----
> From: E Shattow <e at freeshell.de>
> Sent: 2025年8月20日 11:49
> To: Hal Feng <hal.feng at starfivetech.com>; Conor Dooley <conor at kernel.org>;
> Emil Renner Berthing <kernel at esmil.dk>; Rob Herring <robh at kernel.org>;
> Krzysztof Kozlowski <krzk+dt at kernel.org>; Paul Walmsley
> <paul.walmsley at sifive.com>; Palmer Dabbelt <palmer at dabbelt.com>; Albert
> Ou <aou at eecs.berkeley.edu>; Alexandre Ghiti <alex at ghiti.fr>
> Cc: devicetree at vger.kernel.org; linux-kernel at vger.kernel.org; linux-
> riscv at lists.infradead.org
> Subject: Re: [PATCH v2 3/3] riscv: dts: starfive: jh7110: bootph-pre-ram
> hinting needed by boot loader
>
>
>
> On 8/17/25 23:05, Hal Feng wrote:
> >> On 15.08.25 15:37, E Shattow wrote:
> >> Add bootph-pre-ram hinting to jh7110.dtsi:
> >> - CPU interrupt controller(s)
> >> - core local interrupt timer
> >> - DDR memory controller
> >> - oscillator
> >> - syscrg clock-controller
> >>
> >> Signed-off-by: E Shattow <e at freeshell.de>
> >> ---
> >> arch/riscv/boot/dts/starfive/jh7110.dtsi | 9 +++++++++
> >> 1 file changed, 9 insertions(+)
> >>
> >> diff --git a/arch/riscv/boot/dts/starfive/jh7110.dtsi
> >> b/arch/riscv/boot/dts/starfive/jh7110.dtsi
> >> index 14df3d062a45..884a3526cb0f 100644
> >> --- a/arch/riscv/boot/dts/starfive/jh7110.dtsi
> >> +++ b/arch/riscv/boot/dts/starfive/jh7110.dtsi
> >> @@ -35,6 +35,7 @@ S7_0: cpu at 0 {
> >>
> >> cpu0_intc: interrupt-controller {
> >> compatible = "riscv,cpu-intc";
> >> + bootph-pre-ram;
> >> interrupt-controller;
> >> #interrupt-cells = <1>;
> >> };
> >> @@ -68,6 +69,7 @@ U74_1: cpu at 1 {
> >>
> >> cpu1_intc: interrupt-controller {
> >> compatible = "riscv,cpu-intc";
> >> + bootph-pre-ram;
> >> interrupt-controller;
> >> #interrupt-cells = <1>;
> >> };
> >> @@ -101,6 +103,7 @@ U74_2: cpu at 2 {
> >>
> >> cpu2_intc: interrupt-controller {
> >> compatible = "riscv,cpu-intc";
> >> + bootph-pre-ram;
> >> interrupt-controller;
> >> #interrupt-cells = <1>;
> >> };
> >> @@ -134,6 +137,7 @@ U74_3: cpu at 3 {
> >>
> >> cpu3_intc: interrupt-controller {
> >> compatible = "riscv,cpu-intc";
> >> + bootph-pre-ram;
> >> interrupt-controller;
> >> #interrupt-cells = <1>;
> >> };
> >> @@ -167,6 +171,7 @@ U74_4: cpu at 4 {
> >>
> >> cpu4_intc: interrupt-controller {
> >> compatible = "riscv,cpu-intc";
> >> + bootph-pre-ram;
> >> interrupt-controller;
> >> #interrupt-cells = <1>;
> >> };
> >> @@ -321,6 +326,7 @@ mclk_ext: mclk-ext-clock {
> >>
> >> osc: oscillator {
> >> compatible = "fixed-clock";
> >> + bootph-pre-ram;
> >> clock-output-names = "osc";
> >> #clock-cells = <0>;
> >> };
> >> @@ -354,6 +360,7 @@ soc {
> >> clint: timer at 2000000 {
> >> compatible = "starfive,jh7110-clint", "sifive,clint0";
> >> reg = <0x0 0x2000000 0x0 0x10000>;
> >> + bootph-pre-ram;
> >> interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc
> >> 7>,
> >> <&cpu1_intc 3>, <&cpu1_intc 7>,
> >> <&cpu2_intc 3>, <&cpu2_intc 7>,
> @@ -376,6 +383,7 @@
> >> memory-controller at 15700000 {
> >> compatible = "starfive,jh7110-dmc";
> >> reg = <0x0 0x15700000 0x0 0x10000>,
> >> <0x0 0x13000000 0x0 0x10000>;
> >> + bootph-pre-ram;
> >> clocks = <&syscrg JH7110_PLLCLK_PLL1_OUT>;
> >> clock-names = "pll1_out";
> >> resets = <&syscrg JH7110_SYSRST_DDR_AXI>, @@ -
> >> 892,6 +900,7 @@ qspi: spi at 13010000 {
> >> syscrg: clock-controller at 13020000 {
> >> compatible = "starfive,jh7110-syscrg";
> >> reg = <0x0 0x13020000 0x0 0x10000>;
> >> + bootph-pre-ram;
> >> clocks = <&osc>, <&gmac1_rmii_refin>,
> >> <&gmac1_rgmii_rxin>,
> >> <&i2stx_bclk_ext>, <&i2stx_lrck_ext>,
> >
> > pllclk also needs to add bootph-pre-ram. Because it is the dependency of
> syscrg.
> >
> > pllclk: clock-controller {
> > compatible = "starfive,jh7110-pll";
> > + bootph-pre-ram;
> > clocks = <&osc>;
> > #clock-cells = <1>;
> > };
> >
> > Best regards,
> > Hal
>
> What users are there for 'pllclk' at U-Boot SPL phase? There does not seem to
> be any difference in testing U-Boot and Linux with or without this hint for
> 'pllclk'.
I see commit 8b3f2eb7d8912204bda2d914b8a9a1ce1c31bb5c adding this line to
solve some problems.
https://lore.kernel.org/all/20250330162421.238483-1-heinrich.schuchardt@canonical.com/
Best regards,
Hal
More information about the linux-riscv
mailing list