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,bcm6358-gpio-sysctl.yaml# 52eb4d8dcSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 62eb4d8dcSEmmanuel Vadot 77ef62cebSEmmanuel Vadottitle: Broadcom BCM6358 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 BCM6358 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,bcm6358-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,bcm6358-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,bcm6358-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@fffe0080 { 652eb4d8dcSEmmanuel Vadot #address-cells = <1>; 662eb4d8dcSEmmanuel Vadot #size-cells = <1>; 672eb4d8dcSEmmanuel Vadot compatible = "brcm,bcm6358-gpio-sysctl", "syscon", "simple-mfd"; 682eb4d8dcSEmmanuel Vadot reg = <0xfffe0080 0x80>; 692eb4d8dcSEmmanuel Vadot ranges = <0 0xfffe0080 0x80>; 702eb4d8dcSEmmanuel Vadot 712eb4d8dcSEmmanuel Vadot gpio@0 { 722eb4d8dcSEmmanuel Vadot compatible = "brcm,bcm6358-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 40>; 782eb4d8dcSEmmanuel Vadot #gpio-cells = <2>; 792eb4d8dcSEmmanuel Vadot }; 802eb4d8dcSEmmanuel Vadot 812eb4d8dcSEmmanuel Vadot pinctrl: pinctrl@18 { 822eb4d8dcSEmmanuel Vadot compatible = "brcm,bcm6358-pinctrl"; 832eb4d8dcSEmmanuel Vadot reg = <0x18 0x4>; 842eb4d8dcSEmmanuel Vadot 852eb4d8dcSEmmanuel Vadot pinctrl_ebi_cs: ebi_cs-pins { 862eb4d8dcSEmmanuel Vadot function = "ebi_cs"; 872eb4d8dcSEmmanuel Vadot groups = "ebi_cs_grp"; 882eb4d8dcSEmmanuel Vadot }; 892eb4d8dcSEmmanuel Vadot 902eb4d8dcSEmmanuel Vadot pinctrl_uart1: uart1-pins { 912eb4d8dcSEmmanuel Vadot function = "uart1"; 922eb4d8dcSEmmanuel Vadot groups = "uart1_grp"; 932eb4d8dcSEmmanuel Vadot }; 942eb4d8dcSEmmanuel Vadot 952eb4d8dcSEmmanuel Vadot pinctrl_serial_led: serial_led-pins { 962eb4d8dcSEmmanuel Vadot function = "serial_led"; 972eb4d8dcSEmmanuel Vadot groups = "serial_led_grp"; 982eb4d8dcSEmmanuel Vadot }; 992eb4d8dcSEmmanuel Vadot 1002eb4d8dcSEmmanuel Vadot pinctrl_legacy_led: legacy_led-pins { 1012eb4d8dcSEmmanuel Vadot function = "legacy_led"; 1022eb4d8dcSEmmanuel Vadot groups = "legacy_led_grp"; 1032eb4d8dcSEmmanuel Vadot }; 1042eb4d8dcSEmmanuel Vadot 1052eb4d8dcSEmmanuel Vadot pinctrl_led: led-pins { 1062eb4d8dcSEmmanuel Vadot function = "led"; 1072eb4d8dcSEmmanuel Vadot groups = "led_grp"; 1082eb4d8dcSEmmanuel Vadot }; 1092eb4d8dcSEmmanuel Vadot 1102eb4d8dcSEmmanuel Vadot pinctrl_spi_cs_23: spi_cs-pins { 1112eb4d8dcSEmmanuel Vadot function = "spi_cs"; 1122eb4d8dcSEmmanuel Vadot groups = "spi_cs_grp"; 1132eb4d8dcSEmmanuel Vadot }; 1142eb4d8dcSEmmanuel Vadot 1152eb4d8dcSEmmanuel Vadot pinctrl_utopia: utopia-pins { 1162eb4d8dcSEmmanuel Vadot function = "utopia"; 1172eb4d8dcSEmmanuel Vadot groups = "utopia_grp"; 1182eb4d8dcSEmmanuel Vadot }; 1192eb4d8dcSEmmanuel Vadot 1202eb4d8dcSEmmanuel Vadot pinctrl_pwm_syn_clk: pwm_syn_clk-pins { 1212eb4d8dcSEmmanuel Vadot function = "pwm_syn_clk"; 1222eb4d8dcSEmmanuel Vadot groups = "pwm_syn_clk_grp"; 1232eb4d8dcSEmmanuel Vadot }; 1242eb4d8dcSEmmanuel Vadot 1252eb4d8dcSEmmanuel Vadot pinctrl_sys_irq: sys_irq-pins { 1262eb4d8dcSEmmanuel Vadot function = "sys_irq"; 1272eb4d8dcSEmmanuel Vadot groups = "sys_irq_grp"; 1282eb4d8dcSEmmanuel Vadot }; 1292eb4d8dcSEmmanuel Vadot }; 1302eb4d8dcSEmmanuel Vadot }; 131