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/socionext,uniphier-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-only OR BSD-2-Clause
    2 %YAML 1.2
    3 ---
    4 $id: http://devicetree.org/schemas/gpio/socionext,uniphier-gpio.yaml#
    5 $schema: http://devicetree.org/meta-schemas/core.yaml#
    6 
    7 title: UniPhier GPIO controller
    8 
    9 maintainers:
   10   - Masahiro Yamada <yamada.masahiro@socionext.com>
   11 
   12 properties:
   13   $nodename:
   14     pattern: "^gpio@[0-9a-f]+$"
   15 
   16   compatible:
   17     const: socionext,uniphier-gpio
   18 
   19   reg:
   20     maxItems: 1
   21 
   22   gpio-controller: true
   23 
   24   "#gpio-cells":
   25     const: 2
   26 
   27   interrupt-controller: true
   28 
   29   "#interrupt-cells":
   30     description: |
   31       The first cell defines the interrupt number.
   32       The second cell bits[3:0] is used to specify trigger type as follows:
   33         1 = low-to-high edge triggered
   34         2 = high-to-low edge triggered
   35         4 = active high level-sensitive
   36         8 = active low level-sensitive
   37       Valid combinations are 1, 2, 3, 4, 8.
   38     const: 2
   39 
   40   ngpios:
   41     minimum: 0
   42     maximum: 512
   43 
   44   gpio-ranges: true
   45 
   46   gpio-ranges-group-names: true
   47 
   48   socionext,interrupt-ranges:
   49     description: |
   50       Specifies an interrupt number mapping between this GPIO controller and
   51       its interrupt parent, in the form of arbitrary number of
   52       <child-interrupt-base parent-interrupt-base length> triplets.
   53     $ref: /schemas/types.yaml#/definitions/uint32-matrix
   54 
   55 patternProperties:
   56   "^.+-hog(-[0-9]+)?$":
   57     type: object
   58     properties:
   59       gpio-hog: true
   60       gpios: true
   61       input: true
   62       output-high: true
   63       output-low: true
   64       line-name: true
   65 
   66     required:
   67       - gpio-hog
   68       - gpios
   69 
   70     additionalProperties: false
   71 
   72 required:
   73   - compatible
   74   - reg
   75   - gpio-controller
   76   - "#gpio-cells"
   77   - interrupt-controller
   78   - "#interrupt-cells"
   79   - ngpios
   80   - gpio-ranges
   81   - socionext,interrupt-ranges
   82 
   83 additionalProperties: false
   84 
   85 examples:
   86   - |
   87     #include <dt-bindings/gpio/gpio.h>
   88     #include <dt-bindings/gpio/uniphier-gpio.h>
   89 
   90     gpio: gpio@55000000 {
   91         compatible = "socionext,uniphier-gpio";
   92         reg = <0x55000000 0x200>;
   93         interrupt-parent = <&aidet>;
   94         interrupt-controller;
   95         #interrupt-cells = <2>;
   96         gpio-controller;
   97         #gpio-cells = <2>;
   98         gpio-ranges = <&pinctrl 0 0 0>;
   99         gpio-ranges-group-names = "gpio_range";
  100         ngpios = <248>;
  101         socionext,interrupt-ranges = <0 48 16>, <16 154 5>, <21 217 3>;
  102     };
  103 
  104     // Consumer:
  105     // Please note UNIPHIER_GPIO_PORT(29, 4) represents PORT294 in the SoC
  106     // document. Unfortunately, only the one's place is octal in the port
  107     // numbering. (That is, PORT 8, 9, 18, 19, 28, 29, ... do not exist.)
  108     // UNIPHIER_GPIO_PORT() is a helper macro to calculate 29 * 8 + 4.
  109     sdhci0_pwrseq {
  110         compatible = "mmc-pwrseq-emmc";
  111         reset-gpios = <&gpio UNIPHIER_GPIO_PORT(29, 4) GPIO_ACTIVE_LOW>;
  112     };

Cache object: ec1f0106af4a1e21e1e416607b2d1263


[ 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.