160-ea4500.patch 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169
  1. --- a/arch/arm/boot/dts/Makefile
  2. +++ b/arch/arm/boot/dts/Makefile
  3. @@ -90,6 +90,7 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-
  4. kirkwood-dns325.dtb \
  5. kirkwood-dockstar.dtb \
  6. kirkwood-dreamplug.dtb \
  7. + kirkwood-ea4500.dtb \
  8. kirkwood-goflexnet.dtb \
  9. kirkwood-guruplug-server-plus.dtb \
  10. kirkwood-ib62x0.dtb \
  11. --- /dev/null
  12. +++ b/arch/arm/boot/dts/kirkwood-ea4500.dts
  13. @@ -0,0 +1,156 @@
  14. +/*
  15. + * kirkwood-ea4500.dts - Device Tree file for Linksys EA4500
  16. + *
  17. + * (c) 2013 Jonas Gorski <[email protected]>
  18. + * (c) 2013 Deutsche Telekom Innovation Laboratories
  19. + * (c) 2014 Luka Perkov <[email protected]>
  20. + *
  21. + * This file is licensed under the terms of the GNU General Public
  22. + * License version 2. This program is licensed "as is" without any
  23. + * warranty of any kind, whether express or implied.
  24. + */
  25. +
  26. +/dts-v1/;
  27. +
  28. +#include "kirkwood.dtsi"
  29. +#include "kirkwood-6282.dtsi"
  30. +
  31. +/ {
  32. + model = "Linksys EA4500";
  33. + compatible = "linksys,ea4500", "marvell,kirkwood-88f6282", "marvell,kirkwood";
  34. +
  35. + memory {
  36. + device_type = "memory";
  37. + reg = <0x00000000 0x8000000>;
  38. + };
  39. +
  40. + chosen {
  41. + bootargs = "console=ttyS0,115200n8 earlyprintk";
  42. + };
  43. +
  44. + mbus {
  45. + pcie-controller {
  46. + status = "okay";
  47. +
  48. + pcie@1,0 {
  49. + status = "okay";
  50. + };
  51. +
  52. + pcie@2,0 {
  53. + status = "okay";
  54. + };
  55. + };
  56. + };
  57. +
  58. + ocp@f1000000 {
  59. + pinctrl: pinctrl@10000 {
  60. + pmx_led_white_health: pmx-led-white-health {
  61. + marvell,pins = "mpp7";
  62. + marvell,function = "gpo";
  63. + };
  64. + pmx_led_white_pulse: pmx-led-white-pulse {
  65. + marvell,pins = "mpp14";
  66. + marvell,function = "gpio";
  67. + };
  68. + pmx_btn_wps: pmx-btn-wps {
  69. + marvell,pins = "mpp47";
  70. + marvell,function = "gpio";
  71. + };
  72. + pmx_btn_reset: pmx-btn-reset {
  73. + marvell,pins = "mpp48";
  74. + marvell,function = "gpio";
  75. + };
  76. + };
  77. +
  78. + rtc@10300 {
  79. + status = "disabled";
  80. + };
  81. +
  82. + serial@12000 {
  83. + status = "okay";
  84. + };
  85. +
  86. + };
  87. +
  88. + gpio_keys {
  89. + compatible = "gpio-keys";
  90. + #address-cells = <1>;
  91. + #size-cells = <0>;
  92. + pinctrl-0 = < &pmx_btn_wps &pmx_btn_reset >;
  93. + pinctrl-names = "default";
  94. +
  95. + button@15 {
  96. + label = "WPS Button";
  97. + linux,code = <KEY_WPS_BUTTON>;
  98. + gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
  99. + };
  100. +
  101. + button@16 {
  102. + label = "Reset Button";
  103. + linux,code = <KEY_RESTART>;
  104. + gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
  105. + };
  106. + };
  107. +
  108. + gpio-leds {
  109. + compatible = "gpio-leds";
  110. + pinctrl-0 = < &pmx_led_white_health &pmx_led_white_pulse >;
  111. + pinctrl-names = "default";
  112. +
  113. + white-health {
  114. + label = "ea4500:white:health";
  115. + gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>;
  116. + };
  117. +
  118. + white-pulse {
  119. + label = "ea4500:white:pulse";
  120. + gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
  121. + };
  122. + };
  123. +};
  124. +
  125. +&nand {
  126. + status = "okay";
  127. + pinctrl-0 = <&pmx_nand>;
  128. + pinctrl-names = "default";
  129. +
  130. + partition@0 {
  131. + label = "u-boot";
  132. + reg = <0x0000000 0x80000>;
  133. + };
  134. +
  135. + partition@80000 {
  136. + label = "u-boot environment";
  137. + reg = <0x80000 0x20000>;
  138. + };
  139. +
  140. + partition@200000 {
  141. + label = "kernel";
  142. + reg = <0x200000 0x200000>;
  143. + };
  144. +
  145. + partition@400000 {
  146. + label = "root";
  147. + reg = <0x400000 0x1c00000>;
  148. + };
  149. +};
  150. +
  151. +&mdio {
  152. + status = "okay";
  153. +};
  154. +
  155. +&eth0 {
  156. + status = "okay";
  157. + ethernet0-port@0 {
  158. + speed = <1000>;
  159. + duplex = <1>;
  160. + };
  161. +};
  162. +
  163. +&eth1 {
  164. + status = "okay";
  165. + ethernet1-port@0 {
  166. + speed = <1000>;
  167. + duplex = <1>;
  168. + };
  169. +};