VGV7519.dtsi 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312
  1. #include "vr9.dtsi"
  2. #include <dt-bindings/input/input.h>
  3. #include <dt-bindings/mips/lantiq_rcu_gphy.h>
  4. / {
  5. compatible = "arcadyan,vgv7519", "lantiq,xway", "lantiq,vr9";
  6. chosen {
  7. bootargs = "console=ttyLTQ0,115200 mem=62M vpe1_load_addr=0x83e00000 vpe1_mem=2M maxvpes=1 maxtcs=1 nosmp";
  8. };
  9. aliases {
  10. led-boot = &power_green;
  11. led-failsafe = &power_red;
  12. led-running = &power_green;
  13. led-dsl = &broadband_green;
  14. led-internet = &internet_green;
  15. led-wifi = &wireless_green;
  16. };
  17. memory@0 {
  18. reg = <0x0 0x4000000>;
  19. };
  20. gpio-keys-polled {
  21. compatible = "gpio-keys-polled";
  22. #address-cells = <1>;
  23. #size-cells = <0>;
  24. poll-interval = <100>;
  25. reset {
  26. label = "reset";
  27. gpios = <&gpio 9 GPIO_ACTIVE_LOW>;
  28. linux,code = <KEY_RESTART>;
  29. };
  30. eco {
  31. label = "eco";
  32. gpios = <&gpio 41 GPIO_ACTIVE_LOW>;
  33. linux,code = <BTN_0>;
  34. };
  35. rfkill {
  36. label = "rfkill";
  37. gpios = <&gpio 45 GPIO_ACTIVE_LOW>;
  38. linux,code = <KEY_RFKILL>;
  39. };
  40. wps {
  41. label = "wps";
  42. gpios = <&gpio 10 GPIO_ACTIVE_LOW>;
  43. linux,code = <KEY_WPS_BUTTON>;
  44. };
  45. };
  46. gpio-leds {
  47. compatible = "gpio-leds";
  48. eco {
  49. label = "vgv7519:blue:eco";
  50. gpios = <&stp 2 GPIO_ACTIVE_LOW>;
  51. };
  52. wps_red {
  53. label = "vgv7519:red:wps";
  54. gpios = <&stp 3 GPIO_ACTIVE_LOW>;
  55. };
  56. wps_green {
  57. label = "vgv7519:green:wps";
  58. gpios = <&stp 4 GPIO_ACTIVE_LOW>;
  59. };
  60. upgrade {
  61. label = "vgv7519:blue:upgrade";
  62. gpios = <&stp 5 GPIO_ACTIVE_LOW>;
  63. };
  64. tv {
  65. label = "vgv7519:green:tv";
  66. gpios = <&stp 6 GPIO_ACTIVE_LOW>;
  67. };
  68. internet_green: internet_green {
  69. label = "vgv7519:green:internet";
  70. gpios = <&stp 7 GPIO_ACTIVE_LOW>;
  71. };
  72. internet_red {
  73. label = "vgv7519:red:internet";
  74. gpios = <&stp 8 GPIO_ACTIVE_LOW>;
  75. };
  76. broadband_red {
  77. label = "vgv7519:red:broadband";
  78. gpios = <&stp 9 GPIO_ACTIVE_LOW>;
  79. };
  80. broadband_green: broadband_green {
  81. label = "vgv7519:green:broadband";
  82. gpios = <&stp 10 GPIO_ACTIVE_LOW>;
  83. };
  84. voice {
  85. label = "vgv7519:green:voice";
  86. gpios = <&stp 11 GPIO_ACTIVE_LOW>;
  87. };
  88. wireless_red {
  89. label = "vgv7519:red:wireless";
  90. gpios = <&stp 12 GPIO_ACTIVE_LOW>;
  91. };
  92. wireless_green: wireless_green {
  93. label = "vgv7519:green:wireless";
  94. gpios = <&stp 13 GPIO_ACTIVE_LOW>;
  95. };
  96. power_green: power2 {
  97. label = "vgv7519:green:power";
  98. gpios = <&stp 14 GPIO_ACTIVE_LOW>;
  99. default-state = "keep";
  100. };
  101. power_red: power {
  102. label = "vgv7519:red:power";
  103. gpios = <&stp 15 GPIO_ACTIVE_LOW>;
  104. };
  105. };
  106. usb_vbus: regulator-usb-vbus {
  107. compatible = "regulator-fixed";
  108. regulator-name = "USB_VBUS";
  109. regulator-min-microvolt = <5000000>;
  110. regulator-max-microvolt = <5000000>;
  111. gpio = <&gpio 32 GPIO_ACTIVE_HIGH>;
  112. enable-active-high;
  113. };
  114. };
  115. &eth0 {
  116. lan: interface@0 {
  117. compatible = "lantiq,xrx200-pdi";
  118. #address-cells = <1>;
  119. #size-cells = <0>;
  120. reg = <0>;
  121. mtd-mac-address = <&boardconfig 0x16>;
  122. mtd-mac-address-increment = <1>;
  123. lantiq,switch;
  124. ethernet@0 {
  125. compatible = "lantiq,xrx200-pdi-port";
  126. reg = <0>;
  127. phy-mode = "rgmii";
  128. phy-handle = <&phy0>;
  129. };
  130. ethernet@1 {
  131. compatible = "lantiq,xrx200-pdi-port";
  132. reg = <1>;
  133. phy-mode = "rgmii";
  134. phy-handle = <&phy1>;
  135. };
  136. ethernet@2 {
  137. compatible = "lantiq,xrx200-pdi-port";
  138. reg = <2>;
  139. phy-mode = "gmii";
  140. phy-handle = <&phy11>;
  141. };
  142. ethernet@4 {
  143. compatible = "lantiq,xrx200-pdi-port";
  144. reg = <4>;
  145. phy-mode = "gmii";
  146. phy-handle = <&phy13>;
  147. };
  148. ethernet@5 {
  149. compatible = "lantiq,xrx200-pdi-port";
  150. reg = <5>;
  151. phy-mode = "rgmii";
  152. phy-handle = <&phy5>;
  153. };
  154. };
  155. mdio@0 {
  156. #address-cells = <1>;
  157. #size-cells = <0>;
  158. compatible = "lantiq,xrx200-mdio";
  159. reg = <0>;
  160. phy0: ethernet-phy@0 {
  161. reg = <0x0>;
  162. compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
  163. };
  164. phy1: ethernet-phy@1 {
  165. reg = <0x1>;
  166. compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
  167. };
  168. phy5: ethernet-phy@5 {
  169. reg = <0x5>;
  170. compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
  171. };
  172. phy11: ethernet-phy@11 {
  173. reg = <0x11>;
  174. compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
  175. };
  176. phy13: ethernet-phy@13 {
  177. reg = <0x13>;
  178. compatible = "lantiq,phy11g", "ethernet-phy-ieee802.3-c22";
  179. };
  180. };
  181. };
  182. &gphy0 {
  183. lantiq,gphy-mode = <GPHY_MODE_GE>;
  184. };
  185. &gphy1 {
  186. lantiq,gphy-mode = <GPHY_MODE_GE>;
  187. };
  188. &gpio {
  189. pinctrl-names = "default";
  190. pinctrl-0 = <&state_default>;
  191. state_default: pinmux {
  192. stp {
  193. lantiq,groups = "stp";
  194. lantiq,function = "stp";
  195. lantiq,open-drain = <0>;
  196. lantiq,output = <1>;
  197. lantiq,pull = <0>;
  198. };
  199. mdio {
  200. lantiq,groups = "mdio";
  201. lantiq,function = "mdio";
  202. };
  203. pci-rst {
  204. lantiq,pins = "io21";
  205. lantiq,open-drain = <0>;
  206. lantiq,pull = <0>;
  207. lantiq,output = <1>;
  208. };
  209. gphy-leds {
  210. lantiq,groups = "gphy0 led1", "gphy1 led0";
  211. lantiq,function = "gphy";
  212. lantiq,open-drain = <0>;
  213. lantiq,pull = <0>;
  214. lantiq,output = <1>;
  215. };
  216. };
  217. };
  218. &localbus {
  219. nor@0 {
  220. compatible = "lantiq,nor";
  221. bank-width = <2>;
  222. reg = <0 0x0 0x800000>, <1 0x800000 0x800000>;
  223. #address-cells = <1>;
  224. #size-cells = <1>;
  225. partitions {
  226. compatible = "fixed-partitions";
  227. #address-cells = <1>;
  228. #size-cells = <1>;
  229. boardconfig: partition@40000 {
  230. label = "board_config";
  231. reg = <0x40000 0x10000>;
  232. read-only;
  233. };
  234. };
  235. };
  236. };
  237. &pci0 {
  238. status = "okay";
  239. gpio-reset = <&gpio 21 GPIO_ACTIVE_HIGH>;
  240. wifi@1814,3091 {
  241. compatible = "pci1814,3091";
  242. reg = <0x7000 0 0 0 0>;
  243. ralink,mtd-eeprom = <&boardconfig 0x410>;
  244. ralink,mtd-eeprom-swap;
  245. mtd-mac-address = <&boardconfig 0x16>;
  246. mtd-mac-address-increment = <1>;
  247. };
  248. };
  249. &pcie0 {
  250. status = "disabled";
  251. };
  252. &stp {
  253. lantiq,shadow = <0xffff>;
  254. lantiq,groups = <0x3>;
  255. lantiq,dsl = <0x0>;
  256. lantiq,phy1 = <0x0>;
  257. lantiq,phy2 = <0x0>;
  258. /* lantiq,rising; */
  259. };
  260. &usb_phy0 {
  261. status = "okay";
  262. };
  263. &usb_phy1 {
  264. status = "okay";
  265. };
  266. &usb0 {
  267. status = "okay";
  268. vbus-supply = <&usb_vbus>;
  269. };
  270. &usb1 {
  271. status = "okay";
  272. vbus-supply = <&usb_vbus>;
  273. };
  274. &vmmc {
  275. status = "okay";
  276. gpios = <&gpio 30 GPIO_ACTIVE_HIGH //fxs relay
  277. &gpio 31 GPIO_ACTIVE_HIGH //still unknown
  278. &gpio 3 GPIO_ACTIVE_HIGH>; //reset_slic?
  279. };