ARV4520PW.dts 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. /dts-v1/;
  2. #include "danube.dtsi"
  3. #include <dt-bindings/input/input.h>
  4. / {
  5. compatible = "arcadyan,arv4520pw", "lantiq,xway", "lantiq,danube";
  6. model = "Easybox 800, WAV-281";
  7. chosen {
  8. bootargs = "console=ttyLTQ0,115200";
  9. };
  10. aliases {
  11. led-boot = &power_blue;
  12. led-failsafe = &power_red;
  13. led-running = &power_blue;
  14. led-dsl = &dsl;
  15. led-internet = &internet_blue;
  16. led-usb = &led_usb;
  17. led-wifi = &wifi;
  18. };
  19. memory@0 {
  20. reg = <0x0 0x2000000>;
  21. };
  22. gpio-keys-polled {
  23. compatible = "gpio-keys-polled";
  24. #address-cells = <1>;
  25. #size-cells = <0>;
  26. poll-interval = <100>;
  27. rfkill {
  28. label = "wps";
  29. gpios = <&gpio 29 GPIO_ACTIVE_LOW>;
  30. linux,code = <KEY_WPS_BUTTON>;
  31. };
  32. reset {
  33. label = "reset";
  34. gpios = <&gpio 30 GPIO_ACTIVE_LOW>;
  35. linux,code = <KEY_RESTART>;
  36. };
  37. };
  38. gpio-leds {
  39. compatible = "gpio-leds";
  40. power_blue: power {
  41. label = "arv4520pw:blue:power";
  42. gpios = <&gpio 3 GPIO_ACTIVE_LOW>;
  43. default-state = "keep";
  44. };
  45. dsl: dsl {
  46. label = "arv4520pw:blue:dsl";
  47. gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
  48. };
  49. internet_blue: internet {
  50. label = "arv4520pw:blue:internet";
  51. gpios = <&gpio 5 GPIO_ACTIVE_LOW>;
  52. };
  53. power_red: power2 {
  54. label = "arv4520pw:red:power";
  55. gpios = <&gpio 6 GPIO_ACTIVE_LOW>;
  56. };
  57. wps {
  58. label = "arv4520pw:yellow:wps";
  59. gpios = <&gpio 7 GPIO_ACTIVE_LOW>;
  60. };
  61. wps2 {
  62. label = "arv4520pw:red:wps";
  63. gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
  64. };
  65. /*
  66. wps green is missing
  67. */
  68. fxs1 {
  69. label = "arv4520pw:blue:telefon1";
  70. gpios = <&gpiomm 0 GPIO_ACTIVE_LOW>;
  71. };
  72. fxs2 {
  73. label = "arv4520pw:blue:telefon2";
  74. gpios = <&gpiomm 1 GPIO_ACTIVE_LOW>;
  75. };
  76. isdn {
  77. label = "arv4520pw:blue:isdn";
  78. gpios = <&gpiomm 2 GPIO_ACTIVE_LOW>;
  79. };
  80. fxo {
  81. label = "arv4520pw:blue:line";
  82. gpios = <&gpiomm 3 GPIO_ACTIVE_LOW>;
  83. };
  84. voice {
  85. label = "arv4520pw:blue:sprache";
  86. gpios = <&gpiomm 4 GPIO_ACTIVE_LOW>;
  87. };
  88. led_usb: usb {
  89. label = "arv4520pw:blue:usb";
  90. gpios = <&gpiomm 5 GPIO_ACTIVE_LOW>;
  91. };
  92. wifi: wifi {
  93. label = "arv4520pw:blue:wifi";
  94. gpios = <&gpiomm 6 GPIO_ACTIVE_LOW>;
  95. };
  96. internet2 {
  97. label = "arv4520pw:red:internet";
  98. gpios = <&gpiomm 9 GPIO_ACTIVE_LOW>;
  99. };
  100. /*
  101. info is missing
  102. */
  103. };
  104. usb_vbus: regulator-usb-vbus {
  105. compatible = "regulator-fixed";
  106. regulator-name = "USB_VBUS";
  107. regulator-min-microvolt = <5000000>;
  108. regulator-max-microvolt = <5000000>;
  109. gpio = <&gpio 28 GPIO_ACTIVE_HIGH>;
  110. enable-active-high;
  111. };
  112. };
  113. &gpio {
  114. pinctrl-names = "default";
  115. pinctrl-0 = <&state_default>;
  116. state_default: pinmux {
  117. ebu {
  118. lantiq,groups = "ebu cs1";
  119. lantiq,function = "ebu";
  120. };
  121. pci_in {
  122. lantiq,groups = "req1";
  123. lantiq,function = "pci";
  124. lantiq,open-drain = <1>;
  125. lantiq,pull = <2>;
  126. lantiq,output = <0>;
  127. };
  128. pci_out {
  129. lantiq,groups = "gnt1";
  130. lantiq,function = "pci";
  131. lantiq,output = <1>;
  132. };
  133. pci_rst {
  134. lantiq,pins = "io21";
  135. lantiq,open-drain = <0>;
  136. lantiq,pull = <0>;
  137. };
  138. };
  139. };
  140. &gpiomm {
  141. status = "okay";
  142. lantiq,shadow = <0x400>;
  143. };
  144. &gsw {
  145. /* gpiomm 10 - switch */
  146. phy-mode = "rmii";
  147. mtd-mac-address = <&boardconfig 0x16>;
  148. };
  149. &localbus {
  150. nor@0 {
  151. compatible = "lantiq,nor";
  152. bank-width = <2>;
  153. reg = <0 0x0 0x800000>;
  154. #address-cells = <1>;
  155. #size-cells = <1>;
  156. partitions {
  157. compatible = "fixed-partitions";
  158. #address-cells = <1>;
  159. #size-cells = <1>;
  160. partition@0 {
  161. label = "uboot";
  162. reg = <0x00000 0x20000>;
  163. read-only;
  164. };
  165. partition@20000 {
  166. label = "uboot_env";
  167. reg = <0x20000 0x10000>;
  168. read-only;
  169. };
  170. partition@30000 {
  171. label = "firmware";
  172. reg = <0x30000 0x3c0000>;
  173. };
  174. boardconfig: partition@7f0000 {
  175. label = "boardconfig";
  176. reg = <0x3f0000 0x10000>;
  177. read-only;
  178. };
  179. };
  180. };
  181. };
  182. &pci0 {
  183. status = "okay";
  184. lantiq,external-clock;
  185. gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
  186. };
  187. &usb_phy {
  188. status = "okay";
  189. phy-supply = <&usb_vbus>;
  190. };
  191. &usb {
  192. status = "okay";
  193. };
  194. &vmmc {
  195. status = "okay";
  196. gpios = <&gpio 31 GPIO_ACTIVE_HIGH
  197. &gpiomm 7 GPIO_ACTIVE_HIGH>;
  198. };