[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181207000104.GA10814@bogus>
Date: Thu, 6 Dec 2018 18:01:04 -0600
From: Rob Herring <robh@...nel.org>
To: Paul Walmsley <paul.walmsley@...ive.com>
Cc: devicetree@...r.kernel.org, Palmer Dabbelt <palmer@...ive.com>,
Megan Wachs <megan@...ive.com>,
Wesley Terpstra <wesley@...ive.com>,
Mark Rutland <mark.rutland@....com>,
linux-riscv@...ts.infradead.org, linux-kernel@...r.kernel.org,
paul@...an.com
Subject: Re: [PATCH] dt-bindings: sifive: describe sifive-blocks versioning
On Wed, Nov 21, 2018 at 05:06:56PM -0800, Paul Walmsley wrote:
>
> For IP blocks that are generated from the public, open-source
> sifive-blocks repository, describe the version numbering policy
> that its maintainers intend to use, upon request from Rob
> Herring <robh@...nel.org>.
>
> Cc: Rob Herring <robh+dt@...nel.org>
> Cc: Palmer Dabbelt <palmer@...ive.com>
> Cc: Megan Wachs <megan@...ive.com>
> Cc: Wesley Terpstra <wesley@...ive.com>
> Cc: Mark Rutland <mark.rutland@....com>
> Cc: devicetree@...r.kernel.org
> Cc: linux-riscv@...ts.infradead.org
> Cc: linux-kernel@...r.kernel.org
> Signed-off-by: Paul Walmsley <paul.walmsley@...ive.com>
> Signed-off-by: Paul Walmsley <paul@...an.com>
> ---
>
> Hi Rob, please let me know if this document works with your
> requirements, or if some changes are needed. - Paul
Looks pretty good to me.
> .../sifive/sifive-blocks-ip-versioning.txt | 38 +++++++++++++++++++
> 1 file changed, 38 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sifive/sifive-blocks-ip-versioning.txt
Use the path that was suggested.
> diff --git a/Documentation/devicetree/bindings/sifive/sifive-blocks-ip-versioning.txt b/Documentation/devicetree/bindings/sifive/sifive-blocks-ip-versioning.txt
> new file mode 100644
> index 000000000000..b899e5c6e00c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sifive/sifive-blocks-ip-versioning.txt
> @@ -0,0 +1,38 @@
> +DT compatible string versioning for SiFive open-source IP blocks
> +
> +This document describes the version specification for DT "compatible"
> +strings for open-source SiFive IP blocks. HDL for these IP blocks
> +can be found in this public repository:
> +
> +https://github.com/sifive/sifive-blocks
> +
> +IP block-specific DT compatible strings are contained within the HDL,
> +in the form "sifive,<ip-block-name><integer version number>".
Really, my preference would be to add a '-v' in this:
sifive,<ip-block-name>-v<integer version number>
But given this ship has already sailed, I guess it is fine as is.
> +
> +An example is "sifive,uart0" from:
> +
> +https://github.com/sifive/sifive-blocks/blob/master/src/main/scala/devices/uart/UART.scala#L43
That's nice, but will be out of date as soon as someone adds or removes
a line above it. Can you point to a tagged version?
> +
> +Until these IP blocks (or IP integration) support version
> +autodiscovery, the maintainers of these IP blocks intend to increment
> +the suffixed number in the compatible string whenever the software
> +interface to these IP blocks changes, or when the functionality of the
> +underlying IP blocks changes in a way that software should be aware of.
> +
> +Driver developers can use compatible string "match" values such as
> +"sifive,uart0" to indicate that their driver is compatible with the
> +register interface and functionality associated with the relevant
> +upstream sifive-blocks commits. It is expected that most drivers will
> +match on these IP block-specific compatible strings.
> +
> +DT data authors, when writing data for a particular SoC, should
> +continue to specify an SoC-specific compatible string value, such as
> +"sifive,fu540-c000-uart". This way, if SoC-specific
> +integration-specific bug fixes or workarounds are needed, the kernel
> +or other system software can match on this string to apply them. The
> +IP block-specific compatible string (such as "sifive,uart0") should
> +then be specified as a subsequent value.
> +
> +An example of this style:
> +
> + compatible = "sifive,fu540-c000-uart", "sifive,uart0";
> --
> 2.19.1
>
Powered by blists - more mailing lists