1*cfb1b98bSÁlvaro Fernández Rojas# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*cfb1b98bSÁlvaro Fernández Rojas%YAML 1.2 3*cfb1b98bSÁlvaro Fernández Rojas--- 4*cfb1b98bSÁlvaro Fernández Rojas$id: http://devicetree.org/schemas/mfd/brcm,bcm6358-gpio-sysctl.yaml# 5*cfb1b98bSÁlvaro Fernández Rojas$schema: http://devicetree.org/meta-schemas/core.yaml# 6*cfb1b98bSÁlvaro Fernández Rojas 7*cfb1b98bSÁlvaro Fernández Rojastitle: Broadcom BCM6358 GPIO System Controller Device Tree Bindings 8*cfb1b98bSÁlvaro Fernández Rojas 9*cfb1b98bSÁlvaro Fernández Rojasmaintainers: 10*cfb1b98bSÁlvaro Fernández Rojas - Álvaro Fernández Rojas <noltari@gmail.com> 11*cfb1b98bSÁlvaro Fernández Rojas - Jonas Gorski <jonas.gorski@gmail.com> 12*cfb1b98bSÁlvaro Fernández Rojas 13*cfb1b98bSÁlvaro Fernández Rojasdescription: 14*cfb1b98bSÁlvaro Fernández Rojas Broadcom BCM6358 SoC GPIO system controller which provides a register map 15*cfb1b98bSÁlvaro Fernández Rojas for controlling the GPIO and pins of the SoC. 16*cfb1b98bSÁlvaro Fernández Rojas 17*cfb1b98bSÁlvaro Fernández Rojasproperties: 18*cfb1b98bSÁlvaro Fernández Rojas "#address-cells": true 19*cfb1b98bSÁlvaro Fernández Rojas 20*cfb1b98bSÁlvaro Fernández Rojas "#size-cells": true 21*cfb1b98bSÁlvaro Fernández Rojas 22*cfb1b98bSÁlvaro Fernández Rojas compatible: 23*cfb1b98bSÁlvaro Fernández Rojas items: 24*cfb1b98bSÁlvaro Fernández Rojas - const: brcm,bcm6358-gpio-sysctl 25*cfb1b98bSÁlvaro Fernández Rojas - const: syscon 26*cfb1b98bSÁlvaro Fernández Rojas - const: simple-mfd 27*cfb1b98bSÁlvaro Fernández Rojas 28*cfb1b98bSÁlvaro Fernández Rojas ranges: 29*cfb1b98bSÁlvaro Fernández Rojas maxItems: 1 30*cfb1b98bSÁlvaro Fernández Rojas 31*cfb1b98bSÁlvaro Fernández Rojas reg: 32*cfb1b98bSÁlvaro Fernández Rojas maxItems: 1 33*cfb1b98bSÁlvaro Fernández Rojas 34*cfb1b98bSÁlvaro Fernández RojaspatternProperties: 35*cfb1b98bSÁlvaro Fernández Rojas "^gpio@[0-9a-f]+$": 36*cfb1b98bSÁlvaro Fernández Rojas # Child node 37*cfb1b98bSÁlvaro Fernández Rojas type: object 38*cfb1b98bSÁlvaro Fernández Rojas $ref: "../gpio/brcm,bcm6345-gpio.yaml" 39*cfb1b98bSÁlvaro Fernández Rojas description: 40*cfb1b98bSÁlvaro Fernández Rojas GPIO controller for the SoC GPIOs. This child node definition 41*cfb1b98bSÁlvaro Fernández Rojas should follow the bindings specified in 42*cfb1b98bSÁlvaro Fernández Rojas Documentation/devicetree/bindings/gpio/brcm,bcm6345-gpio.yaml. 43*cfb1b98bSÁlvaro Fernández Rojas 44*cfb1b98bSÁlvaro Fernández Rojas "^pinctrl@[0-9a-f]+$": 45*cfb1b98bSÁlvaro Fernández Rojas # Child node 46*cfb1b98bSÁlvaro Fernández Rojas type: object 47*cfb1b98bSÁlvaro Fernández Rojas $ref: "../pinctrl/brcm,bcm6358-pinctrl.yaml" 48*cfb1b98bSÁlvaro Fernández Rojas description: 49*cfb1b98bSÁlvaro Fernández Rojas Pin controller for the SoC pins. This child node definition 50*cfb1b98bSÁlvaro Fernández Rojas should follow the bindings specified in 51*cfb1b98bSÁlvaro Fernández Rojas Documentation/devicetree/bindings/pinctrl/brcm,bcm6358-pinctrl.yaml. 52*cfb1b98bSÁlvaro Fernández Rojas 53*cfb1b98bSÁlvaro Fernández Rojasrequired: 54*cfb1b98bSÁlvaro Fernández Rojas - "#address-cells" 55*cfb1b98bSÁlvaro Fernández Rojas - compatible 56*cfb1b98bSÁlvaro Fernández Rojas - ranges 57*cfb1b98bSÁlvaro Fernández Rojas - reg 58*cfb1b98bSÁlvaro Fernández Rojas - "#size-cells" 59*cfb1b98bSÁlvaro Fernández Rojas 60*cfb1b98bSÁlvaro Fernández RojasadditionalProperties: false 61*cfb1b98bSÁlvaro Fernández Rojas 62*cfb1b98bSÁlvaro Fernández Rojasexamples: 63*cfb1b98bSÁlvaro Fernández Rojas - | 64*cfb1b98bSÁlvaro Fernández Rojas syscon@fffe0080 { 65*cfb1b98bSÁlvaro Fernández Rojas #address-cells = <1>; 66*cfb1b98bSÁlvaro Fernández Rojas #size-cells = <1>; 67*cfb1b98bSÁlvaro Fernández Rojas compatible = "brcm,bcm6358-gpio-sysctl", "syscon", "simple-mfd"; 68*cfb1b98bSÁlvaro Fernández Rojas reg = <0xfffe0080 0x80>; 69*cfb1b98bSÁlvaro Fernández Rojas ranges = <0 0xfffe0080 0x80>; 70*cfb1b98bSÁlvaro Fernández Rojas 71*cfb1b98bSÁlvaro Fernández Rojas gpio@0 { 72*cfb1b98bSÁlvaro Fernández Rojas compatible = "brcm,bcm6358-gpio"; 73*cfb1b98bSÁlvaro Fernández Rojas reg-names = "dirout", "dat"; 74*cfb1b98bSÁlvaro Fernández Rojas reg = <0x0 0x8>, <0x8 0x8>; 75*cfb1b98bSÁlvaro Fernández Rojas 76*cfb1b98bSÁlvaro Fernández Rojas gpio-controller; 77*cfb1b98bSÁlvaro Fernández Rojas gpio-ranges = <&pinctrl 0 0 40>; 78*cfb1b98bSÁlvaro Fernández Rojas #gpio-cells = <2>; 79*cfb1b98bSÁlvaro Fernández Rojas }; 80*cfb1b98bSÁlvaro Fernández Rojas 81*cfb1b98bSÁlvaro Fernández Rojas pinctrl: pinctrl@18 { 82*cfb1b98bSÁlvaro Fernández Rojas compatible = "brcm,bcm6358-pinctrl"; 83*cfb1b98bSÁlvaro Fernández Rojas reg = <0x18 0x4>; 84*cfb1b98bSÁlvaro Fernández Rojas 85*cfb1b98bSÁlvaro Fernández Rojas pinctrl_ebi_cs: ebi_cs-pins { 86*cfb1b98bSÁlvaro Fernández Rojas function = "ebi_cs"; 87*cfb1b98bSÁlvaro Fernández Rojas groups = "ebi_cs_grp"; 88*cfb1b98bSÁlvaro Fernández Rojas }; 89*cfb1b98bSÁlvaro Fernández Rojas 90*cfb1b98bSÁlvaro Fernández Rojas pinctrl_uart1: uart1-pins { 91*cfb1b98bSÁlvaro Fernández Rojas function = "uart1"; 92*cfb1b98bSÁlvaro Fernández Rojas groups = "uart1_grp"; 93*cfb1b98bSÁlvaro Fernández Rojas }; 94*cfb1b98bSÁlvaro Fernández Rojas 95*cfb1b98bSÁlvaro Fernández Rojas pinctrl_serial_led: serial_led-pins { 96*cfb1b98bSÁlvaro Fernández Rojas function = "serial_led"; 97*cfb1b98bSÁlvaro Fernández Rojas groups = "serial_led_grp"; 98*cfb1b98bSÁlvaro Fernández Rojas }; 99*cfb1b98bSÁlvaro Fernández Rojas 100*cfb1b98bSÁlvaro Fernández Rojas pinctrl_legacy_led: legacy_led-pins { 101*cfb1b98bSÁlvaro Fernández Rojas function = "legacy_led"; 102*cfb1b98bSÁlvaro Fernández Rojas groups = "legacy_led_grp"; 103*cfb1b98bSÁlvaro Fernández Rojas }; 104*cfb1b98bSÁlvaro Fernández Rojas 105*cfb1b98bSÁlvaro Fernández Rojas pinctrl_led: led-pins { 106*cfb1b98bSÁlvaro Fernández Rojas function = "led"; 107*cfb1b98bSÁlvaro Fernández Rojas groups = "led_grp"; 108*cfb1b98bSÁlvaro Fernández Rojas }; 109*cfb1b98bSÁlvaro Fernández Rojas 110*cfb1b98bSÁlvaro Fernández Rojas pinctrl_spi_cs_23: spi_cs-pins { 111*cfb1b98bSÁlvaro Fernández Rojas function = "spi_cs"; 112*cfb1b98bSÁlvaro Fernández Rojas groups = "spi_cs_grp"; 113*cfb1b98bSÁlvaro Fernández Rojas }; 114*cfb1b98bSÁlvaro Fernández Rojas 115*cfb1b98bSÁlvaro Fernández Rojas pinctrl_utopia: utopia-pins { 116*cfb1b98bSÁlvaro Fernández Rojas function = "utopia"; 117*cfb1b98bSÁlvaro Fernández Rojas groups = "utopia_grp"; 118*cfb1b98bSÁlvaro Fernández Rojas }; 119*cfb1b98bSÁlvaro Fernández Rojas 120*cfb1b98bSÁlvaro Fernández Rojas pinctrl_pwm_syn_clk: pwm_syn_clk-pins { 121*cfb1b98bSÁlvaro Fernández Rojas function = "pwm_syn_clk"; 122*cfb1b98bSÁlvaro Fernández Rojas groups = "pwm_syn_clk_grp"; 123*cfb1b98bSÁlvaro Fernández Rojas }; 124*cfb1b98bSÁlvaro Fernández Rojas 125*cfb1b98bSÁlvaro Fernández Rojas pinctrl_sys_irq: sys_irq-pins { 126*cfb1b98bSÁlvaro Fernández Rojas function = "sys_irq"; 127*cfb1b98bSÁlvaro Fernández Rojas groups = "sys_irq_grp"; 128*cfb1b98bSÁlvaro Fernández Rojas }; 129*cfb1b98bSÁlvaro Fernández Rojas }; 130*cfb1b98bSÁlvaro Fernández Rojas }; 131