Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: add BCM6368 pincontroller binding documentation

Add binding documentation for the pincontrol core found in BCM6368 SoCs.

Co-developed-by: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210324081923.20379-15-noltari@gmail.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Álvaro Fernández Rojas and committed by
Linus Walleij
9fbf8303 705791e2

+217
+217
Documentation/devicetree/bindings/pinctrl/brcm,bcm6368-pinctrl.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/pinctrl/brcm,bcm6368-pinctrl.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Broadcom BCM6368 pin controller 8 + 9 + maintainers: 10 + - Álvaro Fernández Rojas <noltari@gmail.com> 11 + - Jonas Gorski <jonas.gorski@gmail.com> 12 + 13 + description: 14 + Bindings for Broadcom's BCM6368 memory-mapped pin controller. 15 + 16 + properties: 17 + compatible: 18 + const: brcm,bcm6368-pinctrl 19 + 20 + reg: 21 + maxItems: 2 22 + 23 + patternProperties: 24 + '-pins$': 25 + type: object 26 + $ref: pinmux-node.yaml# 27 + 28 + properties: 29 + function: 30 + enum: [ analog_afe_0, analog_afe_1, sys_irq, serial_led_data, 31 + serial_led_clk, inet_led, ephy0_led, ephy1_led, ephy2_led, 32 + ephy3_led, robosw_led_data, robosw_led_clk, robosw_led0, 33 + robosw_led1, usb_device_led, pci_req1, pci_gnt1, pci_intb, 34 + pci_req0, pci_gnt0, pcmcia_cd1, pcmcia_cd2, pcmcia_vs1, 35 + pcmcia_vs2, ebi_cs2, ebi_cs3, spi_cs2, spi_cs3, spi_cs4, 36 + spi_cs5, uart1 ] 37 + 38 + pins: 39 + enum: [ gpio0, gpio1, gpio2, gpio3, gpio4, gpio5, gpio6, gpio7, 40 + gpio8, gpio9, gpio10, gpio11, gpio12, gpio13, gpio14, 41 + gpio16, gpio17, gpio18, gpio19, gpio20, gpio22, gpio23, 42 + gpio24, gpio25, gpio26, gpio27, gpio28, gpio29, gpio30, 43 + gpio31, uart1_grp ] 44 + 45 + required: 46 + - compatible 47 + - reg 48 + 49 + additionalProperties: false 50 + 51 + examples: 52 + - | 53 + pinctrl@18 { 54 + compatible = "brcm,bcm6368-pinctrl"; 55 + reg = <0x18 0x4>, <0x38 0x4>; 56 + 57 + pinctrl_analog_afe_0: analog_afe_0-pins { 58 + function = "analog_afe_0"; 59 + pins = "gpio0"; 60 + }; 61 + 62 + pinctrl_analog_afe_1: analog_afe_1-pins { 63 + function = "analog_afe_1"; 64 + pins = "gpio1"; 65 + }; 66 + 67 + pinctrl_sys_irq: sys_irq-pins { 68 + function = "sys_irq"; 69 + pins = "gpio2"; 70 + }; 71 + 72 + pinctrl_serial_led: serial_led-pins { 73 + pinctrl_serial_led_data: serial_led_data-pins { 74 + function = "serial_led_data"; 75 + pins = "gpio3"; 76 + }; 77 + 78 + pinctrl_serial_led_clk: serial_led_clk-pins { 79 + function = "serial_led_clk"; 80 + pins = "gpio4"; 81 + }; 82 + }; 83 + 84 + pinctrl_inet_led: inet_led-pins { 85 + function = "inet_led"; 86 + pins = "gpio5"; 87 + }; 88 + 89 + pinctrl_ephy0_led: ephy0_led-pins { 90 + function = "ephy0_led"; 91 + pins = "gpio6"; 92 + }; 93 + 94 + pinctrl_ephy1_led: ephy1_led-pins { 95 + function = "ephy1_led"; 96 + pins = "gpio7"; 97 + }; 98 + 99 + pinctrl_ephy2_led: ephy2_led-pins { 100 + function = "ephy2_led"; 101 + pins = "gpio8"; 102 + }; 103 + 104 + pinctrl_ephy3_led: ephy3_led-pins { 105 + function = "ephy3_led"; 106 + pins = "gpio9"; 107 + }; 108 + 109 + pinctrl_robosw_led_data: robosw_led_data-pins { 110 + function = "robosw_led_data"; 111 + pins = "gpio10"; 112 + }; 113 + 114 + pinctrl_robosw_led_clk: robosw_led_clk-pins { 115 + function = "robosw_led_clk"; 116 + pins = "gpio11"; 117 + }; 118 + 119 + pinctrl_robosw_led0: robosw_led0-pins { 120 + function = "robosw_led0"; 121 + pins = "gpio12"; 122 + }; 123 + 124 + pinctrl_robosw_led1: robosw_led1-pins { 125 + function = "robosw_led1"; 126 + pins = "gpio13"; 127 + }; 128 + 129 + pinctrl_usb_device_led: usb_device_led-pins { 130 + function = "usb_device_led"; 131 + pins = "gpio14"; 132 + }; 133 + 134 + pinctrl_pci: pci-pins { 135 + pinctrl_pci_req1: pci_req1-pins { 136 + function = "pci_req1"; 137 + pins = "gpio16"; 138 + }; 139 + 140 + pinctrl_pci_gnt1: pci_gnt1-pins { 141 + function = "pci_gnt1"; 142 + pins = "gpio17"; 143 + }; 144 + 145 + pinctrl_pci_intb: pci_intb-pins { 146 + function = "pci_intb"; 147 + pins = "gpio18"; 148 + }; 149 + 150 + pinctrl_pci_req0: pci_req0-pins { 151 + function = "pci_req0"; 152 + pins = "gpio19"; 153 + }; 154 + 155 + pinctrl_pci_gnt0: pci_gnt0-pins { 156 + function = "pci_gnt0"; 157 + pins = "gpio20"; 158 + }; 159 + }; 160 + 161 + pinctrl_pcmcia: pcmcia-pins { 162 + pinctrl_pcmcia_cd1: pcmcia_cd1-pins { 163 + function = "pcmcia_cd1"; 164 + pins = "gpio22"; 165 + }; 166 + 167 + pinctrl_pcmcia_cd2: pcmcia_cd2-pins { 168 + function = "pcmcia_cd2"; 169 + pins = "gpio23"; 170 + }; 171 + 172 + pinctrl_pcmcia_vs1: pcmcia_vs1-pins { 173 + function = "pcmcia_vs1"; 174 + pins = "gpio24"; 175 + }; 176 + 177 + pinctrl_pcmcia_vs2: pcmcia_vs2-pins { 178 + function = "pcmcia_vs2"; 179 + pins = "gpio25"; 180 + }; 181 + }; 182 + 183 + pinctrl_ebi_cs2: ebi_cs2-pins { 184 + function = "ebi_cs2"; 185 + pins = "gpio26"; 186 + }; 187 + 188 + pinctrl_ebi_cs3: ebi_cs3-pins { 189 + function = "ebi_cs3"; 190 + pins = "gpio27"; 191 + }; 192 + 193 + pinctrl_spi_cs2: spi_cs2-pins { 194 + function = "spi_cs2"; 195 + pins = "gpio28"; 196 + }; 197 + 198 + pinctrl_spi_cs3: spi_cs3-pins { 199 + function = "spi_cs3"; 200 + pins = "gpio29"; 201 + }; 202 + 203 + pinctrl_spi_cs4: spi_cs4-pins { 204 + function = "spi_cs4"; 205 + pins = "gpio30"; 206 + }; 207 + 208 + pinctrl_spi_cs5: spi_cs5-pins { 209 + function = "spi_cs5"; 210 + pins = "gpio31"; 211 + }; 212 + 213 + pinctrl_uart1: uart1-pins { 214 + function = "uart1"; 215 + group = "uart1_grp"; 216 + }; 217 + };