12eb4d8dcSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 22eb4d8dcSEmmanuel Vadot%YAML 1.2 32eb4d8dcSEmmanuel Vadot--- 42eb4d8dcSEmmanuel Vadot$id: http://devicetree.org/schemas/mfd/brcm,bcm6362-gpio-sysctl.yaml# 52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 62eb4d8dcSEmmanuel Vadot 77ef62cebSEmmanuel Vadottitle: Broadcom BCM6362 GPIO System Controller 82eb4d8dcSEmmanuel Vadot 92eb4d8dcSEmmanuel Vadotmaintainers: 102eb4d8dcSEmmanuel Vadot - Álvaro Fernández Rojas <noltari@gmail.com> 112eb4d8dcSEmmanuel Vadot - Jonas Gorski <jonas.gorski@gmail.com> 122eb4d8dcSEmmanuel Vadot 132eb4d8dcSEmmanuel Vadotdescription: 142eb4d8dcSEmmanuel Vadot Broadcom BCM6362 SoC GPIO system controller which provides a register map 152eb4d8dcSEmmanuel Vadot for controlling the GPIO and pins of the SoC. 162eb4d8dcSEmmanuel Vadot 172eb4d8dcSEmmanuel Vadotproperties: 182eb4d8dcSEmmanuel Vadot "#address-cells": true 192eb4d8dcSEmmanuel Vadot 202eb4d8dcSEmmanuel Vadot "#size-cells": true 212eb4d8dcSEmmanuel Vadot 222eb4d8dcSEmmanuel Vadot compatible: 232eb4d8dcSEmmanuel Vadot items: 242eb4d8dcSEmmanuel Vadot - const: brcm,bcm6362-gpio-sysctl 252eb4d8dcSEmmanuel Vadot - const: syscon 262eb4d8dcSEmmanuel Vadot - const: simple-mfd 272eb4d8dcSEmmanuel Vadot 282eb4d8dcSEmmanuel Vadot ranges: 292eb4d8dcSEmmanuel Vadot maxItems: 1 302eb4d8dcSEmmanuel Vadot 312eb4d8dcSEmmanuel Vadot reg: 322eb4d8dcSEmmanuel Vadot maxItems: 1 332eb4d8dcSEmmanuel Vadot 342eb4d8dcSEmmanuel VadotpatternProperties: 352eb4d8dcSEmmanuel Vadot "^gpio@[0-9a-f]+$": 362eb4d8dcSEmmanuel Vadot # Child node 372eb4d8dcSEmmanuel Vadot type: object 38aa1a8ff2SEmmanuel Vadot $ref: /schemas/gpio/brcm,bcm63xx-gpio.yaml 392eb4d8dcSEmmanuel Vadot description: 402eb4d8dcSEmmanuel Vadot GPIO controller for the SoC GPIOs. This child node definition 412eb4d8dcSEmmanuel Vadot should follow the bindings specified in 42f126890aSEmmanuel Vadot Documentation/devicetree/bindings/gpio/brcm,bcm63xx-gpio.yaml. 432eb4d8dcSEmmanuel Vadot 442eb4d8dcSEmmanuel Vadot "^pinctrl@[0-9a-f]+$": 452eb4d8dcSEmmanuel Vadot # Child node 462eb4d8dcSEmmanuel Vadot type: object 47aa1a8ff2SEmmanuel Vadot $ref: /schemas/pinctrl/brcm,bcm6362-pinctrl.yaml 482eb4d8dcSEmmanuel Vadot description: 492eb4d8dcSEmmanuel Vadot Pin controller for the SoC pins. This child node definition 502eb4d8dcSEmmanuel Vadot should follow the bindings specified in 512eb4d8dcSEmmanuel Vadot Documentation/devicetree/bindings/pinctrl/brcm,bcm6362-pinctrl.yaml. 522eb4d8dcSEmmanuel Vadot 532eb4d8dcSEmmanuel Vadotrequired: 542eb4d8dcSEmmanuel Vadot - "#address-cells" 552eb4d8dcSEmmanuel Vadot - compatible 562eb4d8dcSEmmanuel Vadot - ranges 572eb4d8dcSEmmanuel Vadot - reg 582eb4d8dcSEmmanuel Vadot - "#size-cells" 592eb4d8dcSEmmanuel Vadot 602eb4d8dcSEmmanuel VadotadditionalProperties: false 612eb4d8dcSEmmanuel Vadot 622eb4d8dcSEmmanuel Vadotexamples: 632eb4d8dcSEmmanuel Vadot - | 642eb4d8dcSEmmanuel Vadot syscon@10000080 { 652eb4d8dcSEmmanuel Vadot #address-cells = <1>; 662eb4d8dcSEmmanuel Vadot #size-cells = <1>; 672eb4d8dcSEmmanuel Vadot compatible = "brcm,bcm6362-gpio-sysctl", "syscon", "simple-mfd"; 682eb4d8dcSEmmanuel Vadot reg = <0x10000080 0x80>; 692eb4d8dcSEmmanuel Vadot ranges = <0 0x10000080 0x80>; 702eb4d8dcSEmmanuel Vadot 712eb4d8dcSEmmanuel Vadot gpio@0 { 722eb4d8dcSEmmanuel Vadot compatible = "brcm,bcm6362-gpio"; 732eb4d8dcSEmmanuel Vadot reg-names = "dirout", "dat"; 742eb4d8dcSEmmanuel Vadot reg = <0x0 0x8>, <0x8 0x8>; 752eb4d8dcSEmmanuel Vadot 762eb4d8dcSEmmanuel Vadot gpio-controller; 772eb4d8dcSEmmanuel Vadot gpio-ranges = <&pinctrl 0 0 48>; 782eb4d8dcSEmmanuel Vadot #gpio-cells = <2>; 792eb4d8dcSEmmanuel Vadot }; 802eb4d8dcSEmmanuel Vadot 812eb4d8dcSEmmanuel Vadot pinctrl: pinctrl@18 { 822eb4d8dcSEmmanuel Vadot compatible = "brcm,bcm6362-pinctrl"; 832eb4d8dcSEmmanuel Vadot reg = <0x18 0x10>, <0x38 0x4>; 842eb4d8dcSEmmanuel Vadot 852eb4d8dcSEmmanuel Vadot pinctrl_usb_device_led: usb_device_led-pins { 862eb4d8dcSEmmanuel Vadot function = "usb_device_led"; 872eb4d8dcSEmmanuel Vadot pins = "gpio0"; 882eb4d8dcSEmmanuel Vadot }; 892eb4d8dcSEmmanuel Vadot 902eb4d8dcSEmmanuel Vadot pinctrl_sys_irq: sys_irq-pins { 912eb4d8dcSEmmanuel Vadot function = "sys_irq"; 922eb4d8dcSEmmanuel Vadot pins = "gpio1"; 932eb4d8dcSEmmanuel Vadot }; 942eb4d8dcSEmmanuel Vadot 952eb4d8dcSEmmanuel Vadot pinctrl_serial_led: serial_led-pins { 962eb4d8dcSEmmanuel Vadot pinctrl_serial_led_clk: serial_led_clk-pins { 972eb4d8dcSEmmanuel Vadot function = "serial_led_clk"; 982eb4d8dcSEmmanuel Vadot pins = "gpio2"; 992eb4d8dcSEmmanuel Vadot }; 1002eb4d8dcSEmmanuel Vadot 1012eb4d8dcSEmmanuel Vadot pinctrl_serial_led_data: serial_led_data-pins { 1022eb4d8dcSEmmanuel Vadot function = "serial_led_data"; 1032eb4d8dcSEmmanuel Vadot pins = "gpio3"; 1042eb4d8dcSEmmanuel Vadot }; 1052eb4d8dcSEmmanuel Vadot }; 1062eb4d8dcSEmmanuel Vadot 1072eb4d8dcSEmmanuel Vadot pinctrl_robosw_led_data: robosw_led_data-pins { 1082eb4d8dcSEmmanuel Vadot function = "robosw_led_data"; 1092eb4d8dcSEmmanuel Vadot pins = "gpio4"; 1102eb4d8dcSEmmanuel Vadot }; 1112eb4d8dcSEmmanuel Vadot 1122eb4d8dcSEmmanuel Vadot pinctrl_robosw_led_clk: robosw_led_clk-pins { 1132eb4d8dcSEmmanuel Vadot function = "robosw_led_clk"; 1142eb4d8dcSEmmanuel Vadot pins = "gpio5"; 1152eb4d8dcSEmmanuel Vadot }; 1162eb4d8dcSEmmanuel Vadot 1172eb4d8dcSEmmanuel Vadot pinctrl_robosw_led0: robosw_led0-pins { 1182eb4d8dcSEmmanuel Vadot function = "robosw_led0"; 1192eb4d8dcSEmmanuel Vadot pins = "gpio6"; 1202eb4d8dcSEmmanuel Vadot }; 1212eb4d8dcSEmmanuel Vadot 1222eb4d8dcSEmmanuel Vadot pinctrl_robosw_led1: robosw_led1-pins { 1232eb4d8dcSEmmanuel Vadot function = "robosw_led1"; 1242eb4d8dcSEmmanuel Vadot pins = "gpio7"; 1252eb4d8dcSEmmanuel Vadot }; 1262eb4d8dcSEmmanuel Vadot 1272eb4d8dcSEmmanuel Vadot pinctrl_inet_led: inet_led-pins { 1282eb4d8dcSEmmanuel Vadot function = "inet_led"; 1292eb4d8dcSEmmanuel Vadot pins = "gpio8"; 1302eb4d8dcSEmmanuel Vadot }; 1312eb4d8dcSEmmanuel Vadot 1322eb4d8dcSEmmanuel Vadot pinctrl_spi_cs2: spi_cs2-pins { 1332eb4d8dcSEmmanuel Vadot function = "spi_cs2"; 1342eb4d8dcSEmmanuel Vadot pins = "gpio9"; 1352eb4d8dcSEmmanuel Vadot }; 1362eb4d8dcSEmmanuel Vadot 1372eb4d8dcSEmmanuel Vadot pinctrl_spi_cs3: spi_cs3-pins { 1382eb4d8dcSEmmanuel Vadot function = "spi_cs3"; 1392eb4d8dcSEmmanuel Vadot pins = "gpio10"; 1402eb4d8dcSEmmanuel Vadot }; 1412eb4d8dcSEmmanuel Vadot 1422eb4d8dcSEmmanuel Vadot pinctrl_ntr_pulse: ntr_pulse-pins { 1432eb4d8dcSEmmanuel Vadot function = "ntr_pulse"; 1442eb4d8dcSEmmanuel Vadot pins = "gpio11"; 1452eb4d8dcSEmmanuel Vadot }; 1462eb4d8dcSEmmanuel Vadot 1472eb4d8dcSEmmanuel Vadot pinctrl_uart1_scts: uart1_scts-pins { 1482eb4d8dcSEmmanuel Vadot function = "uart1_scts"; 1492eb4d8dcSEmmanuel Vadot pins = "gpio12"; 1502eb4d8dcSEmmanuel Vadot }; 1512eb4d8dcSEmmanuel Vadot 1522eb4d8dcSEmmanuel Vadot pinctrl_uart1_srts: uart1_srts-pins { 1532eb4d8dcSEmmanuel Vadot function = "uart1_srts"; 1542eb4d8dcSEmmanuel Vadot pins = "gpio13"; 1552eb4d8dcSEmmanuel Vadot }; 1562eb4d8dcSEmmanuel Vadot 1572eb4d8dcSEmmanuel Vadot pinctrl_uart1: uart1-pins { 1582eb4d8dcSEmmanuel Vadot pinctrl_uart1_sdin: uart1_sdin-pins { 1592eb4d8dcSEmmanuel Vadot function = "uart1_sdin"; 1602eb4d8dcSEmmanuel Vadot pins = "gpio14"; 1612eb4d8dcSEmmanuel Vadot }; 1622eb4d8dcSEmmanuel Vadot 1632eb4d8dcSEmmanuel Vadot pinctrl_uart1_sdout: uart1_sdout-pins { 1642eb4d8dcSEmmanuel Vadot function = "uart1_sdout"; 1652eb4d8dcSEmmanuel Vadot pins = "gpio15"; 1662eb4d8dcSEmmanuel Vadot }; 1672eb4d8dcSEmmanuel Vadot }; 1682eb4d8dcSEmmanuel Vadot 1692eb4d8dcSEmmanuel Vadot pinctrl_adsl_spi: adsl_spi-pins { 1702eb4d8dcSEmmanuel Vadot pinctrl_adsl_spi_miso: adsl_spi_miso-pins { 1712eb4d8dcSEmmanuel Vadot function = "adsl_spi_miso"; 1722eb4d8dcSEmmanuel Vadot pins = "gpio16"; 1732eb4d8dcSEmmanuel Vadot }; 1742eb4d8dcSEmmanuel Vadot 1752eb4d8dcSEmmanuel Vadot pinctrl_adsl_spi_mosi: adsl_spi_mosi-pins { 1762eb4d8dcSEmmanuel Vadot function = "adsl_spi_mosi"; 1772eb4d8dcSEmmanuel Vadot pins = "gpio17"; 1782eb4d8dcSEmmanuel Vadot }; 1792eb4d8dcSEmmanuel Vadot 1802eb4d8dcSEmmanuel Vadot pinctrl_adsl_spi_clk: adsl_spi_clk-pins { 1812eb4d8dcSEmmanuel Vadot function = "adsl_spi_clk"; 1822eb4d8dcSEmmanuel Vadot pins = "gpio18"; 1832eb4d8dcSEmmanuel Vadot }; 1842eb4d8dcSEmmanuel Vadot 1852eb4d8dcSEmmanuel Vadot pinctrl_adsl_spi_cs: adsl_spi_cs-pins { 1862eb4d8dcSEmmanuel Vadot function = "adsl_spi_cs"; 1872eb4d8dcSEmmanuel Vadot pins = "gpio19"; 1882eb4d8dcSEmmanuel Vadot }; 1892eb4d8dcSEmmanuel Vadot }; 1902eb4d8dcSEmmanuel Vadot 1912eb4d8dcSEmmanuel Vadot pinctrl_ephy0_led: ephy0_led-pins { 1922eb4d8dcSEmmanuel Vadot function = "ephy0_led"; 1932eb4d8dcSEmmanuel Vadot pins = "gpio20"; 1942eb4d8dcSEmmanuel Vadot }; 1952eb4d8dcSEmmanuel Vadot 1962eb4d8dcSEmmanuel Vadot pinctrl_ephy1_led: ephy1_led-pins { 1972eb4d8dcSEmmanuel Vadot function = "ephy1_led"; 1982eb4d8dcSEmmanuel Vadot pins = "gpio21"; 1992eb4d8dcSEmmanuel Vadot }; 2002eb4d8dcSEmmanuel Vadot 2012eb4d8dcSEmmanuel Vadot pinctrl_ephy2_led: ephy2_led-pins { 2022eb4d8dcSEmmanuel Vadot function = "ephy2_led"; 2032eb4d8dcSEmmanuel Vadot pins = "gpio22"; 2042eb4d8dcSEmmanuel Vadot }; 2052eb4d8dcSEmmanuel Vadot 2062eb4d8dcSEmmanuel Vadot pinctrl_ephy3_led: ephy3_led-pins { 2072eb4d8dcSEmmanuel Vadot function = "ephy3_led"; 2082eb4d8dcSEmmanuel Vadot pins = "gpio23"; 2092eb4d8dcSEmmanuel Vadot }; 2102eb4d8dcSEmmanuel Vadot 2112eb4d8dcSEmmanuel Vadot pinctrl_ext_irq0: ext_irq0-pins { 2122eb4d8dcSEmmanuel Vadot function = "ext_irq0"; 2132eb4d8dcSEmmanuel Vadot pins = "gpio24"; 2142eb4d8dcSEmmanuel Vadot }; 2152eb4d8dcSEmmanuel Vadot 2162eb4d8dcSEmmanuel Vadot pinctrl_ext_irq1: ext_irq1-pins { 2172eb4d8dcSEmmanuel Vadot function = "ext_irq1"; 2182eb4d8dcSEmmanuel Vadot pins = "gpio25"; 2192eb4d8dcSEmmanuel Vadot }; 2202eb4d8dcSEmmanuel Vadot 2212eb4d8dcSEmmanuel Vadot pinctrl_ext_irq2: ext_irq2-pins { 2222eb4d8dcSEmmanuel Vadot function = "ext_irq2"; 2232eb4d8dcSEmmanuel Vadot pins = "gpio26"; 2242eb4d8dcSEmmanuel Vadot }; 2252eb4d8dcSEmmanuel Vadot 2262eb4d8dcSEmmanuel Vadot pinctrl_ext_irq3: ext_irq3-pins { 2272eb4d8dcSEmmanuel Vadot function = "ext_irq3"; 2282eb4d8dcSEmmanuel Vadot pins = "gpio27"; 2292eb4d8dcSEmmanuel Vadot }; 2302eb4d8dcSEmmanuel Vadot 2312eb4d8dcSEmmanuel Vadot pinctrl_nand: nand-pins { 2322eb4d8dcSEmmanuel Vadot function = "nand"; 233*84943d6fSEmmanuel Vadot pins = "nand_grp"; 2342eb4d8dcSEmmanuel Vadot }; 2352eb4d8dcSEmmanuel Vadot }; 2362eb4d8dcSEmmanuel Vadot }; 237