ARV4520PW.dts 4.1 KB

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