[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240109171807.GA2783042-robh@kernel.org>
Date: Tue, 9 Jan 2024 11:18:07 -0600
From: Rob Herring <robh@...nel.org>
To: Yoshinori Sato <ysato@...rs.sourceforge.jp>
Cc: linux-sh@...r.kernel.org, Damien Le Moal <dlemoal@...nel.org>, Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>, Conor Dooley <conor+dt@...nel.org>, Geert Uytterhoeven <geert+renesas@...der.be>, Michael Turquette <mturquette@...libre.com>, Stephen Boyd <sboyd@...nel.org>, Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>, Maxime Ripard <mripard@...nel.org>, Thomas Zimmermann <tzimmermann@...e.de>, David Airlie <airlied@...il.com>, Daniel Vetter <daniel@...ll.ch>, Thomas Gleixner <tglx@...utronix.de>, Lorenzo Pieralisi <lpieralisi@...nel.org>, Krzysztof Wilczyński <kw@...ux.com>, Bjorn Helgaas <bhelgaas@...gle.com>, Greg Kroah-Hartman <gregkh@...uxfoundation.org>, Jiri Slaby <jirislaby@...nel.org>, Magnus Damm <magnus.damm@...il.com>, Daniel Lezcano <daniel.lezcano@...aro.org>, Rich Felker <dalias@...c.org>, John Paul Adrian Glaubitz <glaubitz@...sik.fu-berlin.de>, Lee Jones <lee@...nel.org>, Helge Deller <deller@....de>, Heiko Stuebner <heiko@...ech.de
>, Jernej Skrabec <jernej.skrabec@...il.com>, Chris Morgan <macromorgan@...mail.com>, Yang Xiwen <forbidden405@...mail.com>, Sebastian Reichel <sre@...nel.org>, Linus Walleij <linus.walleij@...aro.org>, Randy Dunlap <rdunlap@...radead.org>, Arnd Bergmann <arnd@...db.de>, Vlastimil Babka <vbabka@...e.cz>, Hyeonggon Yoo <42.hyeyoo@...il.com>, David Rientjes <rientjes@...gle.com>, Baoquan He <bhe@...hat.com>, Andrew Morton <akpm@...ux-foundation.org>, Guenter Roeck <linux@...ck-us.net>, Stephen Rothwell <sfr@...b.auug.org.au>, Azeem Shaikh <azeemshaikh38@...il.com>, Javier Martinez Canillas <javierm@...hat.com>, Max Filippov <jcmvbkbc@...il.com>, Palmer Dabbelt <palmer@...osinc.com>, Bin Meng <bmeng@...ylab.org>, Jonathan Corbet <corbet@....net>, Jacky Huang <ychuang3@...oton.com>, Lukas Bulwahn <lukas.bulwahn@...il.com>, Biju Das <biju.das.jz@...renesas.com>, Uwe Kleine-König <u.kleine-koenig@...gutronix.de>, Sam Ravnborg <sam@...nborg.org>, Sergey Shtylyov <s.shtyl
yov@....ru>, Michael Karcher <kernel@...rcher.dialup.fu-berlin.de>, Laurent Pinchart <laurent.pinchart+renesas@...asonboard.com>, linux-ide@...r.kernel.org, devicetree@...r.kernel.org, linux-kernel@...r.kernel.org, linux-renesas-soc@...r.kernel.org, linux-clk@...r.kernel.org, dri-devel@...ts.freedesktop.org, linux-pci@...r.kernel.org, linux-serial@...r.kernel.org, linux-fbdev@...r.kernel.org
Subject: Re: [DO NOT MERGE v6 19/37] dt-bindings: interrupt-controller:
renesas,sh7751-irl-ext: Add json-schema
On Tue, Jan 09, 2024 at 05:23:16PM +0900, Yoshinori Sato wrote:
> Renesas SH7751 external interrupt encoder json-schema.
>
> Signed-off-by: Yoshinori Sato <ysato@...rs.sourceforge.jp>
> ---
> .../renesas,sh7751-irl-ext.yaml | 72 +++++++++++++++++++
> 1 file changed, 72 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/interrupt-controller/renesas,sh7751-irl-ext.yaml
>
> diff --git a/Documentation/devicetree/bindings/interrupt-controller/renesas,sh7751-irl-ext.yaml b/Documentation/devicetree/bindings/interrupt-controller/renesas,sh7751-irl-ext.yaml
> new file mode 100644
> index 000000000000..541b582b94ce
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/interrupt-controller/renesas,sh7751-irl-ext.yaml
> @@ -0,0 +1,72 @@
> +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/interrupt-controller/renesas,sh7751-irl-ext.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Renesas SH7751 external interrupt encoder with enable regs.
> +
> +maintainers:
> + - Yoshinori Sato <ysato@...rs.sourceforge.jp>
> +
> +description:
> + This is the generally used external interrupt encoder on SH7751 based boards.
> +
> +properties:
> + compatible:
> + items:
> + - const: renesas,sh7751-irl-ext
> +
> + reg: true
Must define how many entries and what they are if more than one.
> +
> + interrupt-controller: true
> +
> + '#interrupt-cells':
> + const: 1
> +
> + '#address-cells':
> + const: 0
> +
> + renesas,set-to-disable:
> + $ref: /schemas/types.yaml#/definitions/flag
> + description: Invert enable registers. Setting the bit to 0 enables interrupts.
Why is this a property? Does it change per board or instance? If not, it
should be implied by compatible.
> +
> + renesas,enable-bit:
> + $ref: /schemas/types.yaml#/definitions/uint32-matrix
> + description: |
> + IRQ enable register bit mapping
> + 1st word interrupt level
> + 2nd word bit index of enable register
Same question here.
If it remains, then you need:
items:
items:
- description: interrupt level (does that mean high/low?)
- description: bit index of enable register
Plus any constraints on the values if possible.
> +
> +required:
> + - compatible
> + - reg
> + - interrupt-controller
> + - '#interrupt-cells'
> + - renesas,enable-bit
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + r2dintc: sh7751irl_encoder@...00000 {
interrupt-controller@...00000 {
> + compatible = "renesas,sh7751-irl-ext";
> + reg = <0xa4000000 0x02>;
> + interrupt-controller;
> + #address-cells = <0>;
> + #size-cells = <0>;
> + #interrupt-cells = <1>;
> + renesas,enable-bit = <0 11>, /* PCI INTD */
> + <1 9>, /* CF IDE */
> + <2 8>, /* CF CD */
> + <3 12>, /* PCI INTC */
> + <4 10>, /* SM501 */
> + <5 6>, /* KEY */
> + <6 5>, /* RTC ALARM */
> + <7 4>, /* RTC T */
> + <8 7>, /* SDCARD */
> + <9 14>, /* PCI INTA */
> + <10 13>, /* PCI INTB */
> + <11 0>, /* EXT */
> + <12 15>; /* TP */
Looks like 'interrupt level' is just the index of the values? Why not
make this an array?
Rob
Powered by blists - more mailing lists