708-ARM-dts-qcom-add-gmac-nodes-to-ipq806x-platforms.patch 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. From cab1f4720e82f2e17eaeed9a9ad9e4f07c742977 Mon Sep 17 00:00:00 2001
  2. From: Mathieu Olivari <mathieu@codeaurora.org>
  3. Date: Mon, 11 May 2015 12:29:18 -0700
  4. Subject: [PATCH 8/8] ARM: dts: qcom: add gmac nodes to ipq806x platforms
  5. Signed-off-by: Mathieu Olivari <mathieu@codeaurora.org>
  6. ---
  7. arch/arm/boot/dts/qcom-ipq8064-ap148.dts | 31 ++++++++++++
  8. arch/arm/boot/dts/qcom-ipq8064-db149.dts | 43 ++++++++++++++++
  9. arch/arm/boot/dts/qcom-ipq8064.dtsi | 86 ++++++++++++++++++++++++++++++++
  10. 3 files changed, 160 insertions(+)
  11. --- a/arch/arm/boot/dts/qcom-ipq8064-ap148.dts
  12. +++ b/arch/arm/boot/dts/qcom-ipq8064-ap148.dts
  13. @@ -78,6 +78,16 @@
  14. bias-disable;
  15. };
  16. };
  17. +
  18. + rgmii2_pins: rgmii2_pins {
  19. + mux {
  20. + pins = "gpio27", "gpio28", "gpio29", "gpio30", "gpio31", "gpio32",
  21. + "gpio51", "gpio52", "gpio59", "gpio60", "gpio61", "gpio62" ;
  22. + function = "rgmii2";
  23. + drive-strength = <8>;
  24. + bias-disable;
  25. + };
  26. + };
  27. };
  28. gsbi@16300000 {
  29. @@ -200,6 +210,31 @@
  30. reg = <4>;
  31. };
  32. };
  33. +
  34. + gmac1: ethernet@37200000 {
  35. + status = "ok";
  36. + phy-mode = "rgmii";
  37. + qcom,id = <1>;
  38. +
  39. + pinctrl-0 = <&rgmii2_pins>;
  40. + pinctrl-names = "default";
  41. +
  42. + fixed-link {
  43. + speed = <1000>;
  44. + full-duplex;
  45. + };
  46. + };
  47. +
  48. + gmac2: ethernet@37400000 {
  49. + status = "ok";
  50. + phy-mode = "sgmii";
  51. + qcom,id = <2>;
  52. +
  53. + fixed-link {
  54. + speed = <1000>;
  55. + full-duplex;
  56. + };
  57. + };
  58. };
  59. };
  60. --- a/arch/arm/boot/dts/qcom-ipq8064-db149.dts
  61. +++ b/arch/arm/boot/dts/qcom-ipq8064-db149.dts
  62. @@ -48,6 +48,14 @@
  63. bias-disable;
  64. };
  65. };
  66. +
  67. + rgmii0_pins: rgmii0_pins {
  68. + mux {
  69. + pins = "gpio2", "gpio66";
  70. + drive-strength = <8>;
  71. + bias-disable;
  72. + };
  73. + };
  74. };
  75. gsbi2: gsbi@12480000 {
  76. @@ -189,5 +197,40 @@
  77. reg = <7>;
  78. };
  79. };
  80. +
  81. + gmac0: ethernet@37000000 {
  82. + status = "ok";
  83. + phy-mode = "rgmii";
  84. + qcom,id = <0>;
  85. + phy-handle = <&phy4>;
  86. +
  87. + pinctrl-0 = <&rgmii0_pins>;
  88. + pinctrl-names = "default";
  89. + };
  90. +
  91. + gmac1: ethernet@37200000 {
  92. + status = "ok";
  93. + phy-mode = "sgmii";
  94. + qcom,id = <1>;
  95. +
  96. + fixed-link {
  97. + speed = <1000>;
  98. + full-duplex;
  99. + };
  100. + };
  101. +
  102. + gmac2: ethernet@37400000 {
  103. + status = "ok";
  104. + phy-mode = "sgmii";
  105. + qcom,id = <2>;
  106. + phy-handle = <&phy6>;
  107. + };
  108. +
  109. + gmac3: ethernet@37600000 {
  110. + status = "ok";
  111. + phy-mode = "sgmii";
  112. + qcom,id = <3>;
  113. + phy-handle = <&phy7>;
  114. + };
  115. };
  116. };
  117. --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
  118. +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
  119. @@ -741,6 +741,92 @@
  120. status = "disabled";
  121. };
  122. + nss_common: syscon@03000000 {
  123. + compatible = "syscon";
  124. + reg = <0x03000000 0x0000FFFF>;
  125. + };
  126. +
  127. + qsgmii_csr: syscon@1bb00000 {
  128. + compatible = "syscon";
  129. + reg = <0x1bb00000 0x000001FF>;
  130. + };
  131. +
  132. + gmac0: ethernet@37000000 {
  133. + device_type = "network";
  134. + compatible = "qcom,ipq806x-gmac";
  135. + reg = <0x37000000 0x200000>;
  136. + interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
  137. + interrupt-names = "macirq";
  138. +
  139. + qcom,nss-common = <&nss_common>;
  140. + qcom,qsgmii-csr = <&qsgmii_csr>;
  141. +
  142. + clocks = <&gcc GMAC_CORE1_CLK>;
  143. + clock-names = "stmmaceth";
  144. +
  145. + resets = <&gcc GMAC_CORE1_RESET>;
  146. + reset-names = "stmmaceth";
  147. +
  148. + status = "disabled";
  149. + };
  150. +
  151. + gmac1: ethernet@37200000 {
  152. + device_type = "network";
  153. + compatible = "qcom,ipq806x-gmac";
  154. + reg = <0x37200000 0x200000>;
  155. + interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
  156. + interrupt-names = "macirq";
  157. +
  158. + qcom,nss-common = <&nss_common>;
  159. + qcom,qsgmii-csr = <&qsgmii_csr>;
  160. +
  161. + clocks = <&gcc GMAC_CORE2_CLK>;
  162. + clock-names = "stmmaceth";
  163. +
  164. + resets = <&gcc GMAC_CORE2_RESET>;
  165. + reset-names = "stmmaceth";
  166. +
  167. + status = "disabled";
  168. + };
  169. +
  170. + gmac2: ethernet@37400000 {
  171. + device_type = "network";
  172. + compatible = "qcom,ipq806x-gmac";
  173. + reg = <0x37400000 0x200000>;
  174. + interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>;
  175. + interrupt-names = "macirq";
  176. +
  177. + qcom,nss-common = <&nss_common>;
  178. + qcom,qsgmii-csr = <&qsgmii_csr>;
  179. +
  180. + clocks = <&gcc GMAC_CORE3_CLK>;
  181. + clock-names = "stmmaceth";
  182. +
  183. + resets = <&gcc GMAC_CORE3_RESET>;
  184. + reset-names = "stmmaceth";
  185. +
  186. + status = "disabled";
  187. + };
  188. +
  189. + gmac3: ethernet@37600000 {
  190. + device_type = "network";
  191. + compatible = "qcom,ipq806x-gmac";
  192. + reg = <0x37600000 0x200000>;
  193. + interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
  194. + interrupt-names = "macirq";
  195. +
  196. + qcom,nss-common = <&nss_common>;
  197. + qcom,qsgmii-csr = <&qsgmii_csr>;
  198. +
  199. + clocks = <&gcc GMAC_CORE4_CLK>;
  200. + clock-names = "stmmaceth";
  201. +
  202. + resets = <&gcc GMAC_CORE4_RESET>;
  203. + reset-names = "stmmaceth";
  204. +
  205. + status = "disabled";
  206. + };
  207. +
  208. };
  209. sfpb_mutex: sfpb-mutex {