[PATCH v2 2/3] dt-bindings: riscv: Add Worlds per-hart properties

Yu-Chien Peter Lin peter.lin at sifive.com
Fri Aug 7 00:57:20 PDT 2026


Hi all,

On Wed, Jul 29, 2026 at 01:06:59PM -0500, Rob Herring (Arm) wrote:
> 
> On Thu, 30 Jul 2026 00:39:07 +0800, Yu-Chien Peter Lin wrote:
> > Add per-hart DT properties for the RISC-V Worlds architecture:
> > riscv,pmwid, riscv,pmwidlist, and riscv,pmlwidlist. These
> > platform-defined values are primarily used by M-mode firmware
> > to configure World ID CSRs and restrict WID usage across
> > privilege levels.
> > 
> > Also add schema validation rules to enforce valid property
> > combinations based on the ISA extensions present.
> > 
> > Signed-off-by: Yu-Chien Peter Lin <peter.lin at sifive.com>
> > ---
> >  .../devicetree/bindings/riscv/cpus.yaml       | 61 +++++++++++++++
> >  .../devicetree/bindings/riscv/worlds.yaml     | 77 +++++++++++++++++++
> >  2 files changed, 138 insertions(+)
> >  create mode 100644 Documentation/devicetree/bindings/riscv/worlds.yaml
> > 
> 
> My bot found errors running 'make dt_binding_check' on your patch:
> 
> yamllint warnings/errors:
> 
> dtschema/dtc warnings/errors:
> Documentation/devicetree/bindings/cpu/idle-states.example.dtb: cpu at 0 (riscv): 'riscv,pmwid' is a required property
> 	from schema $id: http://devicetree.org/schemas/riscv/cpus.yaml
> Documentation/devicetree/bindings/cpu/idle-states.example.dtb: cpu at 1 (riscv): 'riscv,pmwid' is a required property
> 	from schema $id: http://devicetree.org/schemas/riscv/cpus.yaml
> Documentation/devicetree/bindings/cpu/idle-states.example.dtb: cpu at 10 (riscv): 'riscv,pmwid' is a required property
> 	from schema $id: http://devicetree.org/schemas/riscv/cpus.yaml
> Documentation/devicetree/bindings/cpu/idle-states.example.dtb: cpu at 11 (riscv): 'riscv,pmwid' is a required property
> 	from schema $id: http://devicetree.org/schemas/riscv/cpus.yaml

I plan to remove the 'required' check for riscv,pmwid in the next
version. The riscv,pmwid property is intended to provide a valid
fallback when S-domain WID is not specified. This is a platform
integration responsibility, not a schema-enforced constraint.

The next version will only retain prohibitive checks — e.g., if the
smwid extension is absent, riscv,pmwidlist must not be present.

Regards,
Peter Lin



More information about the linux-riscv mailing list