On Mon, Dec 15, 2025 at 06:40:49PM +0000, Stafford Horne wrote:
> On Mon, Dec 15, 2025 at 04:57:45PM +0000, Conor Dooley wrote:
> > On Sun, Dec 14, 2025 at 06:01:41PM +0000, Stafford Horne wrote:
> > > In FPGA Development boards with GPIOs we use the opencores gpio verilog
> > > rtl. This is compatible with the gpio-mmio. Add the compatible string
> > > to allow as below.
> > >
> > > Example:
> > >
> > > gpio0: gpio@91000000 {
> > > compatible = "opencores,gpio", "brcm,bcm6345-gpio";
> >
> > What you have done below does not permit this, it only permits
> > opencores,gpio in isolation.
> > pw-bot: changes-requested
>
> Understood, I was not familar with the new schema. I was trying to follow what
> was seen in some other patches, now I see where I went wrong. I will fix this
> and use the schema validation tools to verify.
>
> Thanks for pointing it out.
I think the below is correct. But, would this be ok to put in one patch?
I do:
- Convert compatible from simple enum to oneOf.
- Add items: for the openrisc,gpio compatiblity string.
properties:
compatible:
- enum:
- - brcm,bcm6345-gpio
- - ni,169445-nand-gpio
- - wd,mbl-gpio # Western Digital MyBook Live memory-mapped GPIO controller
- - intel,ixp4xx-expansion-bus-mmio-gpio
+ oneOf:
+ - const: brcm,bcm6345-gpio
+ - const: ni,169445-nand-gpio
+ - const: wd,mbl-gpio # Western Digital MyBook Live memory-mapped GPIO
controller
+ - const: intel,ixp4xx-expansion-bus-mmio-gpio
+ - items:
+ - enum:
+ - opencores,gpio
+ - const: brcm,bcm6345-gpio
Thanks,
-Stafford
> > > reg = <0x91000000 0x1>, <0x91000001 0x1>;
> > > reg-names = "dat", "dirout";
> > > gpio-controller;
> > > #gpio-cells = <2>;
> > > status = "okay";
> > > };
> > >
> > > Link: https://opencores.org/projects/gpio
> > > Signed-off-by: Stafford Horne <[email protected]>
> > > ---
> > > Documentation/devicetree/bindings/gpio/gpio-mmio.yaml | 1 +
> > > 1 file changed, 1 insertion(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/gpio/gpio-mmio.yaml
> > > b/Documentation/devicetree/bindings/gpio/gpio-mmio.yaml
> > > index b4d55bf6a285..0490580df19e 100644
> > > --- a/Documentation/devicetree/bindings/gpio/gpio-mmio.yaml
> > > +++ b/Documentation/devicetree/bindings/gpio/gpio-mmio.yaml
> > > @@ -23,6 +23,7 @@ properties:
> > > - ni,169445-nand-gpio
> > > - wd,mbl-gpio # Western Digital MyBook Live memory-mapped GPIO
> > > controller
> > > - intel,ixp4xx-expansion-bus-mmio-gpio
> > > + - opencores,gpio
> > >
> > > big-endian: true
> > >
> > > --
> > > 2.51.0
> > >
>
>