~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/net/dsa/marvell,mv88e6xxx.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/devicetree/bindings/net/dsa/marvell,mv88e6xxx.yaml (Architecture i386) and /Documentation/devicetree/bindings/net/dsa/marvell,mv88e6xxx.yaml (Architecture mips)


  1 # SPDX-License-Identifier: (GPL-2.0-only OR BS      1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2                                           2 %YAML 1.2
  3 ---                                                 3 ---
  4 $id: http://devicetree.org/schemas/net/dsa/mar      4 $id: http://devicetree.org/schemas/net/dsa/marvell,mv88e6xxx.yaml#
  5 $schema: http://devicetree.org/meta-schemas/co      5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6                                                     6 
  7 title: Marvell MV88E6xxx DSA switch family          7 title: Marvell MV88E6xxx DSA switch family
  8                                                     8 
  9 maintainers:                                        9 maintainers:
 10   - Andrew Lunn <andrew@lunn.ch>                    10   - Andrew Lunn <andrew@lunn.ch>
 11                                                    11 
 12 description:                                       12 description:
 13   The Marvell MV88E6xxx switch series has been     13   The Marvell MV88E6xxx switch series has been produced and sold
 14   by Marvell since at least 2008. The switch h     14   by Marvell since at least 2008. The switch has a few compatibles which
 15   just indicate the base address of the switch     15   just indicate the base address of the switch, then operating systems
 16   can investigate switch ID registers to find      16   can investigate switch ID registers to find out which actual version
 17   of the switch it is dealing with.                17   of the switch it is dealing with.
 18                                                    18 
 19 properties:                                        19 properties:
 20   compatible:                                      20   compatible:
 21     oneOf:                                         21     oneOf:
 22       - enum:                                      22       - enum:
 23           - marvell,mv88e6085                      23           - marvell,mv88e6085
 24           - marvell,mv88e6190                      24           - marvell,mv88e6190
 25           - marvell,mv88e6250                      25           - marvell,mv88e6250
 26         description: |                             26         description: |
 27           marvell,mv88e6085: This switch uses      27           marvell,mv88e6085: This switch uses base address 0x10.
 28             This switch and its siblings will      28             This switch and its siblings will be autodetected from
 29             ID registers found in the switch,      29             ID registers found in the switch, so only "marvell,mv88e6085" should be
 30             specified. This includes the follo     30             specified. This includes the following list of MV88Exxxx switches:
 31             6085, 6095, 6097, 6123, 6131, 6141     31             6085, 6095, 6097, 6123, 6131, 6141, 6161, 6165, 6171, 6172, 6175, 6176,
 32             6185, 6240, 6320, 6321, 6341, 6350     32             6185, 6240, 6320, 6321, 6341, 6350, 6351, 6352
 33           marvell,mv88e6190: This switch uses      33           marvell,mv88e6190: This switch uses base address 0x00.
 34             This switch and its siblings will      34             This switch and its siblings will be autodetected from
 35             ID registers found in the switch,      35             ID registers found in the switch, so only "marvell,mv88e6190" should be
 36             specified. This includes the follo     36             specified. This includes the following list of MV88Exxxx switches:
 37             6190, 6190X, 6191, 6290, 6361, 639     37             6190, 6190X, 6191, 6290, 6361, 6390, 6390X
 38           marvell,mv88e6250: This switch uses      38           marvell,mv88e6250: This switch uses base address 0x08 or 0x18.
 39             This switch and its siblings will      39             This switch and its siblings will be autodetected from
 40             ID registers found in the switch,      40             ID registers found in the switch, so only "marvell,mv88e6250" should be
 41             specified. This includes the follo     41             specified. This includes the following list of MV88Exxxx switches:
 42             6220, 6250                             42             6220, 6250
 43       - items:                                     43       - items:
 44           - const: marvell,turris-mox-mv88e608     44           - const: marvell,turris-mox-mv88e6085
 45           - const: marvell,mv88e6085               45           - const: marvell,mv88e6085
 46       - items:                                     46       - items:
 47           - const: marvell,turris-mox-mv88e619     47           - const: marvell,turris-mox-mv88e6190
 48           - const: marvell,mv88e6190               48           - const: marvell,mv88e6190
 49                                                    49 
 50   reg:                                             50   reg:
 51     maxItems: 1                                    51     maxItems: 1
 52                                                    52 
 53   eeprom-length:                                   53   eeprom-length:
 54     $ref: /schemas/types.yaml#/definitions/uin     54     $ref: /schemas/types.yaml#/definitions/uint32
 55     description: Set to the length of an EEPRO     55     description: Set to the length of an EEPROM connected to the switch. Must be
 56       set if the switch can not detect the pre     56       set if the switch can not detect the presence and/or size of a connected
 57       EEPROM, otherwise optional.                  57       EEPROM, otherwise optional.
 58                                                    58 
 59   reset-gpios:                                     59   reset-gpios:
 60     description:                                   60     description:
 61       GPIO to be used to reset the whole devic     61       GPIO to be used to reset the whole device
 62     maxItems: 1                                    62     maxItems: 1
 63                                                    63 
 64   interrupts:                                      64   interrupts:
 65     description: The switch provides an extern     65     description: The switch provides an external interrupt line, but it is
 66       not always used by target systems.           66       not always used by target systems.
 67     maxItems: 1                                    67     maxItems: 1
 68                                                    68 
 69   interrupt-controller:                            69   interrupt-controller:
 70     description: The switch has an internal in     70     description: The switch has an internal interrupt controller used by
 71       the different sub-blocks.                    71       the different sub-blocks.
 72                                                    72 
 73   '#interrupt-cells':                              73   '#interrupt-cells':
 74     description: The internal interrupt contro     74     description: The internal interrupt controller only supports triggering
 75       on active high level interrupts so the s     75       on active high level interrupts so the second cell must alway be set to
 76       IRQ_TYPE_LEVEL_HIGH.                         76       IRQ_TYPE_LEVEL_HIGH.
 77     const: 2                                       77     const: 2
 78                                                    78 
 79   mdio:                                            79   mdio:
 80     $ref: /schemas/net/mdio.yaml#                  80     $ref: /schemas/net/mdio.yaml#
 81     unevaluatedProperties: false                   81     unevaluatedProperties: false
 82     description: Marvell MV88E6xxx switches ha     82     description: Marvell MV88E6xxx switches have an varying combination of
 83       internal and external MDIO buses, in som     83       internal and external MDIO buses, in some cases a combined bus that
 84       can be used both internally and external     84       can be used both internally and externally. This node is for the
 85       primary bus, used internally and sometim     85       primary bus, used internally and sometimes also externally.
 86                                                    86 
 87   mdio-external:                                   87   mdio-external:
 88     $ref: /schemas/net/mdio.yaml#                  88     $ref: /schemas/net/mdio.yaml#
 89     unevaluatedProperties: false                   89     unevaluatedProperties: false
 90     description: Marvell MV88E6xxx switches th     90     description: Marvell MV88E6xxx switches that have a separate external
 91       MDIO bus use this port to access externa     91       MDIO bus use this port to access external components on the MDIO bus.
 92                                                    92 
 93     properties:                                    93     properties:
 94       compatible:                                  94       compatible:
 95         const: marvell,mv88e6xxx-mdio-external     95         const: marvell,mv88e6xxx-mdio-external
 96                                                    96 
 97     required:                                      97     required:
 98       - compatible                                 98       - compatible
 99                                                    99 
100 allOf:                                            100 allOf:
101   - $ref: dsa.yaml#/$defs/ethernet-ports          101   - $ref: dsa.yaml#/$defs/ethernet-ports
102                                                   102 
103 required:                                         103 required:
104   - compatible                                    104   - compatible
105   - reg                                           105   - reg
106                                                   106 
107 unevaluatedProperties: false                      107 unevaluatedProperties: false
108                                                   108 
109 examples:                                         109 examples:
110   - |                                             110   - |
111     #include <dt-bindings/gpio/gpio.h>            111     #include <dt-bindings/gpio/gpio.h>
112     mdio {                                        112     mdio {
113         #address-cells = <1>;                     113         #address-cells = <1>;
114         #size-cells = <0>;                        114         #size-cells = <0>;
115                                                   115 
116         ethernet-switch@0 {                       116         ethernet-switch@0 {
117             compatible = "marvell,mv88e6085";     117             compatible = "marvell,mv88e6085";
118             reg = <0>;                            118             reg = <0>;
119             reset-gpios = <&gpio5 1 GPIO_ACTIV    119             reset-gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
120                                                   120 
121             mdio {                                121             mdio {
122                 #address-cells = <1>;             122                 #address-cells = <1>;
123                 #size-cells = <0>;                123                 #size-cells = <0>;
124                                                   124 
125                 sw_phy0: ethernet-phy@0 {         125                 sw_phy0: ethernet-phy@0 {
126                     reg = <0x0>;                  126                     reg = <0x0>;
127                 };                                127                 };
128                                                   128 
129                 sw_phy1: ethernet-phy@1 {         129                 sw_phy1: ethernet-phy@1 {
130                     reg = <0x1>;                  130                     reg = <0x1>;
131                 };                                131                 };
132                                                   132 
133                 sw_phy2: ethernet-phy@2 {         133                 sw_phy2: ethernet-phy@2 {
134                     reg = <0x2>;                  134                     reg = <0x2>;
135                 };                                135                 };
136                                                   136 
137                 sw_phy3: ethernet-phy@3 {         137                 sw_phy3: ethernet-phy@3 {
138                     reg = <0x3>;                  138                     reg = <0x3>;
139                 };                                139                 };
140             };                                    140             };
141                                                   141 
142             ethernet-ports {                      142             ethernet-ports {
143                 #address-cells = <1>;             143                 #address-cells = <1>;
144                 #size-cells = <0>;                144                 #size-cells = <0>;
145                                                   145 
146                 ethernet-port@0 {                 146                 ethernet-port@0 {
147                     reg = <0>;                    147                     reg = <0>;
148                     label = "lan4";               148                     label = "lan4";
149                     phy-handle = <&sw_phy0>;      149                     phy-handle = <&sw_phy0>;
150                     phy-mode = "internal";        150                     phy-mode = "internal";
151                 };                                151                 };
152                                                   152 
153                 ethernet-port@1 {                 153                 ethernet-port@1 {
154                     reg = <1>;                    154                     reg = <1>;
155                     label = "lan3";               155                     label = "lan3";
156                     phy-handle = <&sw_phy1>;      156                     phy-handle = <&sw_phy1>;
157                     phy-mode = "internal";        157                     phy-mode = "internal";
158                 };                                158                 };
159                                                   159 
160                 ethernet-port@2 {                 160                 ethernet-port@2 {
161                     reg = <2>;                    161                     reg = <2>;
162                     label = "lan2";               162                     label = "lan2";
163                     phy-handle = <&sw_phy2>;      163                     phy-handle = <&sw_phy2>;
164                     phy-mode = "internal";        164                     phy-mode = "internal";
165                 };                                165                 };
166                                                   166 
167                 ethernet-port@3 {                 167                 ethernet-port@3 {
168                     reg = <3>;                    168                     reg = <3>;
169                     label = "lan1";               169                     label = "lan1";
170                     phy-handle = <&sw_phy3>;      170                     phy-handle = <&sw_phy3>;
171                     phy-mode = "internal";        171                     phy-mode = "internal";
172                 };                                172                 };
173                                                   173 
174                 ethernet-port@5 {                 174                 ethernet-port@5 {
175                     reg = <5>;                    175                     reg = <5>;
176                     ethernet = <&fec>;            176                     ethernet = <&fec>;
177                     phy-mode = "rgmii-id";        177                     phy-mode = "rgmii-id";
178                                                   178 
179                     fixed-link {                  179                     fixed-link {
180                         speed = <1000>;           180                         speed = <1000>;
181                         full-duplex;              181                         full-duplex;
182                     };                            182                     };
183                 };                                183                 };
184             };                                    184             };
185         };                                        185         };
186     };                                            186     };
187   - |                                             187   - |
188     #include <dt-bindings/interrupt-controller    188     #include <dt-bindings/interrupt-controller/irq.h>
189     mdio {                                        189     mdio {
190         #address-cells = <1>;                     190         #address-cells = <1>;
191         #size-cells = <0>;                        191         #size-cells = <0>;
192                                                   192 
193         ethernet-switch@0 {                       193         ethernet-switch@0 {
194             compatible = "marvell,mv88e6190";     194             compatible = "marvell,mv88e6190";
195             #interrupt-cells = <2>;               195             #interrupt-cells = <2>;
196             interrupt-controller;                 196             interrupt-controller;
197             interrupt-parent = <&gpio1>;          197             interrupt-parent = <&gpio1>;
198             interrupts = <7 IRQ_TYPE_LEVEL_LOW    198             interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
199             pinctrl-0 = <&switch_interrupt_pin    199             pinctrl-0 = <&switch_interrupt_pins>;
200             pinctrl-names = "default";            200             pinctrl-names = "default";
201             reg = <0>;                            201             reg = <0>;
202                                                   202 
203             mdio {                                203             mdio {
204                 #address-cells = <1>;             204                 #address-cells = <1>;
205                 #size-cells = <0>;                205                 #size-cells = <0>;
206                                                   206 
207                 switch0phy1: ethernet-phy@1 {     207                 switch0phy1: ethernet-phy@1 {
208                     reg = <0x1>;                  208                     reg = <0x1>;
209                 };                                209                 };
210                                                   210 
211                 switch0phy2: ethernet-phy@2 {     211                 switch0phy2: ethernet-phy@2 {
212                     reg = <0x2>;                  212                     reg = <0x2>;
213                 };                                213                 };
214                                                   214 
215                 switch0phy3: ethernet-phy@3 {     215                 switch0phy3: ethernet-phy@3 {
216                     reg = <0x3>;                  216                     reg = <0x3>;
217                 };                                217                 };
218                                                   218 
219                 switch0phy4: ethernet-phy@4 {     219                 switch0phy4: ethernet-phy@4 {
220                     reg = <0x4>;                  220                     reg = <0x4>;
221                 };                                221                 };
222                                                   222 
223                 switch0phy5: ethernet-phy@5 {     223                 switch0phy5: ethernet-phy@5 {
224                     reg = <0x5>;                  224                     reg = <0x5>;
225                 };                                225                 };
226                                                   226 
227                 switch0phy6: ethernet-phy@6 {     227                 switch0phy6: ethernet-phy@6 {
228                     reg = <0x6>;                  228                     reg = <0x6>;
229                 };                                229                 };
230                                                   230 
231                 switch0phy7: ethernet-phy@7 {     231                 switch0phy7: ethernet-phy@7 {
232                     reg = <0x7>;                  232                     reg = <0x7>;
233                 };                                233                 };
234                                                   234 
235                 switch0phy8: ethernet-phy@8 {     235                 switch0phy8: ethernet-phy@8 {
236                     reg = <0x8>;                  236                     reg = <0x8>;
237                 };                                237                 };
238             };                                    238             };
239                                                   239 
240             mdio-external {                       240             mdio-external {
241                 compatible = "marvell,mv88e6xx    241                 compatible = "marvell,mv88e6xxx-mdio-external";
242                 #address-cells = <1>;             242                 #address-cells = <1>;
243                 #size-cells = <0>;                243                 #size-cells = <0>;
244                                                   244 
245                 phy1: ethernet-phy@b {            245                 phy1: ethernet-phy@b {
246                     reg = <0xb>;                  246                     reg = <0xb>;
247                     compatible = "ethernet-phy    247                     compatible = "ethernet-phy-ieee802.3-c45";
248                 };                                248                 };
249                                                   249 
250                 phy2: ethernet-phy@c {            250                 phy2: ethernet-phy@c {
251                     reg = <0xc>;                  251                     reg = <0xc>;
252                     compatible = "ethernet-phy    252                     compatible = "ethernet-phy-ieee802.3-c45";
253                 };                                253                 };
254             };                                    254             };
255                                                   255 
256             ethernet-ports {                      256             ethernet-ports {
257                 #address-cells = <1>;             257                 #address-cells = <1>;
258                 #size-cells = <0>;                258                 #size-cells = <0>;
259                                                   259 
260                 ethernet-port@0 {                 260                 ethernet-port@0 {
261                     ethernet = <&eth0>;           261                     ethernet = <&eth0>;
262                     phy-mode = "rgmii";           262                     phy-mode = "rgmii";
263                     reg = <0>;                    263                     reg = <0>;
264                                                   264 
265                     fixed-link {                  265                     fixed-link {
266                         full-duplex;              266                         full-duplex;
267                         pause;                    267                         pause;
268                         speed = <1000>;           268                         speed = <1000>;
269                     };                            269                     };
270                 };                                270                 };
271                                                   271 
272                 ethernet-port@1 {                 272                 ethernet-port@1 {
273                     label = "lan1";               273                     label = "lan1";
274                     phy-handle = <&switch0phy1    274                     phy-handle = <&switch0phy1>;
275                     reg = <1>;                    275                     reg = <1>;
276                 };                                276                 };
277                                                   277 
278                 ethernet-port@2 {                 278                 ethernet-port@2 {
279                     label = "lan2";               279                     label = "lan2";
280                     phy-handle = <&switch0phy2    280                     phy-handle = <&switch0phy2>;
281                     reg = <2>;                    281                     reg = <2>;
282                 };                                282                 };
283                                                   283 
284                 ethernet-port@3 {                 284                 ethernet-port@3 {
285                     label = "lan3";               285                     label = "lan3";
286                     phy-handle = <&switch0phy3    286                     phy-handle = <&switch0phy3>;
287                     reg = <3>;                    287                     reg = <3>;
288                 };                                288                 };
289                                                   289 
290                 ethernet-port@4 {                 290                 ethernet-port@4 {
291                     label = "lan4";               291                     label = "lan4";
292                     phy-handle = <&switch0phy4    292                     phy-handle = <&switch0phy4>;
293                     reg = <4>;                    293                     reg = <4>;
294                 };                                294                 };
295                                                   295 
296                 ethernet-port@5 {                 296                 ethernet-port@5 {
297                     label = "lan5";               297                     label = "lan5";
298                     phy-handle = <&switch0phy5    298                     phy-handle = <&switch0phy5>;
299                     reg = <5>;                    299                     reg = <5>;
300                 };                                300                 };
301                                                   301 
302                 ethernet-port@6 {                 302                 ethernet-port@6 {
303                     label = "lan6";               303                     label = "lan6";
304                     phy-handle = <&switch0phy6    304                     phy-handle = <&switch0phy6>;
305                     reg = <6>;                    305                     reg = <6>;
306                 };                                306                 };
307                                                   307 
308                 ethernet-port@7 {                 308                 ethernet-port@7 {
309                     label = "lan7";               309                     label = "lan7";
310                     phy-handle = <&switch0phy7    310                     phy-handle = <&switch0phy7>;
311                     reg = <7>;                    311                     reg = <7>;
312                 };                                312                 };
313                                                   313 
314                 ethernet-port@8 {                 314                 ethernet-port@8 {
315                     label = "lan8";               315                     label = "lan8";
316                     phy-handle = <&switch0phy8    316                     phy-handle = <&switch0phy8>;
317                     reg = <8>;                    317                     reg = <8>;
318                 };                                318                 };
319                                                   319 
320                 ethernet-port@9 {                 320                 ethernet-port@9 {
321                     /* 88X3310P external phy *    321                     /* 88X3310P external phy */
322                     label = "lan9";               322                     label = "lan9";
323                     phy-handle = <&phy1>;         323                     phy-handle = <&phy1>;
324                     phy-mode = "xaui";            324                     phy-mode = "xaui";
325                     reg = <9>;                    325                     reg = <9>;
326                 };                                326                 };
327                                                   327 
328                 ethernet-port@a {                 328                 ethernet-port@a {
329                     /* 88X3310P external phy *    329                     /* 88X3310P external phy */
330                     label = "lan10";              330                     label = "lan10";
331                     phy-handle = <&phy2>;         331                     phy-handle = <&phy2>;
332                     phy-mode = "xaui";            332                     phy-mode = "xaui";
333                     reg = <0xa>;                  333                     reg = <0xa>;
334                 };                                334                 };
335             };                                    335             };
336         };                                        336         };
337     };                                            337     };
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php