mt7629-tplink_eap225-v5.dts 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. // SPDX-License-Identifier: GPL-2.0
  2. /dts-v1/;
  3. #include <dt-bindings/input/input.h>
  4. #include <dt-bindings/leds/common.h>
  5. #include "mt7629.dtsi"
  6. / {
  7. model = "TP-Link EAP225 v5";
  8. compatible = "tplink,eap225-v5", "mediatek,mt7629";
  9. aliases {
  10. led-boot = &led_status_green;
  11. led-failsafe = &led_status_amber;
  12. led-running = &led_status_green;
  13. led-upgrade = &led_status_amber;
  14. serial0 = &uart0;
  15. };
  16. chosen {
  17. stdout-path = "serial0:115200n8";
  18. bootargs-override = "console=ttyS0,115200n8";
  19. };
  20. keys {
  21. compatible = "gpio-keys";
  22. reset {
  23. label = "reset";
  24. gpios = <&pio 21 GPIO_ACTIVE_LOW>;
  25. linux,code = <KEY_RESTART>;
  26. };
  27. };
  28. leds {
  29. compatible = "gpio-leds";
  30. led_status_green: status_green {
  31. function = LED_FUNCTION_STATUS;
  32. color = <LED_COLOR_ID_GREEN>;
  33. gpios = <&pio 55 GPIO_ACTIVE_HIGH>;
  34. default-state = "on";
  35. };
  36. led_status_amber: status_amber {
  37. function = LED_FUNCTION_STATUS;
  38. color = <LED_COLOR_ID_AMBER>;
  39. gpios = <&pio 56 GPIO_ACTIVE_HIGH>;
  40. };
  41. };
  42. };
  43. &eth {
  44. pinctrl-names = "default";
  45. pinctrl-0 = <&eth_pins>;
  46. pinctrl-1 = <&ephy_leds_pins>;
  47. status = "okay";
  48. mac@1 {
  49. compatible = "mediatek,eth-mac";
  50. reg = <1>;
  51. phy-mode = "gmii";
  52. phy-handle = <&phy0>;
  53. nvmem-cells = <&macaddr_factory_8>;
  54. nvmem-cell-names = "mac-address";
  55. };
  56. mdio-bus {
  57. #address-cells = <1>;
  58. #size-cells = <0>;
  59. phy0: ethernet-phy@0 {
  60. reg = <0>;
  61. };
  62. };
  63. };
  64. &qspi {
  65. status = "okay";
  66. pinctrl-names = "default";
  67. pinctrl-0 = <&qspi_pins>;
  68. flash@0 {
  69. compatible = "jedec,spi-nor";
  70. reg = <0>;
  71. partitions {
  72. compatible = "fixed-partitions";
  73. #address-cells = <1>;
  74. #size-cells = <1>;
  75. partition@0 {
  76. label = "Bootloader";
  77. reg = <0x0 0x00080000>;
  78. read-only;
  79. };
  80. partition@80000 {
  81. label = "Partition";
  82. reg = <0x00080000 0x00010000>;
  83. read-only;
  84. };
  85. partition@90000 {
  86. label = "Factory";
  87. reg = <0x00090000 0x00010000>;
  88. read-only;
  89. nvmem-layout {
  90. compatible = "fixed-layout";
  91. #address-cells = <1>;
  92. #size-cells = <1>;
  93. macaddr_factory_8: macaddr@8 {
  94. reg = <0x8 0x6>;
  95. };
  96. };
  97. };
  98. partition@A0000 {
  99. label = "Radio";
  100. reg = <0x000A0000 0x00010000>;
  101. read-only;
  102. };
  103. partition@B0000 {
  104. label = "Extra";
  105. reg = <0x000B0000 0x00010000>;
  106. read-only;
  107. };
  108. /* Vendor layout: kernel (0x000C0000 0x001A0000) - rootfs (0x00260000 0x00BE0000) */
  109. /* OpenWrt flash layout: combine kernel and rootfs from OEM layout */
  110. partition@C0000 {
  111. label = "firmware";
  112. reg = <0x000C0000 0x00D80000>;
  113. };
  114. partition@E40000 {
  115. label = "Config";
  116. reg = <0x00E40000 0x0001B0000>;
  117. read-only;
  118. };
  119. };
  120. };
  121. };
  122. &pio {
  123. eth_pins: eth-pins {
  124. mux {
  125. function = "eth";
  126. groups = "mdc_mdio";
  127. };
  128. };
  129. ephy_leds_pins: ephy-leds-pins {
  130. mux {
  131. function = "led";
  132. groups = "ephy_leds";
  133. };
  134. };
  135. qspi_pins: qspi-pins {
  136. mux {
  137. function = "flash";
  138. groups = "spi_nor";
  139. };
  140. };
  141. uart0_pins: uart0-pins {
  142. mux {
  143. function = "uart";
  144. groups = "uart0_txd_rxd" ;
  145. };
  146. };
  147. watchdog_pins: watchdog-pins {
  148. mux {
  149. function = "watchdog";
  150. groups = "watchdog";
  151. };
  152. };
  153. };
  154. &uart0 {
  155. pinctrl-names = "default";
  156. pinctrl-0 = <&uart0_pins>;
  157. status = "okay";
  158. };
  159. &watchdog {
  160. pinctrl-names = "default";
  161. pinctrl-0 = <&watchdog_pins>;
  162. status = "okay";
  163. };