0001 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/gpio/brcm,bcm6345-gpio.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: Broadcom BCM6345 GPIO controller
0008
0009 maintainers:
0010 - Álvaro Fernández Rojas <noltari@gmail.com>
0011 - Jonas Gorski <jonas.gorski@gmail.com>
0012
0013 description: |+
0014 Bindings for Broadcom's BCM63xx memory-mapped GPIO controllers.
0015
0016 These bindings can be used on any BCM63xx SoC. However, BCM6338 and BCM6345
0017 are the only ones which don't need a pinctrl driver.
0018
0019 BCM6338 have 8-bit data and dirout registers, where GPIO state can be read
0020 and/or written, and the direction changed from input to output.
0021 BCM6345 have 16-bit data and dirout registers, where GPIO state can be read
0022 and/or written, and the direction changed from input to output.
0023 BCM6318, BCM6328, BCM6358, BCM6362, BCM6368 and BCM63268 have 32-bit data
0024 and dirout registers, where GPIO state can be read and/or written, and the
0025 direction changed from input to output.
0026
0027 properties:
0028 compatible:
0029 enum:
0030 - brcm,bcm6318-gpio
0031 - brcm,bcm6328-gpio
0032 - brcm,bcm6345-gpio
0033 - brcm,bcm6358-gpio
0034 - brcm,bcm6362-gpio
0035 - brcm,bcm6368-gpio
0036 - brcm,bcm63268-gpio
0037
0038 gpio-controller: true
0039
0040 "#gpio-cells":
0041 const: 2
0042
0043 gpio-ranges:
0044 maxItems: 1
0045
0046 native-endian: true
0047
0048 reg:
0049 maxItems: 2
0050
0051 reg-names:
0052 items:
0053 - const: dirout
0054 - const: dat
0055
0056 required:
0057 - compatible
0058 - reg
0059 - reg-names
0060 - gpio-controller
0061 - '#gpio-cells'
0062
0063 additionalProperties: false
0064
0065 examples:
0066 - |
0067 gpio@fffe0406 {
0068 compatible = "brcm,bcm6345-gpio";
0069 reg-names = "dirout", "dat";
0070 reg = <0xfffe0406 2>, <0xfffe040a 2>;
0071 native-endian;
0072
0073 gpio-controller;
0074 #gpio-cells = <2>;
0075 };
0076
0077 - |
0078 gpio@0 {
0079 compatible = "brcm,bcm63268-gpio";
0080 reg-names = "dirout", "dat";
0081 reg = <0x0 0x8>, <0x8 0x8>;
0082
0083 gpio-controller;
0084 gpio-ranges = <&pinctrl 0 0 52>;
0085 #gpio-cells = <2>;
0086 };