739-04-dt-bindings-net-pcs-add-bindings-for-MediaTek-USXGMI.patch 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. From 7d88d79c0f65b27a92754d7547f7af098b3de67b Mon Sep 17 00:00:00 2001
  2. From: Daniel Golle <[email protected]>
  3. Date: Tue, 12 Dec 2023 03:47:31 +0000
  4. Subject: [PATCH 4/5] dt-bindings: net: pcs: add bindings for MediaTek USXGMII
  5. PCS
  6. MediaTek's USXGMII can be found in the MT7988 SoC. We need to access
  7. it in order to configure and monitor the Ethernet SerDes link in
  8. USXGMII, 10GBase-R and 5GBase-R mode. By including a wrapped
  9. legacy 1000Base-X/2500Base-X/Cisco SGMII LynxI PCS as well, those
  10. interface modes are also available.
  11. Signed-off-by: Daniel Golle <[email protected]>
  12. ---
  13. .../bindings/net/pcs/mediatek,usxgmii.yaml | 60 +++++++++++++++++++
  14. 1 file changed, 60 insertions(+)
  15. create mode 100644 Documentation/devicetree/bindings/net/pcs/mediatek,usxgmii.yaml
  16. --- /dev/null
  17. +++ b/Documentation/devicetree/bindings/net/pcs/mediatek,usxgmii.yaml
  18. @@ -0,0 +1,60 @@
  19. +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  20. +%YAML 1.2
  21. +---
  22. +$id: http://devicetree.org/schemas/net/pcs/mediatek,usxgmii.yaml#
  23. +$schema: http://devicetree.org/meta-schemas/core.yaml#
  24. +
  25. +title: MediaTek USXGMII PCS
  26. +
  27. +maintainers:
  28. + - Daniel Golle <[email protected]>
  29. +
  30. +description:
  31. + The MediaTek USXGMII PCS provides physical link control and status
  32. + for USXGMII, 10GBase-R and 5GBase-R links on the SerDes interfaces
  33. + provided by the PEXTP PHY.
  34. + In order to also support legacy 2500Base-X, 1000Base-X and Cisco
  35. + SGMII an existing mediatek,*-sgmiisys LynxI PCS is wrapped to
  36. + provide those interfaces modes on the same SerDes interfaces shared
  37. + with the USXGMII PCS.
  38. +
  39. +properties:
  40. + $nodename:
  41. + pattern: "^pcs@[0-9a-f]+$"
  42. +
  43. + compatible:
  44. + const: mediatek,mt7988-usxgmiisys
  45. +
  46. + reg:
  47. + maxItems: 1
  48. +
  49. + clocks:
  50. + items:
  51. + - description: USXGMII top-level clock
  52. +
  53. + resets:
  54. + items:
  55. + - description: XFI reset
  56. +
  57. +required:
  58. + - compatible
  59. + - reg
  60. + - clocks
  61. + - resets
  62. +
  63. +additionalProperties: false
  64. +
  65. +examples:
  66. + - |
  67. + #include <dt-bindings/clock/mediatek,mt7988-clk.h>
  68. + #define MT7988_TOPRGU_XFI0_GRST 12
  69. + soc {
  70. + #address-cells = <2>;
  71. + #size-cells = <2>;
  72. + usxgmiisys0: pcs@10080000 {
  73. + compatible = "mediatek,mt7988-usxgmiisys";
  74. + reg = <0 0x10080000 0 0x1000>;
  75. + clocks = <&topckgen CLK_TOP_USXGMII_SBUS_0_SEL>;
  76. + resets = <&watchdog MT7988_TOPRGU_XFI0_GRST>;
  77. + };
  78. + };