On Tue, Jul 27, 2021 at 10:53:50AM +0530, Viresh Kumar wrote: > This patch adds binding for virtio GPIO controller, it is based on > virtio-device bindings. > > Reviewed-by: Arnd Bergmann <arnd@xxxxxxxx> > Signed-off-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx> > --- > .../devicetree/bindings/gpio/gpio-virtio.yaml | 59 +++++++++++++++++++ > 1 file changed, 59 insertions(+) > create mode 100644 Documentation/devicetree/bindings/gpio/gpio-virtio.yaml > > diff --git a/Documentation/devicetree/bindings/gpio/gpio-virtio.yaml b/Documentation/devicetree/bindings/gpio/gpio-virtio.yaml > new file mode 100644 > index 000000000000..601d85754577 > --- /dev/null > +++ b/Documentation/devicetree/bindings/gpio/gpio-virtio.yaml > @@ -0,0 +1,59 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/gpio/gpio-virtio.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Virtio GPIO controller > + > +maintainers: > + - Viresh Kumar <viresh.kumar@xxxxxxxxxx> > + > +allOf: > + - $ref: /schemas/virtio/virtio-device.yaml# > + > +description: > + Virtio GPIO controller, see /schemas/virtio/virtio-device.yaml for more > + details. > + > +properties: > + $nodename: > + const: gpio > + > + compatible: > + const: virtio,device29 > + > + gpio-controller: true > + > + "#gpio-cells": > + const: 2 > + > + interrupt-controller: true > + > + "#interrupt-cells": > + const: 2 Humm, how does one implement interrupts without a parent interrupt? It uses the parent virtio,mmio interrupt? > + > +required: > + - compatible > + - gpio-controller > + - "#gpio-cells" > + > +unevaluatedProperties: false > + > +examples: > + - | > + virtio@3000 { > + compatible = "virtio,mmio"; > + reg = <0x3000 0x100>; > + interrupts = <41>; > + > + gpio { > + compatible = "virtio,device29"; > + gpio-controller; > + #gpio-cells = <2>; > + interrupt-controller; > + #interrupt-cells = <2>; > + }; > + }; > + > +... > -- > 2.31.1.272.g89b43f80a514 > >