kirkwood-stora.dts 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. * Device Tree file for NETGEAR Stora (MS2000/2110)
  4. *
  5. * Copyright (C) 2013, Arnaud EBALARD <[email protected]>
  6. * Copyright (C) 2021, Zoltan HERPAI <[email protected]>
  7. */
  8. /dts-v1/;
  9. #include "kirkwood.dtsi"
  10. #include "kirkwood-6281.dtsi"
  11. / {
  12. model = "NETGEAR Stora (MS2000/2110)";
  13. compatible = "netgear,stora", "marvell,kirkwood-88f6281", "marvell,kirkwood";
  14. memory { /* 128 MB */
  15. device_type = "memory";
  16. reg = <0x00000000 0x8000000>;
  17. };
  18. aliases {
  19. led-boot = &led_power;
  20. led-failsafe = &led_power;
  21. led-running = &led_power;
  22. led-upgrade = &led_power;
  23. };
  24. chosen {
  25. bootargs = "console=ttyS0,115200n8 earlyprintk";
  26. stdout-path = &uart0;
  27. };
  28. ocp@f1000000 {
  29. pinctrl: pin-controller@10000 {
  30. pmx_button_power: pmx-button-power {
  31. marvell,pins = "mpp36";
  32. marvell,function = "gpio";
  33. };
  34. pmx_button_reset: pmx-button-reset {
  35. marvell,pins = "mpp38";
  36. marvell,function = "gpio";
  37. };
  38. pmx_led_blue_power: pmx-led-blue-power {
  39. marvell,pins = "mpp31";
  40. marvell,function = "gpio";
  41. };
  42. pmx_led_green_disk1: pmx-led-green-disk1 {
  43. marvell,pins = "mpp21";
  44. marvell,function = "gpio";
  45. };
  46. pmx_led_green_disk2: pmx-led-green-disk2 {
  47. marvell,pins = "mpp20";
  48. marvell,function = "gpio";
  49. };
  50. pmx_led_red_disk1: pmx-led-red-disk1 {
  51. marvell,pins = "mpp23";
  52. marvell,function = "gpio";
  53. };
  54. pmx_led_red_disk2: pmx-led-red-disk2 {
  55. marvell,pins = "mpp22";
  56. marvell,function = "gpio";
  57. };
  58. pmx_poweroff: pmx-poweroff {
  59. marvell,pins = "mpp40";
  60. marvell,function = "gpio";
  61. };
  62. pmx_fan_tacho: pmx-fan-tacho {
  63. marvell,pins = "mpp41";
  64. marvell,function = "gpio";
  65. };
  66. };
  67. clocks {
  68. pcf8563_clk: pcf8563-oscillator {
  69. compatible = "fixed-clock";
  70. #clock-cells = <0>;
  71. clock-frequency = <2048>;
  72. };
  73. };
  74. i2c@11000 {
  75. status = "okay";
  76. tc654@1b {
  77. compatible = "microchip,tc654";
  78. reg = <0x1b>;
  79. };
  80. lm75@48 {
  81. compatible = "national,lm75";
  82. reg = <0x48>;
  83. };
  84. pcf8563@51 {
  85. compatible = "nxp,pcf8563";
  86. reg = <0x51>;
  87. };
  88. };
  89. serial@12000 {
  90. status = "okay";
  91. };
  92. sata@80000 {
  93. status = "okay";
  94. phy-names = "port0", "port1";
  95. nr-ports = <2>;
  96. };
  97. };
  98. gpio-leds {
  99. compatible = "gpio-leds";
  100. pinctrl-0 = < &pmx_led_blue_power
  101. &pmx_led_green_disk1 &pmx_led_green_disk2
  102. &pmx_led_red_disk1 &pmx_led_red_disk2 >;
  103. pinctrl-names = "default";
  104. led_power: power {
  105. label = "blue:power";
  106. gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
  107. linux,default-trigger = "default-on";
  108. };
  109. disk1 {
  110. label = "green:disk1";
  111. gpios = <&gpio0 21 GPIO_ACTIVE_LOW>;
  112. linux,default-trigger = "ata1";
  113. };
  114. disk2 {
  115. label = "green:disk2";
  116. gpios = <&gpio0 20 GPIO_ACTIVE_LOW>;
  117. linux,default-trigger = "ata2";
  118. };
  119. disk1_fail {
  120. label = "red:disk1_fail";
  121. gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
  122. };
  123. disk2_fail {
  124. label = "red:disk2_fail";
  125. gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
  126. };
  127. };
  128. gpio-keys {
  129. compatible = "gpio-keys";
  130. pinctrl-0 = <&pmx_button_power &pmx_button_reset >;
  131. pinctrl-names = "default";
  132. power {
  133. label = "Power Button";
  134. linux,code = <KEY_POWER>;
  135. gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
  136. };
  137. reset {
  138. label = "Reset Button";
  139. linux,code = <KEY_RESTART>;
  140. gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
  141. };
  142. };
  143. gpio-poweroff {
  144. compatible = "gpio-poweroff";
  145. pinctrl-0 = <&pmx_poweroff>;
  146. pinctrl-names = "default";
  147. gpios = <&gpio0 40 GPIO_ACTIVE_LOW>;
  148. };
  149. };
  150. &nand {
  151. status = "okay";
  152. chip-delay = <40>;
  153. partition@0 {
  154. label = "u-boot";
  155. reg = <0x0000000 0x0e0000>;
  156. read-only;
  157. };
  158. partition@e0000 {
  159. label = "u-boot-env";
  160. reg = <0x0e00000 0x020000>;
  161. };
  162. partition@100000 {
  163. label = "ubi";
  164. reg = <0x0100000 0xff00000>;
  165. };
  166. };
  167. &mdio {
  168. status = "okay";
  169. ethphy0: ethernet-phy@0 { /* Marvell 88E1318 */
  170. compatible = "marvell,88e1116";
  171. reg = <8>;
  172. };
  173. };
  174. &eth0 {
  175. status = "okay";
  176. ethernet0-port@0 {
  177. phy-handle = <&ethphy0>;
  178. };
  179. };
  180. &pciec {
  181. status = "okay";
  182. };
  183. &pcie0 {
  184. status = "okay";
  185. };