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,bcm6328-gpio-sysctl.yaml# 52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 62eb4d8dcSEmmanuel Vadot 77ef62cebSEmmanuel Vadottitle: Broadcom BCM6328 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 BCM6328 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,bcm6328-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 38*aa1a8ff2SEmmanuel 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 47*aa1a8ff2SEmmanuel Vadot $ref: /schemas/pinctrl/brcm,bcm6328-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,bcm6328-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,bcm6328-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,bcm6328-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 32>; 782eb4d8dcSEmmanuel Vadot #gpio-cells = <2>; 792eb4d8dcSEmmanuel Vadot }; 802eb4d8dcSEmmanuel Vadot 812eb4d8dcSEmmanuel Vadot pinctrl: pinctrl@18 { 822eb4d8dcSEmmanuel Vadot compatible = "brcm,bcm6328-pinctrl"; 832eb4d8dcSEmmanuel Vadot reg = <0x18 0x10>; 842eb4d8dcSEmmanuel Vadot 852eb4d8dcSEmmanuel Vadot pinctrl_serial_led: serial_led-pins { 862eb4d8dcSEmmanuel Vadot pinctrl_serial_led_data: serial_led_data-pins { 872eb4d8dcSEmmanuel Vadot function = "serial_led_data"; 882eb4d8dcSEmmanuel Vadot pins = "gpio6"; 892eb4d8dcSEmmanuel Vadot }; 902eb4d8dcSEmmanuel Vadot 912eb4d8dcSEmmanuel Vadot pinctrl_serial_led_clk: serial_led_clk-pins { 922eb4d8dcSEmmanuel Vadot function = "serial_led_clk"; 932eb4d8dcSEmmanuel Vadot pins = "gpio7"; 942eb4d8dcSEmmanuel Vadot }; 952eb4d8dcSEmmanuel Vadot }; 962eb4d8dcSEmmanuel Vadot 972eb4d8dcSEmmanuel Vadot pinctrl_inet_act_led: inet_act_led-pins { 982eb4d8dcSEmmanuel Vadot function = "inet_act_led"; 992eb4d8dcSEmmanuel Vadot pins = "gpio11"; 1002eb4d8dcSEmmanuel Vadot }; 1012eb4d8dcSEmmanuel Vadot 1022eb4d8dcSEmmanuel Vadot pinctrl_pcie_clkreq: pcie_clkreq-pins { 1032eb4d8dcSEmmanuel Vadot function = "pcie_clkreq"; 1042eb4d8dcSEmmanuel Vadot pins = "gpio16"; 1052eb4d8dcSEmmanuel Vadot }; 1062eb4d8dcSEmmanuel Vadot 1072eb4d8dcSEmmanuel Vadot pinctrl_ephy0_spd_led: ephy0_spd_led-pins { 1082eb4d8dcSEmmanuel Vadot function = "led"; 1092eb4d8dcSEmmanuel Vadot pins = "gpio17"; 1102eb4d8dcSEmmanuel Vadot }; 1112eb4d8dcSEmmanuel Vadot 1122eb4d8dcSEmmanuel Vadot pinctrl_ephy1_spd_led: ephy1_spd_led-pins { 1132eb4d8dcSEmmanuel Vadot function = "led"; 1142eb4d8dcSEmmanuel Vadot pins = "gpio18"; 1152eb4d8dcSEmmanuel Vadot }; 1162eb4d8dcSEmmanuel Vadot 1172eb4d8dcSEmmanuel Vadot pinctrl_ephy2_spd_led: ephy2_spd_led-pins { 1182eb4d8dcSEmmanuel Vadot function = "led"; 1192eb4d8dcSEmmanuel Vadot pins = "gpio19"; 1202eb4d8dcSEmmanuel Vadot }; 1212eb4d8dcSEmmanuel Vadot 1222eb4d8dcSEmmanuel Vadot pinctrl_ephy3_spd_led: ephy3_spd_led-pins { 1232eb4d8dcSEmmanuel Vadot function = "led"; 1242eb4d8dcSEmmanuel Vadot pins = "gpio20"; 1252eb4d8dcSEmmanuel Vadot }; 1262eb4d8dcSEmmanuel Vadot 1272eb4d8dcSEmmanuel Vadot pinctrl_ephy0_act_led: ephy0_act_led-pins { 1282eb4d8dcSEmmanuel Vadot function = "ephy0_act_led"; 1292eb4d8dcSEmmanuel Vadot pins = "gpio25"; 1302eb4d8dcSEmmanuel Vadot }; 1312eb4d8dcSEmmanuel Vadot 1322eb4d8dcSEmmanuel Vadot pinctrl_ephy1_act_led: ephy1_act_led-pins { 1332eb4d8dcSEmmanuel Vadot function = "ephy1_act_led"; 1342eb4d8dcSEmmanuel Vadot pins = "gpio26"; 1352eb4d8dcSEmmanuel Vadot }; 1362eb4d8dcSEmmanuel Vadot 1372eb4d8dcSEmmanuel Vadot pinctrl_ephy2_act_led: ephy2_act_led-pins { 1382eb4d8dcSEmmanuel Vadot function = "ephy2_act_led"; 1392eb4d8dcSEmmanuel Vadot pins = "gpio27"; 1402eb4d8dcSEmmanuel Vadot }; 1412eb4d8dcSEmmanuel Vadot 1422eb4d8dcSEmmanuel Vadot pinctrl_ephy3_act_led: ephy3_act_led-pins { 1432eb4d8dcSEmmanuel Vadot function = "ephy3_act_led"; 1442eb4d8dcSEmmanuel Vadot pins = "gpio28"; 1452eb4d8dcSEmmanuel Vadot }; 1462eb4d8dcSEmmanuel Vadot 1472eb4d8dcSEmmanuel Vadot pinctrl_hsspi_cs1: hsspi_cs1-pins { 1482eb4d8dcSEmmanuel Vadot function = "hsspi_cs1"; 1492eb4d8dcSEmmanuel Vadot pins = "hsspi_cs1"; 1502eb4d8dcSEmmanuel Vadot }; 1512eb4d8dcSEmmanuel Vadot 1522eb4d8dcSEmmanuel Vadot pinctrl_usb_port1_device: usb_port1_device-pins { 1532eb4d8dcSEmmanuel Vadot function = "usb_device_port"; 1542eb4d8dcSEmmanuel Vadot pins = "usb_port1"; 1552eb4d8dcSEmmanuel Vadot }; 1562eb4d8dcSEmmanuel Vadot 1572eb4d8dcSEmmanuel Vadot pinctrl_usb_port1_host: usb_port1_host-pins { 1582eb4d8dcSEmmanuel Vadot function = "usb_host_port"; 1592eb4d8dcSEmmanuel Vadot pins = "usb_port1"; 1602eb4d8dcSEmmanuel Vadot }; 1612eb4d8dcSEmmanuel Vadot }; 1622eb4d8dcSEmmanuel Vadot }; 163