The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/Bindings/gpio/sifive,gpio.yaml

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/gpio/sifive,gpio.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: SiFive GPIO controller
    8 
    9 maintainers:
   10   - Paul Walmsley <paul.walmsley@sifive.com>
   11 
   12 properties:
   13   compatible:
   14     items:
   15       - enum:
   16           - sifive,fu540-c000-gpio
   17           - sifive,fu740-c000-gpio
   18           - canaan,k210-gpiohs
   19       - const: sifive,gpio0
   20 
   21   reg:
   22     maxItems: 1
   23 
   24   interrupts:
   25     description:
   26       Interrupt mapping, one per GPIO. Maximum 32 GPIOs.
   27     minItems: 1
   28     maxItems: 32
   29 
   30   interrupt-controller: true
   31 
   32   "#interrupt-cells":
   33     const: 2
   34 
   35   clocks:
   36     maxItems: 1
   37 
   38   "#gpio-cells":
   39     const: 2
   40 
   41   ngpios:
   42     description:
   43       The number of GPIOs available on the controller implementation.
   44       It is 16 for the SiFive SoCs and 32 for the Canaan K210.
   45     minimum: 1
   46     maximum: 32
   47     default: 16
   48 
   49   gpio-line-names:
   50     minItems: 1
   51     maxItems: 32
   52 
   53   gpio-controller: true
   54 
   55 required:
   56   - compatible
   57   - reg
   58   - interrupts
   59   - interrupt-controller
   60   - "#interrupt-cells"
   61   - "#gpio-cells"
   62   - gpio-controller
   63 
   64 if:
   65   properties:
   66     compatible:
   67       contains:
   68         enum:
   69           - sifive,fu540-c000-gpio
   70           - sifive,fu740-c000-gpio
   71 then:
   72   required:
   73     - clocks
   74 
   75 additionalProperties: false
   76 
   77 examples:
   78   - |
   79       #include <dt-bindings/clock/sifive-fu540-prci.h>
   80       gpio@10060000 {
   81         compatible = "sifive,fu540-c000-gpio", "sifive,gpio0";
   82         interrupt-parent = <&plic>;
   83         interrupts = <7>, <8>, <9>, <10>, <11>, <12>, <13>, <14>, <15>, <16>,
   84                      <17>, <18>, <19>, <20>, <21>, <22>;
   85         reg = <0x10060000 0x1000>;
   86         clocks = <&tlclk FU540_PRCI_CLK_TLCLK>;
   87         gpio-controller;
   88         #gpio-cells = <2>;
   89         interrupt-controller;
   90         #interrupt-cells = <2>;
   91       };
   92 
   93 ...

Cache object: a9986e730e04777acbd131b239e15b34


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.