RE: [PATCH] schemas: chosen: Add 'boot-hart-id' property

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



> -----Original Message-----
> From: Rob Herring <robh@xxxxxxxxxx>
> Sent: Tuesday, January 3, 2023 11:22 PM
> To: WeiLiang Lim <weiliang.lim@xxxxxxxxxxxxxxxx>
> Cc: devicetree-spec@xxxxxxxxxxxxxxx; Cheehong Ang
> <cheehong.ang@xxxxxxxxxxxxxxxx>; JunLiang Tan
> <junliang.tan@xxxxxxxxxxxxxxxx>
> Subject: Re: [PATCH] schemas: chosen: Add 'boot-hart-id' property
> 
> On Mon, Jan 2, 2023 at 9:25 PM Wei Liang Lim
> <weiliang.lim@xxxxxxxxxxxxxxxx> wrote:
> >
> > Add 'boot-hart-id' property to allow user to specify preferred cold boot HART
> in OpenSBI for StarFive JH7110 platform.
> 
> The commit message should answer why is this needed, not what is the
> change. Present the problem you are trying to solve with this change, not just
> the solution you came up with.
> 
> > Signed-off-by: Wei Liang Lim <weiliang.lim@xxxxxxxxxxxxxxxx>
> > Reviewed-by: Chee Hong Ang <cheehong.ang@xxxxxxxxxxxxxxxx>
> > Reviewed-by: Jun Liang Tan <junliang.tan@xxxxxxxxxxxxxxxx>
> > ---
> >  dtschema/schemas/chosen.yaml | 13 +++++++++++++
> >  1 file changed, 13 insertions(+)
> >
> > diff --git a/dtschema/schemas/chosen.yaml
> > b/dtschema/schemas/chosen.yaml index 86194dd..f88feb5 100644
> > --- a/dtschema/schemas/chosen.yaml
> > +++ b/dtschema/schemas/chosen.yaml
> > @@ -31,6 +31,19 @@ properties:
> >
> >    bootargs:
> >      $ref: types.yaml#/definitions/string
> > +
> > +   boot-hart-id:
> > +    type: integer
> 
> Never the right type for a property.
> 
> > +    description:
> > +      This property allows user to specify preferred cold boot HART in
> OpenSBI
> > +      for StarFive JH7110 platform. If unspecified, the existing
> > + lottery mechanism
> 
> Specific to StarFive JH7110?
> 
> A HART in DT terms is just a CPU, so I think whatever we have should be
> generic. Possibly other arches could use this.
> 
> Who consumes this? /chosen is consumed by the OS. When you boot into the
> OS, you already know the boot CPU because it is the one you are running on.
> So this is meant to be consumed by OpenSBI firmware?
> 
> Also, read how 'status' is supposed to work for CPUs in the DT spec.
> That didn't get followed for Arm, but could possibly work here. The DT passed
> to OpenSBI has all but the boot CPU disabled and OpenSBI can enable the
> other CPUs. Just guessing since you've given no details of the problem this
> solves...
> 

This change is targeted for RISC-V platform which the boot hart is randomly selected through a lottery mechanism by default in OpenSBI (TF-A equivalent on ARM platform). This property is an option for user to select preferred cold boot hart. If unspecified, the default lottery mechanism will be used.
This is mainly to solve some product requirements which a preferred cold boot hart is required.

> > +      will be used. e.g.
> > +
> > +      /{
> > +              chosen {
> > +                      boot-hart-id = <1>;
> > +              };
> > +      };
> 
> Drop the example.
> 
> >
> >    kaslr-seed:
> >      $ref: types.yaml#/definitions/uint64
> > --
> > 2.25.1
> >




[Index of Archives]     [Device Tree]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Photos]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]

  Powered by Linux