[PATCH linux dev-6.12 1/6] dt-bindings: gpio: cdns: convert to YAML
Andrew Jeffery
andrew at codeconstruct.com.au
Fri Jan 9 12:42:56 AEDT 2026
Hi Kuan-Jui,
I've recently moved OpenBMC to use v6.18 (with a bump to v6.18.4
pending). From brief inspection that upgrade removes the need for this
series. Can you confirm?
Regardless, a few procedural things for the future when sending
backports for openbmc/linux. Can you please:
1. Send your series with a cover letter
2. Use `git cherry-pick -xs` to establish your series
3. Use the `--suppress-cc=all` option to `git send-email` (if that's
what you've used to send the series)
The first gives you an opportunity to provide context for the series
(and this reply could be against that cover-letter rather than patch
1/6). It also makes the mail threading sensible, rather than the tail
patches being a reply to the first patch.
The second helps me track how you pieced it together. I haven't looked,
but I'd be unsurprised if the collection here isn't in one contiguous
series of changes upstream. Adding the upstream commit information
allows me to use tools like range-diff to inspect what you've sent.
Having your sign-off in the case that I directly apply your series
helps track the chain of custody for the patches.
The third ensures that upstream contributors and maintainers aren't
bothered by the noise of backporting to a fork they might not care too
much for.
Cheers,
Andrew
On Thu, 2025-12-25 at 17:57 -0800, Kuan-Jui Chiu wrote:
> From: Harshit Shah <hshah at axiado.com>
>
> Convert Cadence family GPIO controller bindings to DT schema.
>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski at linaro.org>
> Signed-off-by: Harshit Shah <hshah at axiado.com>
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> ---
> .../devicetree/bindings/gpio/cdns,gpio.txt | 43 ----------
> .../devicetree/bindings/gpio/cdns,gpio.yaml | 79
> +++++++++++++++++++
> 2 files changed, 79 insertions(+), 43 deletions(-)
> delete mode 100644
> Documentation/devicetree/bindings/gpio/cdns,gpio.txt
> create mode 100644
> Documentation/devicetree/bindings/gpio/cdns,gpio.yaml
>
> diff --git a/Documentation/devicetree/bindings/gpio/cdns,gpio.txt
> b/Documentation/devicetree/bindings/gpio/cdns,gpio.txt
> deleted file mode 100644
> index 706ef00f5c64..000000000000
> --- a/Documentation/devicetree/bindings/gpio/cdns,gpio.txt
> +++ /dev/null
> @@ -1,43 +0,0 @@
> -Cadence GPIO controller bindings
> -
> -Required properties:
> -- compatible: should be "cdns,gpio-r1p02".
> -- reg: the register base address and size.
> -- #gpio-cells: should be 2.
> - * first cell is the GPIO number.
> - * second cell specifies the GPIO flags, as defined in
> - <dt-bindings/gpio/gpio.h>. Only the GPIO_ACTIVE_HIGH
> - and GPIO_ACTIVE_LOW flags are supported.
> -- gpio-controller: marks the device as a GPIO controller.
> -- clocks: should contain one entry referencing the peripheral clock
> driving
> - the GPIO controller.
> -
> -Optional properties:
> -- ngpios: integer number of gpio lines supported by this controller,
> up to 32.
> -- interrupts: interrupt specifier for the controllers interrupt.
> -- interrupt-controller: marks the device as an interrupt controller.
> When
> - defined, interrupts, interrupt-parent and #interrupt-cells
> - are required.
> -- interrupt-cells: should be 2.
> - * first cell is the GPIO number you want to use as an IRQ source.
> - * second cell specifies the IRQ type, as defined in
> - <dt-bindings/interrupt-controller/irq.h>.
> - Currently only level sensitive IRQs are supported.
> -
> -
> -Example:
> - gpio0: gpio-controller at fd060000 {
> - compatible = "cdns,gpio-r1p02";
> - reg =<0xfd060000 0x1000>;
> -
> - clocks = <&gpio_clk>;
> -
> - interrupt-parent = <&gic>;
> - interrupts = <0 5 IRQ_TYPE_LEVEL_HIGH>;
> -
> - gpio-controller;
> - #gpio-cells = <2>;
> -
> - interrupt-controller;
> - #interrupt-cells = <2>;
> - };
> diff --git a/Documentation/devicetree/bindings/gpio/cdns,gpio.yaml
> b/Documentation/devicetree/bindings/gpio/cdns,gpio.yaml
> new file mode 100644
> index 000000000000..f1a64c173665
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/gpio/cdns,gpio.yaml
> @@ -0,0 +1,79 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/gpio/cdns,gpio.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Cadence GPIO Controller
> +
> +maintainers:
> + - Jan Kotas <jank at cadence.com>
> +
> +properties:
> + compatible:
> + const: cdns,gpio-r1p02
> +
> + reg:
> + maxItems: 1
> +
> + clocks:
> + maxItems: 1
> +
> + ngpios:
> + minimum: 1
> + maximum: 32
> +
> + gpio-controller: true
> +
> + "#gpio-cells":
> + const: 2
> + description: |
> + - First cell is the GPIO line number.
> + - Second cell is flags as defined in <dt-
> bindings/gpio/gpio.h>,
> + only GPIO_ACTIVE_HIGH and GPIO_ACTIVE_LOW supported.
> +
> + interrupt-controller: true
> +
> + "#interrupt-cells":
> + const: 2
> + description: |
> + - First cell is the GPIO line number used as IRQ.
> + - Second cell is the trigger type, as defined in
> + <dt-bindings/interrupt-controller/irq.h>.
> +
> + interrupts:
> + maxItems: 1
> +
> +required:
> + - compatible
> + - reg
> + - clocks
> + - gpio-controller
> + - "#gpio-cells"
> +
> +if:
> + required: [interrupt-controller]
> +then:
> + required:
> + - interrupts
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/interrupt-controller/arm-gic.h>
> + #include <dt-bindings/interrupt-controller/irq.h>
> + gpio0: gpio-controller at fd060000 {
> + compatible = "cdns,gpio-r1p02";
> + reg = <0xfd060000 0x1000>;
> + clocks = <&gpio_clk>;
> +
> + interrupt-parent = <&gic>;
> + interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
> +
> + gpio-controller;
> + #gpio-cells = <2>;
> +
> + interrupt-controller;
> + #interrupt-cells = <2>;
> + };
More information about the openbmc
mailing list