blob: 62890a0aead1a17912287a18e07ccbb7b9ce3c2c [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pinctrl/brcm,bcm6318-pinctrl.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom BCM6318 pin controller
8
9maintainers:
10 - Álvaro Fernández Rojas <noltari@gmail.com>
11 - Jonas Gorski <jonas.gorski@gmail.com>
12
13description:
14 Bindings for Broadcom's BCM6318 memory-mapped pin controller.
15
16properties:
17 compatible:
18 const: brcm,bcm6318-pinctrl
19
20 reg:
21 maxItems: 2
22
23patternProperties:
24 '-pins$':
25 type: object
26 $ref: pinmux-node.yaml#
27 additionalProperties: false
28
29 properties:
30 function:
31 enum: [ ephy0_spd_led, ephy1_spd_led, ephy2_spd_led, ephy3_spd_led,
32 ephy0_act_led, ephy1_act_led, ephy2_act_led, ephy3_act_led,
33 serial_led_data, serial_led_clk, inet_act_led, inet_fail_led,
34 dsl_led, post_fail_led, wlan_wps_led, usb_pwron,
35 usb_device_led, usb_active ]
36
37 pins:
38 enum: [ gpio0, gpio1, gpio2, gpio3, gpio4, gpio5, gpio6, gpio7,
39 gpio8, gpio9, gpio10, gpio11, gpio12, gpio13, gpio40 ]
40
41 patternProperties:
42 '-pins$':
43 $ref: '#/patternProperties/-pins$'
44
45allOf:
46 - $ref: pinctrl.yaml#
47
48required:
49 - compatible
50 - reg
51
52additionalProperties: false
53
54examples:
55 - |
56 pinctrl@18 {
57 compatible = "brcm,bcm6318-pinctrl";
58 reg = <0x18 0x10>, <0x54 0x18>;
59
60 pinctrl_ephy0_spd_led: ephy0_spd_led-pins {
61 function = "ephy0_spd_led";
62 pins = "gpio0";
63 };
64
65 pinctrl_ephy1_spd_led: ephy1_spd_led-pins {
66 function = "ephy1_spd_led";
67 pins = "gpio1";
68 };
69
70 pinctrl_ephy2_spd_led: ephy2_spd_led-pins {
71 function = "ephy2_spd_led";
72 pins = "gpio2";
73 };
74
75 pinctrl_ephy3_spd_led: ephy3_spd_led-pins {
76 function = "ephy3_spd_led";
77 pins = "gpio3";
78 };
79
80 pinctrl_ephy0_act_led: ephy0_act_led-pins {
81 function = "ephy0_act_led";
82 pins = "gpio4";
83 };
84
85 pinctrl_ephy1_act_led: ephy1_act_led-pins {
86 function = "ephy1_act_led";
87 pins = "gpio5";
88 };
89
90 pinctrl_ephy2_act_led: ephy2_act_led-pins {
91 function = "ephy2_act_led";
92 pins = "gpio6";
93 };
94
95 pinctrl_ephy3_act_led: ephy3_act_led-pins {
96 function = "ephy3_act_led";
97 pins = "gpio7";
98 };
99
100 pinctrl_serial_led: serial_led-pins {
101 pinctrl_serial_led_data: serial_led_data-pins {
102 function = "serial_led_data";
103 pins = "gpio6";
104 };
105
106 pinctrl_serial_led_clk: serial_led_clk-pins {
107 function = "serial_led_clk";
108 pins = "gpio7";
109 };
110 };
111
112 pinctrl_inet_act_led: inet_act_led-pins {
113 function = "inet_act_led";
114 pins = "gpio8";
115 };
116
117 pinctrl_inet_fail_led: inet_fail_led-pins {
118 function = "inet_fail_led";
119 pins = "gpio9";
120 };
121
122 pinctrl_dsl_led: dsl_led-pins {
123 function = "dsl_led";
124 pins = "gpio10";
125 };
126
127 pinctrl_post_fail_led: post_fail_led-pins {
128 function = "post_fail_led";
129 pins = "gpio11";
130 };
131
132 pinctrl_wlan_wps_led: wlan_wps_led-pins {
133 function = "wlan_wps_led";
134 pins = "gpio12";
135 };
136
137 pinctrl_usb_pwron: usb_pwron-pins {
138 function = "usb_pwron";
139 pins = "gpio13";
140 };
141
142 pinctrl_usb_device_led: usb_device_led-pins {
143 function = "usb_device_led";
144 pins = "gpio13";
145 };
146
147 pinctrl_usb_active: usb_active-pins {
148 function = "usb_active";
149 pins = "gpio40";
150 };
151 };