18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/net/marvell,mvusb.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Marvell USB to MDIO Controller
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Tobias Waldekranz <tobias@waldekranz.com>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_cidescription: |+
138c2ecf20Sopenharmony_ci  This controller is mounted on development boards for Marvell's Link Street
148c2ecf20Sopenharmony_ci  family of Ethernet switches. It allows you to configure the switch's registers
158c2ecf20Sopenharmony_ci  using the standard MDIO interface.
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci  Since the device is connected over USB, there is no strict requirement of
188c2ecf20Sopenharmony_ci  having a device tree representation of the device. But in order to use it with
198c2ecf20Sopenharmony_ci  the mv88e6xxx driver, you need a device tree node in which to place the switch
208c2ecf20Sopenharmony_ci  definition.
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ciallOf:
238c2ecf20Sopenharmony_ci  - $ref: "mdio.yaml#"
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciproperties:
268c2ecf20Sopenharmony_ci  compatible:
278c2ecf20Sopenharmony_ci    const: usb1286,1fa4
288c2ecf20Sopenharmony_ci  reg:
298c2ecf20Sopenharmony_ci    maxItems: 1
308c2ecf20Sopenharmony_ci    description: The USB port number on the host controller
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_cirequired:
338c2ecf20Sopenharmony_ci  - compatible
348c2ecf20Sopenharmony_ci  - reg
358c2ecf20Sopenharmony_ci  - "#address-cells"
368c2ecf20Sopenharmony_ci  - "#size-cells"
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ciunevaluatedProperties: false
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ciexamples:
418c2ecf20Sopenharmony_ci  - |
428c2ecf20Sopenharmony_ci    /* USB host controller */
438c2ecf20Sopenharmony_ci    usb {
448c2ecf20Sopenharmony_ci            #address-cells = <1>;
458c2ecf20Sopenharmony_ci            #size-cells = <0>;
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci            mdio@1 {
488c2ecf20Sopenharmony_ci                    compatible = "usb1286,1fa4";
498c2ecf20Sopenharmony_ci                    reg = <1>;
508c2ecf20Sopenharmony_ci                    #address-cells = <1>;
518c2ecf20Sopenharmony_ci                    #size-cells = <0>;
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci                    switch@0 {
548c2ecf20Sopenharmony_ci                            compatible = "marvell,mv88e6190";
558c2ecf20Sopenharmony_ci                            reg = <0x0>;
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ci                            ports {
588c2ecf20Sopenharmony_ci                                    /* Port definitions */
598c2ecf20Sopenharmony_ci                            };
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ci                            mdio {
628c2ecf20Sopenharmony_ci                                    /* PHY definitions */
638c2ecf20Sopenharmony_ci                            };
648c2ecf20Sopenharmony_ci                    };
658c2ecf20Sopenharmony_ci            };
668c2ecf20Sopenharmony_ci    };
67