From: Conor Dooley <conor@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Cc: linux-riscv@lists.infradead.org,
Conor Dooley <conor.dooley@microchip.com>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Conor Dooley <conor+dt@kernel.org>,
Palmer Dabbelt <palmer@dabbelt.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Heiko Stuebner <heiko@sntech.de>,
Andrew Jones <ajones@ventanamicro.com>,
Sunil V L <sunilvl@ventanamicro.com>,
Yangyu Chen <cyy@cyyself.name>,
devicetree@vger.kernel.org
Subject: Re: [RFC 2/6] dt-bindings: riscv: add riscv,isa-extension-* property and incompatible example
Date: Sat, 13 May 2023 19:00:34 +0100 [thread overview]
Message-ID: <20230513-sixth-pushing-7fb12ee62410@spud> (raw)
In-Reply-To: <90f24883-4653-d099-14cc-38e2ecbbd189@linaro.org>
[-- Attachment #1: Type: text/plain, Size: 2308 bytes --]
On Sat, May 13, 2023 at 07:50:22PM +0200, Krzysztof Kozlowski wrote:
> On 08/05/2023 20:16, Conor Dooley wrote:
> > From: Conor Dooley <conor.dooley@microchip.com>
> >
> > This dt-binding is illustrative *only*, it doesn't yet do what I want it
> > to do in terms of enforcement etc. I am yet to figure out exactly how to
> > wrangle the binding such that the individual properties have more
> > generous versions than the generic pattern property.
> > This binding *will* generate errors, and needs rework before it can
> > seriously be considered.
> > Nevertheless, it should demonstrate how I intend such a property be
> > used.
> > + oneOf:
> > + - const: v1.0.0
> > + description: the original incarnation
> > + - const: v1.0.1
> > + description: backwards compat was broken here
> > +
> > +patternProperties:
> > + "^riscv,isa-extension-*":
>
> Are all these -i/-m/-a extensions obvious/known to RISC-V folks? I have
> no clue what's this, so the question is: do they need some explanation
> in the bindings?
Yes, these should be well known. In the same way that "neon" should mean
something to someone doing arm64. Nevertheless, the plan is to drop the
string side of this entirely & actually document the meaning of -i/-m/-a
etc.
> > + description:
> > + Catch-all property for ISA extensions that do not need any special
> > + handling, and of which all known versions are compatible with their
> > + original revision.
> > + $ref: "/schemas/types.yaml#/definitions/string"
>
> Drop quotes.
>
> > + enum:
> > + - v1.0.0
>
> Your example should not validate here... you have there v2.0.0 and v1.0.1
As noted in the commit message, this is illustrative only & cannot work.
There doesn't appear to be a way to make the patternProperty fallback
more specific than the explicitly defined properties.
I wanted to get something out for initial thoughts before trying to do
further wrangling, lest it be a complete waste of time.
Consensus seems to be that versions are a thing of the past and that
property-presence based probing is a better idea. See the discussion
on the cover for that.
It does conveniently mean that all this complexity can be thrown in the
bin.
Cheers,
Conor.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
next prev parent reply other threads:[~2023-05-13 18:02 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-08 18:16 [RFC 0/6] Deprecate riscv,isa DT property? Conor Dooley
2023-05-08 18:16 ` [RFC 1/6] dt-bindings: riscv: clarify what an unversioned extension means Conor Dooley
2023-05-13 17:46 ` Krzysztof Kozlowski
2023-05-08 18:16 ` [RFC 2/6] dt-bindings: riscv: add riscv,isa-extension-* property and incompatible example Conor Dooley
2023-05-13 17:50 ` Krzysztof Kozlowski
2023-05-13 18:00 ` Conor Dooley [this message]
2023-05-08 18:16 ` [RFC 3/6] RISC-V: deprecate riscv,isa & replace it with per-extension properties Conor Dooley
2023-05-08 18:16 ` [RFC 4/6] RISC-V: add support for riscv,isa-base property Conor Dooley
2023-05-08 18:16 ` [RFC 5/6] RISC-V: drop a needless check in print_isa_ext() Conor Dooley
2023-05-08 18:16 ` [RFC 6/6] riscv: dts: microchip: use new riscv,isa-extension-* properties for mpfs Conor Dooley
2023-05-11 21:27 ` [RFC 0/6] Deprecate riscv,isa DT property? Atish Patra
2023-05-11 21:47 ` Conor Dooley
2023-05-11 22:34 ` Atish Patra
2023-05-11 22:38 ` Conor Dooley
2023-05-12 18:01 ` Palmer Dabbelt
2023-05-12 19:40 ` Conor Dooley
2023-05-12 22:05 ` Conor Dooley
2023-05-12 23:20 ` Atish Patra
2023-05-12 23:52 ` Conor Dooley
2023-05-12 23:55 ` Palmer Dabbelt
2023-05-13 0:09 ` Conor Dooley
2023-05-13 0:38 ` Palmer Dabbelt
2023-05-13 7:47 ` Anup Patel
2023-05-13 21:34 ` Jessica Clarke
2023-05-13 21:54 ` Conor Dooley
2023-05-15 4:38 ` Sunil V L
2023-05-15 7:52 ` Conor Dooley
2023-05-12 18:08 ` Palmer Dabbelt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230513-sixth-pushing-7fb12ee62410@spud \
--to=conor@kernel.org \
--cc=ajones@ventanamicro.com \
--cc=conor+dt@kernel.org \
--cc=conor.dooley@microchip.com \
--cc=cyy@cyyself.name \
--cc=devicetree@vger.kernel.org \
--cc=heiko@sntech.de \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=krzysztof.kozlowski@linaro.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=robh+dt@kernel.org \
--cc=sunilvl@ventanamicro.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).