ARV7519PW.dts 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229
  1. /dts-v1/;
  2. /include/ "danube.dtsi"
  3. / {
  4. model = "ARV7519PW - Astoria Networks";
  5. chosen {
  6. bootargs = "console=ttyLTQ0,115200 init=/etc/preinit";
  7. leds {
  8. boot = &power;
  9. failsafe = &power2;
  10. running = &power;
  11. dsl = &dsl;
  12. internet = &online;
  13. wifi = &wifi;
  14. };
  15. };
  16. memory@0 {
  17. reg = <0x0 0x4000000>;
  18. };
  19. sram@1F000000 {
  20. vmmc@107000 {
  21. status = "okay";
  22. };
  23. };
  24. fpi@10000000 {
  25. localbus@0 {
  26. nor-boot@0 {
  27. compatible = "lantiq,nor";
  28. bank-width = <2>;
  29. reg = <0 0x0 0x2000000>;
  30. #address-cells = <1>;
  31. #size-cells = <1>;
  32. partitions {
  33. compatible = "fixed-partitions";
  34. #address-cells = <1>;
  35. #size-cells = <1>;
  36. partition@0 {
  37. label = "uboot";
  38. reg = <0x00000 0x40000>;
  39. read-only;
  40. };
  41. partition@40000 {
  42. label = "uboot_env";
  43. reg = <0x40000 0x20000>;
  44. };
  45. partition@60000 {
  46. label = "firmware";
  47. reg = <0x60000 0xf80000>;
  48. };
  49. partition@fe0000 {
  50. label = "board_config";
  51. reg = <0xfe0000 0x20000>;
  52. read-only;
  53. };
  54. };
  55. };
  56. mac_addr {
  57. compatible = "lantiq,eth-mac";
  58. reg = <0 0xfe0016 0x6>;
  59. mac-increment = <2>;
  60. };
  61. };
  62. gpio: pinmux@E100B10 {
  63. pinctrl-names = "default";
  64. pinctrl-0 = <&state_default>;
  65. state_default: pinmux {
  66. ebu {
  67. lantiq,groups = "ebu cs1";
  68. lantiq,function = "ebu";
  69. };
  70. pci_in {
  71. lantiq,groups = "req1";
  72. lantiq,function = "pci";
  73. lantiq,open-drain = <1>;
  74. lantiq,pull = <2>;
  75. lantiq,output = <0>;
  76. };
  77. pci_out {
  78. lantiq,groups = "gnt1";
  79. lantiq,function = "pci";
  80. lantiq,pull = <0>;
  81. lantiq,output = <1>;
  82. };
  83. pci_rst {
  84. lantiq,pins = "io21";
  85. lantiq,pull = <2>;
  86. lantiq,output = <1>;
  87. };
  88. switch_rst {
  89. lantiq,pins = "io19";
  90. lantiq,pull = <2>;
  91. lantiq,output = <1>;
  92. };
  93. };
  94. };
  95. etop@E180000 {
  96. phy-mode = "mii";
  97. };
  98. /* warning: passive port
  99. only works with active devices */
  100. ifxhcd@E101000 {
  101. status = "okay";
  102. };
  103. pci@E105400 {
  104. status = "okay";
  105. lantiq,external-clock;
  106. gpio-reset = <&gpio 21 0>;
  107. req-mask = <0xf>;
  108. };
  109. };
  110. ralink_eep {
  111. compatible = "ralink,eeprom";
  112. ralink,eeprom = "RT2860.eeprom";
  113. };
  114. gpio-keys-polled {
  115. compatible = "gpio-keys-polled";
  116. #address-cells = <1>;
  117. #size-cells = <0>;
  118. poll-interval = <100>;
  119. rfkill {
  120. label = "rfkill";
  121. gpios = <&gpio 11 1>;
  122. linux,code = <0xf7>;
  123. };
  124. reset {
  125. label = "reset";
  126. gpios = <&gpio 28 1>;
  127. linux,code = <0x198>;
  128. };
  129. };
  130. gpio-leds {
  131. compatible = "gpio-leds";
  132. power: power {
  133. label = "power";
  134. gpios = <&gpio 2 1>;
  135. default-state = "keep";
  136. };
  137. power2: power2 {
  138. label = "power2";
  139. gpios = <&gpio 14 1>;
  140. };
  141. online: online {
  142. label = "online";
  143. gpios = <&gpio 3 1>;
  144. };
  145. online2 {
  146. label = "online2";
  147. gpios = <&gpio 30 1>;
  148. };
  149. wifi: wifi {
  150. label = "wifi";
  151. gpios = <&gpio 12 1>;
  152. };
  153. wifi2 {
  154. label = "wifi2";
  155. gpios = <&gpio 10 1>;
  156. };
  157. wifi3 {
  158. label = "wifi3";
  159. gpios = <&gpio 6 1>;
  160. };
  161. voice {
  162. label = "voice";
  163. gpios = <&gpio 31 1>;
  164. };
  165. wps {
  166. label = "wps";
  167. gpios = <&gpio 15 1>;
  168. };
  169. wps2 {
  170. label = "wps2";
  171. gpios = <&gpio 7 1>;
  172. };
  173. wps3 {
  174. label = "wps3";
  175. gpios = <&gpio 23 1>;
  176. };
  177. dsl: dsl {
  178. label = "dsl";
  179. gpios = <&gpio 4 1>;
  180. };
  181. lan {
  182. label = "lan";
  183. gpios = <&gpio 1 1>;
  184. };
  185. tv {
  186. label = "tv";
  187. gpios = <&gpio 20 1>;
  188. };
  189. upgrade {
  190. label = "upgrade";
  191. gpios = <&gpio 29 1>;
  192. };
  193. };
  194. /* is there another way to "reserve" the GPIO? */
  195. gpio_export {
  196. compatible = "gpio-export";
  197. #size-cells = <0>;
  198. switch {
  199. gpio-export,name = "switch";
  200. gpio-export,output = <1>;
  201. gpios = <&gpio 19 0>;
  202. };
  203. };
  204. };