ls1021a-tsn.dts 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. // SPDX-License-Identifier: GPL-2.0
  2. /* Copyright 2016-2018 NXP Semiconductors
  3. * Copyright 2019 Vladimir Oltean <[email protected]>
  4. */
  5. /dts-v1/;
  6. #include "ls1021a.dtsi"
  7. / {
  8. model = "NXP LS1021A-TSN Board";
  9. compatible = "fsl,ls1021a-tsn", "fsl,ls1021a";
  10. sys_mclk: clock-mclk {
  11. compatible = "fixed-clock";
  12. #clock-cells = <0>;
  13. clock-frequency = <24576000>;
  14. };
  15. reg_vdda_codec: regulator-3V3 {
  16. compatible = "regulator-fixed";
  17. regulator-name = "3P3V";
  18. regulator-min-microvolt = <3300000>;
  19. regulator-max-microvolt = <3300000>;
  20. regulator-always-on;
  21. };
  22. reg_vddio_codec: regulator-2V5 {
  23. compatible = "regulator-fixed";
  24. regulator-name = "2P5V";
  25. regulator-min-microvolt = <2500000>;
  26. regulator-max-microvolt = <2500000>;
  27. regulator-always-on;
  28. };
  29. };
  30. &dspi0 {
  31. bus-num = <0>;
  32. status = "okay";
  33. /* ADG704BRMZ 1:4 SPI mux/demux */
  34. sja1105: ethernet-switch@1 {
  35. reg = <0x1>;
  36. #address-cells = <1>;
  37. #size-cells = <0>;
  38. compatible = "nxp,sja1105t";
  39. /* 12 MHz */
  40. spi-max-frequency = <12000000>;
  41. /* Sample data on trailing clock edge */
  42. spi-cpha;
  43. /* SPI controller settings for SJA1105 timing requirements */
  44. fsl,spi-cs-sck-delay = <1000>;
  45. fsl,spi-sck-cs-delay = <1000>;
  46. ports {
  47. #address-cells = <1>;
  48. #size-cells = <0>;
  49. port@0 {
  50. /* ETH5 written on chassis */
  51. label = "swp5";
  52. phy-handle = <&rgmii_phy6>;
  53. phy-mode = "rgmii-id";
  54. reg = <0>;
  55. };
  56. port@1 {
  57. /* ETH2 written on chassis */
  58. label = "swp2";
  59. phy-handle = <&rgmii_phy3>;
  60. phy-mode = "rgmii-id";
  61. reg = <1>;
  62. };
  63. port@2 {
  64. /* ETH3 written on chassis */
  65. label = "swp3";
  66. phy-handle = <&rgmii_phy4>;
  67. phy-mode = "rgmii-id";
  68. reg = <2>;
  69. };
  70. port@3 {
  71. /* ETH4 written on chassis */
  72. label = "swp4";
  73. phy-handle = <&rgmii_phy5>;
  74. phy-mode = "rgmii-id";
  75. reg = <3>;
  76. };
  77. port@4 {
  78. /* Internal port connected to eth2 */
  79. ethernet = <&enet2>;
  80. phy-mode = "rgmii";
  81. rx-internal-delay-ps = <0>;
  82. tx-internal-delay-ps = <0>;
  83. reg = <4>;
  84. fixed-link {
  85. speed = <1000>;
  86. full-duplex;
  87. };
  88. };
  89. };
  90. };
  91. };
  92. &enet0 {
  93. tbi-handle = <&tbi0>;
  94. phy-handle = <&sgmii_phy2>;
  95. phy-mode = "sgmii";
  96. status = "okay";
  97. };
  98. &enet1 {
  99. tbi-handle = <&tbi1>;
  100. phy-handle = <&sgmii_phy1>;
  101. phy-mode = "sgmii";
  102. status = "okay";
  103. };
  104. /* RGMII delays added via PCB traces */
  105. &enet2 {
  106. phy-mode = "rgmii";
  107. status = "okay";
  108. fixed-link {
  109. speed = <1000>;
  110. full-duplex;
  111. };
  112. };
  113. &esdhc {
  114. status = "okay";
  115. };
  116. &i2c0 {
  117. status = "okay";
  118. /* 3 axis accelerometer */
  119. accelerometer@1e {
  120. compatible = "fsl,fxls8471";
  121. reg = <0x1e>;
  122. };
  123. /* Audio codec (SAI2) */
  124. audio-codec@2a {
  125. compatible = "fsl,sgtl5000";
  126. VDDIO-supply = <&reg_vddio_codec>;
  127. VDDA-supply = <&reg_vdda_codec>;
  128. #sound-dai-cells = <0>;
  129. clocks = <&sys_mclk>;
  130. reg = <0x2a>;
  131. };
  132. /* Current sensing circuit for 1V VDDCORE PMIC rail */
  133. current-sensor@44 {
  134. compatible = "ti,ina220";
  135. shunt-resistor = <1000>;
  136. reg = <0x44>;
  137. };
  138. /* Current sensing circuit for 12V VCC rail */
  139. current-sensor@45 {
  140. compatible = "ti,ina220";
  141. shunt-resistor = <1000>;
  142. reg = <0x45>;
  143. };
  144. /* Thermal monitor - case */
  145. temperature-sensor@48 {
  146. compatible = "national,lm75";
  147. reg = <0x48>;
  148. };
  149. /* Thermal monitor - chip */
  150. temperature-sensor@4c {
  151. compatible = "ti,tmp451";
  152. reg = <0x4c>;
  153. };
  154. eeprom@51 {
  155. compatible = "atmel,24c32";
  156. reg = <0x51>;
  157. };
  158. /* Unsupported devices:
  159. * - FXAS21002C Gyroscope at 0x20
  160. * - TI ADS7924 4-channel ADC at 0x49
  161. */
  162. };
  163. &ifc {
  164. status = "disabled";
  165. };
  166. &lpuart0 {
  167. status = "okay";
  168. };
  169. &lpuart3 {
  170. status = "okay";
  171. };
  172. &mdio0 {
  173. /* AR8031 */
  174. sgmii_phy1: ethernet-phy@1 {
  175. reg = <0x1>;
  176. /* SGMII1_PHY_INT_B: connected to IRQ2, active low */
  177. interrupts-extended = <&extirq 2 IRQ_TYPE_LEVEL_LOW>;
  178. };
  179. /* AR8031 */
  180. sgmii_phy2: ethernet-phy@2 {
  181. reg = <0x2>;
  182. /* SGMII2_PHY_INT_B: connected to IRQ2, active low */
  183. interrupts-extended = <&extirq 2 IRQ_TYPE_LEVEL_LOW>;
  184. };
  185. /* BCM5464 quad PHY */
  186. rgmii_phy3: ethernet-phy@3 {
  187. reg = <0x3>;
  188. };
  189. rgmii_phy4: ethernet-phy@4 {
  190. reg = <0x4>;
  191. };
  192. rgmii_phy5: ethernet-phy@5 {
  193. reg = <0x5>;
  194. };
  195. rgmii_phy6: ethernet-phy@6 {
  196. reg = <0x6>;
  197. };
  198. /* SGMII PCS for enet0 */
  199. tbi0: tbi-phy@1f {
  200. reg = <0x1f>;
  201. device_type = "tbi-phy";
  202. };
  203. };
  204. &mdio1 {
  205. /* SGMII PCS for enet1 */
  206. tbi1: tbi-phy@1f {
  207. reg = <0x1f>;
  208. device_type = "tbi-phy";
  209. };
  210. };
  211. &qspi {
  212. status = "okay";
  213. flash@0 {
  214. /* Rev. A uses 64MB flash, Rev. B & C use 32MB flash */
  215. compatible = "jedec,spi-nor";
  216. spi-max-frequency = <20000000>;
  217. #address-cells = <1>;
  218. #size-cells = <1>;
  219. reg = <0>;
  220. partitions {
  221. compatible = "fixed-partitions";
  222. #address-cells = <1>;
  223. #size-cells = <1>;
  224. partition@0 {
  225. label = "RCW";
  226. reg = <0x0 0x40000>;
  227. };
  228. partition@40000 {
  229. label = "U-Boot";
  230. reg = <0x40000 0x300000>;
  231. };
  232. partition@340000 {
  233. label = "U-Boot Env";
  234. reg = <0x340000 0x100000>;
  235. };
  236. };
  237. };
  238. };
  239. &sai2 {
  240. status = "okay";
  241. };
  242. &sata {
  243. status = "okay";
  244. };
  245. &uart0 {
  246. status = "okay";
  247. };