[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJM55Z9KyNK1n4i9FxbLor4HTQKqK8WKA2svjPVvKXihw_E+sg@mail.gmail.com>
Date: Thu, 13 Nov 2025 02:42:26 -0800
From: Emil Renner Berthing <emil.renner.berthing@...onical.com>
To: Albert Ou <aou@...s.berkeley.edu>, Bjorn Helgaas <bhelgaas@...gle.com>,
Conor Dooley <conor+dt@...nel.org>, E Shattow <e@...eshell.de>,
Hal Feng <hal.feng@...rfivetech.com>,
Heinrich Schuchardt <heinrich.schuchardt@...onical.com>,
Krzysztof Kozlowski <krzk+dt@...nel.org>, Krzysztof WilczyĆski <kwilczynski@...nel.org>,
Lorenzo Pieralisi <lpieralisi@...nel.org>, Manivannan Sadhasivam <mani@...nel.org>,
Palmer Dabbelt <palmer@...belt.com>, Paul Walmsley <pjw@...nel.org>,
"Rafael J . Wysocki" <rafael@...nel.org>, Rob Herring <robh@...nel.org>,
Viresh Kumar <viresh.kumar@...aro.org>
Cc: "devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"linux-riscv@...ts.infradead.org" <linux-riscv@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH v2 0/8] Add support for StarFive VisionFive 2 Lite board
Quoting Hal Feng (2025-11-13 04:42:05)
> > On 12.11.25 21:54, Emil Renner Berthing wrote:
> > Quoting Hal Feng (2025-11-07 10:55:22)
> > > VisionFive 2 Lite is a mini SBC based on the StarFive JH7110S
> > > industrial SoC which can run at -40~85 degrees centigrade and up to
> > > 1.25GHz.
[...]
> > Currently the JH7110 device trees are layed out like this, with a nice separation
> > between the SoC description and board descriptions:
> >
> > jh7110.dtsi # JH7110 SoC description
> > |- jh7110-common.dtsi # Peripherals common to all JH7110 boards
> > |- jh7110-starfive-visionfive-2.dtsi # Peripherals common to VF2 boards
> > | |- <VF2 boards> # Final VF2 board descriptions
> > |- jh7110-milkv-marscm.dtsi # Peripherals common to Mars CM boards
> > | |- <Mars CM boards> # Final Mars CM board descriptions
> > |- <other boards> # Other JH7110 board descriptions
> >
> > With this series it moves to
> >
> > jh711x.dtsi
> > |- jh711x-common.dtsi
> > |- jh7110-common.dtsi
> > | |- <jh7110 boards>
> > |- jh7110s-common.dtsi
> > |- <jh7110s boards>
> >
> > ..which I can't even give clear labels like above. In other words when new
> > patches are sent in it would not be easy to explain exactly where each change
> > should go and why.
> > I'm also worried that you'll find that more of the peripherals on the JH7110S
> > need special handling and a new jh7110s-... compatible string. Then I guess
> > they'll need to jump from jh7110x.dtsi two levels down to jh7110{,s}-
> > common.dtsi which then both describe SoC and board properties.
> >
> > If you're serious about calling this a new SoC then I'd expect something more
> > like this:
> >
> > jh711x.dtsi # Peripherals common to both SoCs
> > |- jh7110.dtsi # JH7110 SoC description
> > | |- jh7110-common.dtsi # Peripherals common to all JH7110 boards
> > | |- jh7110-starfive-visionfive-2.dtsi # Peripherals common to VF2 boards
> > | | |- <VF2 boards> # Final VF2 board descriptions
> > | |- jh7110-milkv-marscm.dtsi # Peripherals common to Mars CM boards
> > | | |- <Mars CM boards> # Final Mars CM board descriptions
> > | |- <other boards> # Other JH7110 board descriptions
> > |- jh7110s.dtsi # JH7110S SoC description
> > |- jh7110s-common.dtsi # Peripherals common to all JH7110S boards
> > |- <JH7110S boards> # Final JH7110S board descriptions
> >
> > I know this will mean some duplication in jh7110{,s}-common.dtsi, but I
> > would prefer that to not having a clear explanation of what each file describes.
> >
> > Do you think this layout could work for you?
>
> Yeah, it is clearer for developers and maintainers.
>
> Considering Conor's suggestion, what about:
>
> jh7110.dtsi # JH7110 SoC description
> |- jh7110-common.dtsi # Peripherals common to all JH7110 boards
> |- jh7110-starfive-visionfive-2.dtsi # Peripherals common to VF2 boards
> | |- <VF2 boards> # Final VF2 board descriptions
> |- jh7110-milkv-marscm.dtsi # Peripherals common to Mars CM boards
> | |- <Mars CM boards> # Final Mars CM board descriptions
> |- <other boards> # Other JH7110 board descriptions
> |- <JH7110S boards>
>
> Move the opp table from jh7110.dtsi to jh7110-common.dtsi.
> Remove jh7110s-common.dtsi, because only one board uses JH7110S now.
This patchset adds 2 different boards. Has this changed?
Also this would mean that you're not using the starfive,jh7110s compatible or
any other starfive,jh7110s-.. compatible strings, so effectively you're not
treating it as a new chip, but just a board that needs a different opp table.
I see now that the opp table is effectively the only difference between the two
chips in this patchset, so if that's closer to reality then what you suggest is
fine with me.
/Emil
Powered by blists - more mailing lists