marvell,mvusb.yaml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. # SPDX-License-Identifier: GPL-2.0
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/net/marvell,mvusb.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Marvell USB to MDIO Controller
  7. maintainers:
  8. - Tobias Waldekranz <tobias@waldekranz.com>
  9. description: |+
  10. This controller is mounted on development boards for Marvell's Link Street
  11. family of Ethernet switches. It allows you to configure the switch's registers
  12. using the standard MDIO interface.
  13. Since the device is connected over USB, there is no strict requirement of
  14. having a device tree representation of the device. But in order to use it with
  15. the mv88e6xxx driver, you need a device tree node in which to place the switch
  16. definition.
  17. allOf:
  18. - $ref: mdio.yaml#
  19. properties:
  20. compatible:
  21. const: usb1286,1fa4
  22. reg:
  23. maxItems: 1
  24. description: The USB port number on the host controller
  25. required:
  26. - compatible
  27. - reg
  28. - "#address-cells"
  29. - "#size-cells"
  30. unevaluatedProperties: false
  31. examples:
  32. - |
  33. /* USB host controller */
  34. usb {
  35. #address-cells = <1>;
  36. #size-cells = <0>;
  37. mdio@1 {
  38. compatible = "usb1286,1fa4";
  39. reg = <1>;
  40. #address-cells = <1>;
  41. #size-cells = <0>;
  42. ethernet-switch@0 {
  43. compatible = "marvell,mv88e6190";
  44. reg = <0x0>;
  45. ethernet-ports {
  46. #address-cells = <1>;
  47. #size-cells = <0>;
  48. /* Port definitions */
  49. };
  50. mdio {
  51. /* PHY definitions */
  52. };
  53. };
  54. };
  55. };