hirschmann,hellcreek.yaml 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/net/dsa/hirschmann,hellcreek.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Hirschmann Hellcreek TSN Switch
  7. allOf:
  8. - $ref: dsa.yaml#/$defs/ethernet-ports
  9. maintainers:
  10. - Andrew Lunn <andrew@lunn.ch>
  11. - Florian Fainelli <f.fainelli@gmail.com>
  12. - Vladimir Oltean <olteanv@gmail.com>
  13. - Kurt Kanzenbach <kurt@linutronix.de>
  14. description:
  15. The Hellcreek TSN Switch IP is a 802.1Q Ethernet compliant switch. It supports
  16. the Precision Time Protocol, Hardware Timestamping as well the Time Aware
  17. Shaper.
  18. properties:
  19. compatible:
  20. items:
  21. - const: hirschmann,hellcreek-de1soc-r1
  22. reg:
  23. description:
  24. The physical base address and size of TSN and PTP memory base
  25. minItems: 2
  26. maxItems: 2
  27. reg-names:
  28. items:
  29. - const: tsn
  30. - const: ptp
  31. leds:
  32. type: object
  33. properties:
  34. '#address-cells':
  35. const: 1
  36. '#size-cells':
  37. const: 0
  38. patternProperties:
  39. "^led@[01]$":
  40. type: object
  41. description: Hellcreek leds
  42. $ref: /schemas/leds/common.yaml#
  43. properties:
  44. reg:
  45. items:
  46. - enum: [0, 1]
  47. description: Led number
  48. label: true
  49. default-state: true
  50. required:
  51. - reg
  52. additionalProperties: false
  53. additionalProperties: false
  54. required:
  55. - compatible
  56. - reg
  57. - reg-names
  58. - ethernet-ports
  59. - leds
  60. unevaluatedProperties: false
  61. examples:
  62. - |
  63. switch0: switch@ff240000 {
  64. compatible = "hirschmann,hellcreek-de1soc-r1";
  65. reg = <0xff240000 0x1000>,
  66. <0xff250000 0x1000>;
  67. reg-names = "tsn", "ptp";
  68. dsa,member = <0 0>;
  69. ethernet-ports {
  70. #address-cells = <1>;
  71. #size-cells = <0>;
  72. port@0 {
  73. reg = <0>;
  74. ethernet = <&gmac0>;
  75. phy-mode = "mii";
  76. fixed-link {
  77. speed = <100>;
  78. full-duplex;
  79. };
  80. };
  81. port@2 {
  82. reg = <2>;
  83. label = "lan0";
  84. phy-handle = <&phy1>;
  85. };
  86. port@3 {
  87. reg = <3>;
  88. label = "lan1";
  89. phy-handle = <&phy2>;
  90. };
  91. };
  92. leds {
  93. #address-cells = <1>;
  94. #size-cells = <0>;
  95. led@0 {
  96. reg = <0>;
  97. label = "sync_good";
  98. default-state = "on";
  99. };
  100. led@1 {
  101. reg = <1>;
  102. label = "is_gm";
  103. default-state = "off";
  104. };
  105. };
  106. };