qcom,ethqos.yaml 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
  2. %YAML 1.2
  3. ---
  4. $id: http://devicetree.org/schemas/net/qcom,ethqos.yaml#
  5. $schema: http://devicetree.org/meta-schemas/core.yaml#
  6. title: Qualcomm Ethernet ETHQOS device
  7. maintainers:
  8. - Bjorn Andersson <andersson@kernel.org>
  9. - Konrad Dybcio <konradybcio@kernel.org>
  10. description:
  11. dwmmac based Qualcomm ethernet devices which support Gigabit
  12. ethernet (version v2.3.0 and onwards).
  13. allOf:
  14. - $ref: snps,dwmac.yaml#
  15. properties:
  16. compatible:
  17. oneOf:
  18. - items:
  19. - enum:
  20. - qcom,qcs615-ethqos
  21. - const: qcom,qcs404-ethqos
  22. - items:
  23. - enum:
  24. - qcom,qcs8300-ethqos
  25. - const: qcom,sa8775p-ethqos
  26. - enum:
  27. - qcom,qcs404-ethqos
  28. - qcom,sa8775p-ethqos
  29. - qcom,sc8280xp-ethqos
  30. - qcom,sm8150-ethqos
  31. reg:
  32. maxItems: 2
  33. reg-names:
  34. items:
  35. - const: stmmaceth
  36. - const: rgmii
  37. interrupts:
  38. minItems: 1
  39. items:
  40. - description: Combined signal for various interrupt events
  41. - description: The interrupt that occurs when Rx exits the LPI state
  42. - description: The interrupt that occurs when HW safety error triggered
  43. interrupt-names:
  44. minItems: 1
  45. items:
  46. - const: macirq
  47. - enum: [eth_lpi, sfty]
  48. - const: sfty
  49. clocks:
  50. maxItems: 4
  51. clock-names:
  52. items:
  53. - const: stmmaceth
  54. - const: pclk
  55. - const: ptp_ref
  56. - enum:
  57. - rgmii
  58. - phyaux
  59. iommus:
  60. maxItems: 1
  61. dma-coherent: true
  62. interconnects:
  63. maxItems: 2
  64. interconnect-names:
  65. items:
  66. - const: cpu-mac
  67. - const: mac-mem
  68. phys: true
  69. phy-names:
  70. const: serdes
  71. required:
  72. - compatible
  73. - clocks
  74. - clock-names
  75. - reg-names
  76. unevaluatedProperties: false
  77. examples:
  78. - |
  79. #include <dt-bindings/interrupt-controller/arm-gic.h>
  80. #include <dt-bindings/clock/qcom,gcc-qcs404.h>
  81. #include <dt-bindings/gpio/gpio.h>
  82. ethernet: ethernet@7a80000 {
  83. compatible = "qcom,qcs404-ethqos";
  84. reg = <0x07a80000 0x10000>,
  85. <0x07a96000 0x100>;
  86. reg-names = "stmmaceth", "rgmii";
  87. clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii";
  88. clocks = <&gcc GCC_ETH_AXI_CLK>,
  89. <&gcc GCC_ETH_SLAVE_AHB_CLK>,
  90. <&gcc GCC_ETH_PTP_CLK>,
  91. <&gcc GCC_ETH_RGMII_CLK>;
  92. interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
  93. <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
  94. <GIC_SPI 782 IRQ_TYPE_LEVEL_HIGH>;
  95. interrupt-names = "macirq", "eth_lpi", "sfty";
  96. rx-fifo-depth = <4096>;
  97. tx-fifo-depth = <4096>;
  98. snps,tso;
  99. snps,reset-gpio = <&tlmm 60 GPIO_ACTIVE_LOW>;
  100. snps,reset-active-low;
  101. snps,reset-delays-us = <0 10000 10000>;
  102. pinctrl-names = "default";
  103. pinctrl-0 = <&ethernet_defaults>;
  104. phy-handle = <&phy1>;
  105. phy-mode = "rgmii";
  106. mdio {
  107. #address-cells = <0x1>;
  108. #size-cells = <0x0>;
  109. compatible = "snps,dwmac-mdio";
  110. phy1: phy@4 {
  111. compatible = "ethernet-phy-ieee802.3-c22";
  112. device_type = "ethernet-phy";
  113. reg = <0x4>;
  114. #phy-cells = <0>;
  115. };
  116. };
  117. };