kirkwood-nsa310.dts 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. /dts-v1/;
  2. /include/ "kirkwood.dtsi"
  3. /include/ "kirkwood-6281.dtsi"
  4. / {
  5. model = "ZyXEL NSA310";
  6. compatible = "zyxel,nsa310", "marvell,kirkwood-88f6281", "marvell,kirkwood";
  7. memory {
  8. device_type = "memory";
  9. reg = <0x00000000 0x10000000>;
  10. };
  11. chosen {
  12. bootargs = "console=ttyS0,115200";
  13. };
  14. ocp@f1000000 {
  15. pinctrl: pinctrl@10000 {
  16. pinctrl-0 = <&pmx_unknown>;
  17. pinctrl-names = "default";
  18. pmx_led_esata_green: pmx-led-esata-green {
  19. marvell,pins = "mpp12";
  20. marvell,function = "gpio";
  21. };
  22. pmx_led_esata_red: pmx-led-esata-red {
  23. marvell,pins = "mpp13";
  24. marvell,function = "gpio";
  25. };
  26. pmx_led_usb_green: pmx-led-usb-green {
  27. marvell,pins = "mpp15";
  28. marvell,function = "gpio";
  29. };
  30. pmx_led_usb_red: pmx-led-usb-red {
  31. marvell,pins = "mpp16";
  32. marvell,function = "gpio";
  33. };
  34. pmx_usb_power_off: pmx-usb-power-off {
  35. marvell,pins = "mpp21";
  36. marvell,function = "gpio";
  37. };
  38. pmx_led_sys_green: pmx-led-sys-green {
  39. marvell,pins = "mpp28";
  40. marvell,function = "gpio";
  41. };
  42. pmx_led_sys_red: pmx-led-sys-red {
  43. marvell,pins = "mpp29";
  44. marvell,function = "gpio";
  45. };
  46. pmx_btn_reset: pmx-btn-reset {
  47. marvell,pins = "mpp36";
  48. marvell,function = "gpio";
  49. };
  50. pmx_btn_copy: pmx-btn-copy {
  51. marvell,pins = "mpp37";
  52. marvell,function = "gpio";
  53. };
  54. pmx_led_copy_green: pmx-led-copy-green {
  55. marvell,pins = "mpp39";
  56. marvell,function = "gpio";
  57. };
  58. pmx_led_copy_red: pmx-led-copy-red {
  59. marvell,pins = "mpp40";
  60. marvell,function = "gpio";
  61. };
  62. pmx_led_hdd_green: pmx-led-hdd-green {
  63. marvell,pins = "mpp41";
  64. marvell,function = "gpio";
  65. };
  66. pmx_led_hdd_red: pmx-led-hdd-red {
  67. marvell,pins = "mpp42";
  68. marvell,function = "gpio";
  69. };
  70. pmx_unknown: pmx-unknown {
  71. marvell,pins = "mpp44";
  72. marvell,function = "gpio";
  73. };
  74. pmx_btn_power: pmx-btn-power {
  75. marvell,pins = "mpp46";
  76. marvell,function = "gpio";
  77. };
  78. pmx_pwr_off: pmx-pwr-off {
  79. marvell,pins = "mpp48";
  80. marvell,function = "gpio";
  81. };
  82. };
  83. serial@12000 {
  84. status = "ok";
  85. };
  86. sata@80000 {
  87. status = "okay";
  88. nr-ports = <2>;
  89. };
  90. i2c@11000 {
  91. status = "okay";
  92. adt7476: adt7476a@2e {
  93. compatible = "adt7476";
  94. reg = <0x2e>;
  95. };
  96. };
  97. nand@3000000 {
  98. status = "okay";
  99. chip-delay = <35>;
  100. partition@0 {
  101. label = "uboot";
  102. reg = <0x0000000 0x0100000>;
  103. read-only;
  104. };
  105. partition@100000 {
  106. label = "uboot_env";
  107. reg = <0x0100000 0x0080000>;
  108. };
  109. partition@180000 {
  110. label = "key_store";
  111. reg = <0x0180000 0x0080000>;
  112. };
  113. partition@200000 {
  114. label = "info";
  115. reg = <0x0200000 0x0080000>;
  116. };
  117. partition@280000 {
  118. label = "etc";
  119. reg = <0x0280000 0x0a00000>;
  120. };
  121. partition@c80000 {
  122. label = "kernel_1";
  123. reg = <0x0c80000 0x0a00000>;
  124. };
  125. partition@1680000 {
  126. label = "rootfs1";
  127. reg = <0x1680000 0x2fc0000>;
  128. };
  129. partition@4640000 {
  130. label = "kernel_2";
  131. reg = <0x4640000 0x0a00000>;
  132. };
  133. partition@5040000 {
  134. label = "rootfs2";
  135. reg = <0x5040000 0x2fc0000>;
  136. };
  137. };
  138. pcie-controller {
  139. status = "okay";
  140. pcie@1,0 {
  141. status = "okay";
  142. };
  143. };
  144. };
  145. gpio_keys {
  146. compatible = "gpio-keys";
  147. #address-cells = <1>;
  148. #size-cells = <0>;
  149. pinctrl-0 = <&pmx_btn_reset &pmx_btn_copy &pmx_btn_power>;
  150. pinctrl-names = "default";
  151. button@1 {
  152. label = "Power Button";
  153. linux,code = <116>;
  154. gpios = <&gpio1 14 0>;
  155. };
  156. button@2 {
  157. label = "Copy Button";
  158. linux,code = <133>;
  159. gpios = <&gpio1 5 1>;
  160. };
  161. button@3 {
  162. label = "Reset Button";
  163. linux,code = <0x198>;
  164. gpios = <&gpio1 4 1>;
  165. };
  166. };
  167. gpio-leds {
  168. compatible = "gpio-leds";
  169. pinctrl-0 = <&pmx_led_esata_green &pmx_led_esata_red
  170. &pmx_led_usb_green &pmx_led_usb_red
  171. &pmx_led_sys_green &pmx_led_sys_red
  172. &pmx_led_copy_green &pmx_led_copy_red
  173. &pmx_led_hdd_green &pmx_led_hdd_red>;
  174. pinctrl-names = "default";
  175. green-sys {
  176. label = "nsa310:green:sys";
  177. gpios = <&gpio0 28 0>;
  178. };
  179. red-sys {
  180. label = "nsa310:red:sys";
  181. gpios = <&gpio0 29 0>;
  182. };
  183. green-hdd {
  184. label = "nsa310:green:hdd";
  185. gpios = <&gpio1 9 0>;
  186. };
  187. red-hdd {
  188. label = "nsa310:red:hdd";
  189. gpios = <&gpio1 10 0>;
  190. };
  191. green-esata {
  192. label = "nsa310:green:esata";
  193. gpios = <&gpio0 12 0>;
  194. };
  195. red-esata {
  196. label = "nsa310:red:esata";
  197. gpios = <&gpio0 13 0>;
  198. };
  199. green-usb {
  200. label = "nsa310:green:usb";
  201. gpios = <&gpio0 15 0>;
  202. };
  203. red-usb {
  204. label = "nsa310:red:usb";
  205. gpios = <&gpio0 16 0>;
  206. };
  207. green-copy {
  208. label = "nsa310:green:copy";
  209. gpios = <&gpio1 7 0>;
  210. };
  211. red-copy {
  212. label = "nsa310:red:copy";
  213. gpios = <&gpio1 8 0>;
  214. };
  215. };
  216. gpio_poweroff {
  217. compatible = "gpio-poweroff";
  218. pinctrl-0 = <&pmx_pwr_off>;
  219. pinctrl-names = "default";
  220. gpios = <&gpio1 16 0>;
  221. };
  222. regulators {
  223. compatible = "simple-bus";
  224. #address-cells = <1>;
  225. #size-cells = <0>;
  226. pinctrl-0 = <&pmx_usb_power_off>;
  227. pinctrl-names = "default";
  228. usb0_power_off: regulator@1 {
  229. compatible = "regulator-fixed";
  230. reg = <1>;
  231. regulator-name = "USB Power Off";
  232. regulator-min-microvolt = <5000000>;
  233. regulator-max-microvolt = <5000000>;
  234. regulator-always-on;
  235. regulator-boot-on;
  236. gpio = <&gpio0 21 0>;
  237. };
  238. };
  239. };