From: Rob Herring <robh@kernel.org>
To: Conor Dooley <mail@conchuod.ie>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Andrew Lunn <andrew@lunn.ch>,
Support Opensource <support.opensource@diasemi.com>,
Lee Jones <lee.jones@linaro.org>,
Ulf Hansson <ulf.hansson@linaro.org>,
Palmer Dabbelt <palmer@dabbelt.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Steve Twiss <stwiss.opensource@diasemi.com>,
Conor Dooley <conor.dooley@microchip.com>,
linux-i2c@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org,
linux-riscv@lists.infradead.org,
Atul Khare <atulkhare@rivosinc.com>
Subject: Re: [PATCH v2 2/4] dt-bindings: i2c: convert ocores binding to yaml
Date: Mon, 6 Jun 2022 14:33:03 -0500 [thread overview]
Message-ID: <20220606193303.GA1124108-robh@kernel.org> (raw)
In-Reply-To: <20220606152557.438771-3-mail@conchuod.ie>
On Mon, Jun 06, 2022 at 04:25:56PM +0100, Conor Dooley wrote:
> From: Conor Dooley <conor.dooley@microchip.com>
>
> Convert the open cores i2c controller binding from text to yaml.
>
> Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
> ---
> .../devicetree/bindings/i2c/i2c-ocores.txt | 78 -----------
> .../bindings/i2c/opencores,i2c-ocores.yaml | 123 ++++++++++++++++++
> MAINTAINERS | 2 +-
> 3 files changed, 124 insertions(+), 79 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-ocores.txt
> create mode 100644 Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
>
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-ocores.txt b/Documentation/devicetree/bindings/i2c/i2c-ocores.txt
> deleted file mode 100644
> index a37c9455b244..000000000000
> --- a/Documentation/devicetree/bindings/i2c/i2c-ocores.txt
> +++ /dev/null
> @@ -1,78 +0,0 @@
> -Device tree configuration for i2c-ocores
> -
> -Required properties:
> -- compatible : "opencores,i2c-ocores"
> - "aeroflexgaisler,i2cmst"
> - "sifive,fu540-c000-i2c", "sifive,i2c0"
> - For Opencore based I2C IP block reimplemented in
> - FU540-C000 SoC.
> - "sifive,fu740-c000-i2c", "sifive,i2c0"
> - For Opencore based I2C IP block reimplemented in
> - FU740-C000 SoC.
> - Please refer to sifive-blocks-ip-versioning.txt for
> - additional details.
> -- reg : bus address start and address range size of device
> -- clocks : handle to the controller clock; see the note below.
> - Mutually exclusive with opencores,ip-clock-frequency
> -- opencores,ip-clock-frequency: frequency of the controller clock in Hz;
> - see the note below. Mutually exclusive with clocks
> -- #address-cells : should be <1>
> -- #size-cells : should be <0>
> -
> -Optional properties:
> -- interrupts : interrupt number.
> -- clock-frequency : frequency of bus clock in Hz; see the note below.
> - Defaults to 100 KHz when the property is not specified
> -- reg-shift : device register offsets are shifted by this value
> -- reg-io-width : io register width in bytes (1, 2 or 4)
> -- regstep : deprecated, use reg-shift above
> -
> -Note
> -clock-frequency property is meant to control the bus frequency for i2c bus
> -drivers, but it was incorrectly used to specify i2c controller input clock
> -frequency. So the following rules are set to fix this situation:
> -- if clock-frequency is present and neither opencores,ip-clock-frequency nor
> - clocks are, then clock-frequency specifies i2c controller clock frequency.
> - This is to keep backwards compatibility with setups using old DTB. i2c bus
> - frequency is fixed at 100 KHz.
> -- if clocks is present it specifies i2c controller clock. clock-frequency
> - property specifies i2c bus frequency.
> -- if opencores,ip-clock-frequency is present it specifies i2c controller
> - clock frequency. clock-frequency property specifies i2c bus frequency.
> -
> -Examples:
> -
> - i2c0: ocores@a0000000 {
> - #address-cells = <1>;
> - #size-cells = <0>;
> - compatible = "opencores,i2c-ocores";
> - reg = <0xa0000000 0x8>;
> - interrupts = <10>;
> - opencores,ip-clock-frequency = <20000000>;
> -
> - reg-shift = <0>; /* 8 bit registers */
> - reg-io-width = <1>; /* 8 bit read/write */
> -
> - dummy@60 {
> - compatible = "dummy";
> - reg = <0x60>;
> - };
> - };
> -or
> - i2c0: ocores@a0000000 {
> - #address-cells = <1>;
> - #size-cells = <0>;
> - compatible = "opencores,i2c-ocores";
> - reg = <0xa0000000 0x8>;
> - interrupts = <10>;
> - clocks = <&osc>;
> - clock-frequency = <400000>; /* i2c bus frequency 400 KHz */
> -
> - reg-shift = <0>; /* 8 bit registers */
> - reg-io-width = <1>; /* 8 bit read/write */
> -
> - dummy@60 {
> - compatible = "dummy";
> - reg = <0x60>;
> - };
> - };
> diff --git a/Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml b/Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
> new file mode 100644
> index 000000000000..7074f019d94f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
> @@ -0,0 +1,123 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/i2c/opencores,i2c-ocores.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: OpenCores I2C controller
> +
> +maintainers:
> + - Peter Korsgaard <peter@korsgaard.com>
> + - Andrew Lunn <andrew@lunn.ch>
> +
> +allOf:
> + - $ref: /schemas/i2c/i2c-controller.yaml#
> +
> +properties:
> + compatible:
> + oneOf:
> + - items:
> + - enum:
> + - sifive,fu740-c000-i2c # Opencore based IP block FU740-C000 SoC
> + - sifive,fu540-c000-i2c # Opencore based IP block FU540-C000 SoC
> + - const: sifive,i2c0
> + - enum:
> + - opencores,i2c-ocores
> + - aeroflexgaisler,i2cmst
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + "#address-cells":
> + const: 1
> +
> + "#size-cells":
> + const: 0
These 2 are covered by i2c-controller.yaml. Drop.
With that,
Reviewed-by: Rob Herring <robh@kernel.org>
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: Conor Dooley <mail@conchuod.ie>
Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Andrew Lunn <andrew@lunn.ch>,
Support Opensource <support.opensource@diasemi.com>,
Lee Jones <lee.jones@linaro.org>,
Ulf Hansson <ulf.hansson@linaro.org>,
Palmer Dabbelt <palmer@dabbelt.com>,
Paul Walmsley <paul.walmsley@sifive.com>,
Albert Ou <aou@eecs.berkeley.edu>,
Steve Twiss <stwiss.opensource@diasemi.com>,
Conor Dooley <conor.dooley@microchip.com>,
linux-i2c@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-mmc@vger.kernel.org,
linux-riscv@lists.infradead.org,
Atul Khare <atulkhare@rivosinc.com>
Subject: Re: [PATCH v2 2/4] dt-bindings: i2c: convert ocores binding to yaml
Date: Mon, 6 Jun 2022 14:33:03 -0500 [thread overview]
Message-ID: <20220606193303.GA1124108-robh@kernel.org> (raw)
In-Reply-To: <20220606152557.438771-3-mail@conchuod.ie>
On Mon, Jun 06, 2022 at 04:25:56PM +0100, Conor Dooley wrote:
> From: Conor Dooley <conor.dooley@microchip.com>
>
> Convert the open cores i2c controller binding from text to yaml.
>
> Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
> ---
> .../devicetree/bindings/i2c/i2c-ocores.txt | 78 -----------
> .../bindings/i2c/opencores,i2c-ocores.yaml | 123 ++++++++++++++++++
> MAINTAINERS | 2 +-
> 3 files changed, 124 insertions(+), 79 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/i2c/i2c-ocores.txt
> create mode 100644 Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
>
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-ocores.txt b/Documentation/devicetree/bindings/i2c/i2c-ocores.txt
> deleted file mode 100644
> index a37c9455b244..000000000000
> --- a/Documentation/devicetree/bindings/i2c/i2c-ocores.txt
> +++ /dev/null
> @@ -1,78 +0,0 @@
> -Device tree configuration for i2c-ocores
> -
> -Required properties:
> -- compatible : "opencores,i2c-ocores"
> - "aeroflexgaisler,i2cmst"
> - "sifive,fu540-c000-i2c", "sifive,i2c0"
> - For Opencore based I2C IP block reimplemented in
> - FU540-C000 SoC.
> - "sifive,fu740-c000-i2c", "sifive,i2c0"
> - For Opencore based I2C IP block reimplemented in
> - FU740-C000 SoC.
> - Please refer to sifive-blocks-ip-versioning.txt for
> - additional details.
> -- reg : bus address start and address range size of device
> -- clocks : handle to the controller clock; see the note below.
> - Mutually exclusive with opencores,ip-clock-frequency
> -- opencores,ip-clock-frequency: frequency of the controller clock in Hz;
> - see the note below. Mutually exclusive with clocks
> -- #address-cells : should be <1>
> -- #size-cells : should be <0>
> -
> -Optional properties:
> -- interrupts : interrupt number.
> -- clock-frequency : frequency of bus clock in Hz; see the note below.
> - Defaults to 100 KHz when the property is not specified
> -- reg-shift : device register offsets are shifted by this value
> -- reg-io-width : io register width in bytes (1, 2 or 4)
> -- regstep : deprecated, use reg-shift above
> -
> -Note
> -clock-frequency property is meant to control the bus frequency for i2c bus
> -drivers, but it was incorrectly used to specify i2c controller input clock
> -frequency. So the following rules are set to fix this situation:
> -- if clock-frequency is present and neither opencores,ip-clock-frequency nor
> - clocks are, then clock-frequency specifies i2c controller clock frequency.
> - This is to keep backwards compatibility with setups using old DTB. i2c bus
> - frequency is fixed at 100 KHz.
> -- if clocks is present it specifies i2c controller clock. clock-frequency
> - property specifies i2c bus frequency.
> -- if opencores,ip-clock-frequency is present it specifies i2c controller
> - clock frequency. clock-frequency property specifies i2c bus frequency.
> -
> -Examples:
> -
> - i2c0: ocores@a0000000 {
> - #address-cells = <1>;
> - #size-cells = <0>;
> - compatible = "opencores,i2c-ocores";
> - reg = <0xa0000000 0x8>;
> - interrupts = <10>;
> - opencores,ip-clock-frequency = <20000000>;
> -
> - reg-shift = <0>; /* 8 bit registers */
> - reg-io-width = <1>; /* 8 bit read/write */
> -
> - dummy@60 {
> - compatible = "dummy";
> - reg = <0x60>;
> - };
> - };
> -or
> - i2c0: ocores@a0000000 {
> - #address-cells = <1>;
> - #size-cells = <0>;
> - compatible = "opencores,i2c-ocores";
> - reg = <0xa0000000 0x8>;
> - interrupts = <10>;
> - clocks = <&osc>;
> - clock-frequency = <400000>; /* i2c bus frequency 400 KHz */
> -
> - reg-shift = <0>; /* 8 bit registers */
> - reg-io-width = <1>; /* 8 bit read/write */
> -
> - dummy@60 {
> - compatible = "dummy";
> - reg = <0x60>;
> - };
> - };
> diff --git a/Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml b/Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
> new file mode 100644
> index 000000000000..7074f019d94f
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/i2c/opencores,i2c-ocores.yaml
> @@ -0,0 +1,123 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/i2c/opencores,i2c-ocores.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: OpenCores I2C controller
> +
> +maintainers:
> + - Peter Korsgaard <peter@korsgaard.com>
> + - Andrew Lunn <andrew@lunn.ch>
> +
> +allOf:
> + - $ref: /schemas/i2c/i2c-controller.yaml#
> +
> +properties:
> + compatible:
> + oneOf:
> + - items:
> + - enum:
> + - sifive,fu740-c000-i2c # Opencore based IP block FU740-C000 SoC
> + - sifive,fu540-c000-i2c # Opencore based IP block FU540-C000 SoC
> + - const: sifive,i2c0
> + - enum:
> + - opencores,i2c-ocores
> + - aeroflexgaisler,i2cmst
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + "#address-cells":
> + const: 1
> +
> + "#size-cells":
> + const: 0
These 2 are covered by i2c-controller.yaml. Drop.
With that,
Reviewed-by: Rob Herring <robh@kernel.org>
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2022-06-06 19:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-06 15:25 [PATCH v2 0/4] clear riscv dtbs_check errors Conor Dooley
2022-06-06 15:25 ` Conor Dooley
2022-06-06 15:25 ` [PATCH v2 1/4] dt-bindings: mmc: convert mmc-spi-slot to yaml Conor Dooley
2022-06-06 15:25 ` Conor Dooley
2022-06-06 19:30 ` Rob Herring
2022-06-06 19:30 ` Rob Herring
2022-06-06 15:25 ` [PATCH v2 2/4] dt-bindings: i2c: convert ocores binding " Conor Dooley
2022-06-06 15:25 ` Conor Dooley
2022-06-06 19:33 ` Rob Herring [this message]
2022-06-06 19:33 ` Rob Herring
2022-06-06 15:25 ` [PATCH v2 3/4] dt-bindings: mfd: convert da9063 " Conor Dooley
2022-06-06 15:25 ` Conor Dooley
2022-06-06 19:34 ` Rob Herring
2022-06-06 19:34 ` Rob Herring
2022-06-06 15:25 ` [PATCH v2 4/4] riscv: dts: sifive: "fix" pmic watchdog node name Conor Dooley
2022-06-06 15:25 ` Conor Dooley
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=20220606193303.GA1124108-robh@kernel.org \
--to=robh@kernel.org \
--cc=andrew@lunn.ch \
--cc=aou@eecs.berkeley.edu \
--cc=atulkhare@rivosinc.com \
--cc=conor.dooley@microchip.com \
--cc=devicetree@vger.kernel.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=lee.jones@linaro.org \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mmc@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=mail@conchuod.ie \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=stwiss.opensource@diasemi.com \
--cc=support.opensource@diasemi.com \
--cc=ulf.hansson@linaro.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.