kirkwood-dnskw.dtsi 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  1. // SPDX-License-Identifier: GPL-2.0
  2. #include "kirkwood.dtsi"
  3. #include "kirkwood-6281.dtsi"
  4. / {
  5. model = "D-Link DNS NASes (kirkwood-based)";
  6. compatible = "dlink,dns-kirkwood", "marvell,kirkwood-88f6281", "marvell,kirkwood";
  7. gpio_keys {
  8. compatible = "gpio-keys";
  9. #address-cells = <1>;
  10. #size-cells = <0>;
  11. pinctrl-0 = <&pmx_button_power &pmx_button_unmount
  12. &pmx_button_reset>;
  13. pinctrl-names = "default";
  14. power {
  15. label = "Power button";
  16. linux,code = <KEY_POWER>;
  17. gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
  18. };
  19. eject {
  20. label = "USB unmount button";
  21. linux,code = <KEY_EJECTCD>;
  22. gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
  23. };
  24. reset {
  25. label = "Reset button";
  26. linux,code = <KEY_RESTART>;
  27. gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
  28. };
  29. };
  30. gpio_fan {
  31. /* Fan: ADDA AD045HB-G73 40mm 6000rpm@5v */
  32. compatible = "gpio-fan";
  33. pinctrl-0 = <&pmx_fan_high_speed &pmx_fan_low_speed>;
  34. pinctrl-names = "default";
  35. gpios = <&gpio1 14 GPIO_ACTIVE_HIGH
  36. &gpio1 13 GPIO_ACTIVE_HIGH>;
  37. gpio-fan,speed-map = <0 0
  38. 3000 1
  39. 6000 2>;
  40. };
  41. gpio_poweroff {
  42. compatible = "gpio-poweroff";
  43. pinctrl-0 = <&pmx_power_off>;
  44. pinctrl-names = "default";
  45. gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
  46. };
  47. ocp@f1000000 {
  48. pinctrl: pin-controller@10000 {
  49. pinctrl-0 = <&pmx_power_back_on &pmx_present_sata0
  50. &pmx_present_sata1 &pmx_fan_tacho
  51. &pmx_temp_alarm>;
  52. pinctrl-names = "default";
  53. pmx_sata0: pmx-sata0 {
  54. marvell,pins = "mpp20";
  55. marvell,function = "sata1";
  56. };
  57. pmx_sata1: pmx-sata1 {
  58. marvell,pins = "mpp21";
  59. marvell,function = "sata0";
  60. };
  61. pmx_led_power: pmx-led-power {
  62. marvell,pins = "mpp26";
  63. marvell,function = "gpio";
  64. };
  65. pmx_led_red_right_hdd: pmx-led-red-right-hdd {
  66. marvell,pins = "mpp27";
  67. marvell,function = "gpio";
  68. };
  69. pmx_led_red_left_hdd: pmx-led-red-left-hdd {
  70. marvell,pins = "mpp28";
  71. marvell,function = "gpio";
  72. };
  73. pmx_led_red_usb_325: pmx-led-red-usb-325 {
  74. marvell,pins = "mpp29";
  75. marvell,function = "gpio";
  76. };
  77. pmx_button_power: pmx-button-power {
  78. marvell,pins = "mpp34";
  79. marvell,function = "gpio";
  80. };
  81. pmx_led_red_usb_320: pmx-led-red-usb-320 {
  82. marvell,pins = "mpp35";
  83. marvell,function = "gpio";
  84. };
  85. pmx_power_off: pmx-power-off {
  86. marvell,pins = "mpp36";
  87. marvell,function = "gpio";
  88. };
  89. pmx_power_back_on: pmx-power-back-on {
  90. marvell,pins = "mpp37";
  91. marvell,function = "gpio";
  92. };
  93. pmx_power_sata0: pmx-power-sata0 {
  94. marvell,pins = "mpp39";
  95. marvell,function = "gpio";
  96. };
  97. pmx_power_sata1: pmx-power-sata1 {
  98. marvell,pins = "mpp40";
  99. marvell,function = "gpio";
  100. };
  101. pmx_present_sata0: pmx-present-sata0 {
  102. marvell,pins = "mpp41";
  103. marvell,function = "gpio";
  104. };
  105. pmx_present_sata1: pmx-present-sata1 {
  106. marvell,pins = "mpp42";
  107. marvell,function = "gpio";
  108. };
  109. pmx_led_white_usb: pmx-led-white-usb {
  110. marvell,pins = "mpp43";
  111. marvell,function = "gpio";
  112. };
  113. pmx_fan_tacho: pmx-fan-tacho {
  114. marvell,pins = "mpp44";
  115. marvell,function = "gpio";
  116. };
  117. pmx_fan_high_speed: pmx-fan-high-speed {
  118. marvell,pins = "mpp45";
  119. marvell,function = "gpio";
  120. };
  121. pmx_fan_low_speed: pmx-fan-low-speed {
  122. marvell,pins = "mpp46";
  123. marvell,function = "gpio";
  124. };
  125. pmx_button_unmount: pmx-button-unmount {
  126. marvell,pins = "mpp47";
  127. marvell,function = "gpio";
  128. };
  129. pmx_button_reset: pmx-button-reset {
  130. marvell,pins = "mpp48";
  131. marvell,function = "gpio";
  132. };
  133. pmx_temp_alarm: pmx-temp-alarm {
  134. marvell,pins = "mpp49";
  135. marvell,function = "gpio";
  136. };
  137. };
  138. sata@80000 {
  139. pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
  140. pinctrl-names = "default";
  141. status = "okay";
  142. nr-ports = <2>;
  143. };
  144. };
  145. regulators {
  146. compatible = "simple-bus";
  147. #address-cells = <1>;
  148. #size-cells = <0>;
  149. pinctrl-0 = <&pmx_power_sata0 &pmx_power_sata1>;
  150. pinctrl-names = "default";
  151. sata0_power: regulator@1 {
  152. compatible = "regulator-fixed";
  153. reg = <1>;
  154. regulator-name = "SATA0 Power";
  155. regulator-min-microvolt = <5000000>;
  156. regulator-max-microvolt = <5000000>;
  157. enable-active-high;
  158. regulator-always-on;
  159. regulator-boot-on;
  160. gpio = <&gpio1 7 0>;
  161. };
  162. sata1_power: regulator@2 {
  163. compatible = "regulator-fixed";
  164. reg = <2>;
  165. regulator-name = "SATA1 Power";
  166. regulator-min-microvolt = <5000000>;
  167. regulator-max-microvolt = <5000000>;
  168. enable-active-high;
  169. regulator-always-on;
  170. regulator-boot-on;
  171. gpio = <&gpio1 8 0>;
  172. };
  173. };
  174. };
  175. &nand {
  176. status = "okay";
  177. chip-delay = <35>;
  178. partition@0 {
  179. label = "u-boot";
  180. reg = <0x0000000 0x100000>;
  181. read-only;
  182. };
  183. partition@100000 {
  184. label = "uImage";
  185. reg = <0x0100000 0x500000>;
  186. };
  187. partition@600000 {
  188. label = "ramdisk";
  189. reg = <0x0600000 0x500000>;
  190. };
  191. partition@b00000 {
  192. label = "image";
  193. reg = <0x0b00000 0x6600000>;
  194. };
  195. partition@7100000 {
  196. label = "mini firmware";
  197. reg = <0x7100000 0xa00000>;
  198. };
  199. partition@7b00000 {
  200. label = "config";
  201. reg = <0x7b00000 0x500000>;
  202. };
  203. };
  204. &mdio {
  205. status = "okay";
  206. ethphy0: ethernet-phy@8 {
  207. reg = <8>;
  208. };
  209. };
  210. &eth0 {
  211. status = "okay";
  212. ethernet0-port@0 {
  213. phy-handle = <&ethphy0>;
  214. };
  215. };