kirkwood-nsa320.dts 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /* Device tree file for the Zyxel NSA 320 NAS box.
  3. *
  4. * Copyright (c) 2014, Adam Baker <[email protected]>
  5. *
  6. *
  7. * Based upon the board setup file created by Peter Schildmann */
  8. /dts-v1/;
  9. #include "kirkwood-nsa3x0-common.dtsi"
  10. / {
  11. model = "Zyxel NSA320";
  12. compatible = "zyxel,nsa320", "marvell,kirkwood-88f6281", "marvell,kirkwood";
  13. memory {
  14. device_type = "memory";
  15. reg = <0x00000000 0x20000000>;
  16. };
  17. chosen {
  18. bootargs = "console=ttyS0,115200";
  19. stdout-path = &uart0;
  20. };
  21. ocp@f1000000 {
  22. pinctrl: pin-controller@10000 {
  23. pinctrl-names = "default";
  24. /* SATA Activity and Present pins are not connected */
  25. pmx_sata0: pmx-sata0 {
  26. marvell,pins ;
  27. marvell,function = "sata0";
  28. };
  29. pmx_sata1: pmx-sata1 {
  30. marvell,pins ;
  31. marvell,function = "sata1";
  32. };
  33. pmx_led_hdd2_green: pmx-led-hdd2-green {
  34. marvell,pins = "mpp12";
  35. marvell,function = "gpio";
  36. };
  37. pmx_led_hdd2_red: pmx-led-hdd2-red {
  38. marvell,pins = "mpp13";
  39. marvell,function = "gpio";
  40. };
  41. pmx_mcu_data: pmx-mcu-data {
  42. marvell,pins = "mpp14";
  43. marvell,function = "gpio";
  44. };
  45. pmx_led_usb_green: pmx-led-usb-green {
  46. marvell,pins = "mpp15";
  47. marvell,function = "gpio";
  48. };
  49. pmx_mcu_clk: pmx-mcu-clk {
  50. marvell,pins = "mpp16";
  51. marvell,function = "gpio";
  52. };
  53. pmx_mcu_act: pmx-mcu-act {
  54. marvell,pins = "mpp17";
  55. marvell,function = "gpio";
  56. };
  57. pmx_led_sys_green: pmx-led-sys-green {
  58. marvell,pins = "mpp28";
  59. marvell,function = "gpio";
  60. };
  61. pmx_led_sys_orange: pmx-led-sys-orange {
  62. marvell,pins = "mpp29";
  63. marvell,function = "gpio";
  64. };
  65. pmx_led_hdd1_green: pmx-led-hdd1-green {
  66. marvell,pins = "mpp41";
  67. marvell,function = "gpio";
  68. };
  69. pmx_led_hdd1_red: pmx-led-hdd1-red {
  70. marvell,pins = "mpp42";
  71. marvell,function = "gpio";
  72. };
  73. pmx_htp: pmx-htp {
  74. marvell,pins = "mpp43";
  75. marvell,function = "gpio";
  76. };
  77. /* Buzzer needs to be switched at around 1kHz so is
  78. not compatible with the gpio-beeper driver. */
  79. pmx_buzzer: pmx-buzzer {
  80. marvell,pins = "mpp44";
  81. marvell,function = "gpio";
  82. };
  83. pmx_vid_b1: pmx-vid-b1 {
  84. marvell,pins = "mpp45";
  85. marvell,function = "gpio";
  86. };
  87. pmx_power_resume_data: pmx-power-resume-data {
  88. marvell,pins = "mpp47";
  89. marvell,function = "gpio";
  90. };
  91. pmx_power_resume_clk: pmx-power-resume-clk {
  92. marvell,pins = "mpp49";
  93. marvell,function = "gpio";
  94. };
  95. };
  96. i2c@11000 {
  97. status = "okay";
  98. pcf8563: pcf8563@51 {
  99. compatible = "nxp,pcf8563";
  100. reg = <0x51>;
  101. };
  102. };
  103. };
  104. regulators {
  105. usb0_power: regulator@1 {
  106. enable-active-high;
  107. };
  108. };
  109. gpio-leds {
  110. compatible = "gpio-leds";
  111. pinctrl-0 = <&pmx_led_hdd2_green &pmx_led_hdd2_red
  112. &pmx_led_usb_green
  113. &pmx_led_sys_green &pmx_led_sys_orange
  114. &pmx_led_copy_green &pmx_led_copy_red
  115. &pmx_led_hdd1_green &pmx_led_hdd1_red>;
  116. pinctrl-names = "default";
  117. green-sys {
  118. label = "nsa320:green:sys";
  119. gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>;
  120. };
  121. orange-sys {
  122. label = "nsa320:orange:sys";
  123. gpios = <&gpio0 29 GPIO_ACTIVE_HIGH>;
  124. };
  125. green-hdd1 {
  126. label = "nsa320:green:hdd1";
  127. gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
  128. };
  129. red-hdd1 {
  130. label = "nsa320:red:hdd1";
  131. gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
  132. };
  133. green-hdd2 {
  134. label = "nsa320:green:hdd2";
  135. gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
  136. };
  137. red-hdd2 {
  138. label = "nsa320:red:hdd2";
  139. gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
  140. };
  141. green-usb {
  142. label = "nsa320:green:usb";
  143. gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>;
  144. };
  145. green-copy {
  146. label = "nsa320:green:copy";
  147. gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
  148. };
  149. red-copy {
  150. label = "nsa320:red:copy";
  151. gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
  152. };
  153. };
  154. hwmon {
  155. compatible = "zyxel,nsa320-mcu";
  156. pinctrl-0 = <&pmx_mcu_data &pmx_mcu_clk &pmx_mcu_act>;
  157. pinctrl-names = "default";
  158. data-gpios = <&gpio0 14 GPIO_ACTIVE_HIGH>;
  159. clk-gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>;
  160. act-gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
  161. };
  162. /* The following pins are currently not assigned to a driver,
  163. some of them should be configured as inputs.
  164. pinctrl-0 = <&pmx_htp &pmx_vid_b1
  165. &pmx_power_resume_data &pmx_power_resume_clk>; */
  166. };
  167. &mdio {
  168. status = "okay";
  169. ethphy0: ethernet-phy@1 {
  170. reg = <1>;
  171. };
  172. };
  173. &eth0 {
  174. status = "okay";
  175. ethernet0-port@0 {
  176. phy-handle = <&ethphy0>;
  177. };
  178. };
  179. &pciec {
  180. status = "okay";
  181. };
  182. &pcie0 {
  183. status = "okay";
  184. };