armada-370-seagate-personal-cloud.dtsi 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Device Tree common file for the Seagate Personal Cloud NAS 1 and 2-Bay
  4. * (Armada 370 SoC).
  5. *
  6. * Copyright (C) 2015 Seagate
  7. *
  8. * Author: Simon Guinot <[email protected]>
  9. */
  10. /*
  11. * TODO: add support for the white SATA LED.
  12. */
  13. #include "armada-370.dtsi"
  14. #include <dt-bindings/gpio/gpio.h>
  15. #include <dt-bindings/input/input.h>
  16. / {
  17. chosen {
  18. stdout-path = "serial0:115200n8";
  19. };
  20. memory@0 {
  21. device_type = "memory";
  22. reg = <0x00000000 0x20000000>; /* 512 MB */
  23. };
  24. soc {
  25. ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000
  26. MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>;
  27. internal-regs {
  28. coherency-fabric@20200 {
  29. broken-idle;
  30. };
  31. serial@12000 {
  32. status = "okay";
  33. };
  34. ethernet@74000 {
  35. status = "okay";
  36. pinctrl-0 = <&ge1_rgmii_pins>;
  37. pinctrl-names = "default";
  38. phy = <&phy0>;
  39. phy-mode = "rgmii-id";
  40. };
  41. usb@50000 {
  42. status = "okay";
  43. };
  44. };
  45. };
  46. regulators {
  47. compatible = "simple-bus";
  48. #address-cells = <1>;
  49. #size-cells = <0>;
  50. regulator@0 {
  51. compatible = "regulator-fixed";
  52. reg = <0>;
  53. regulator-name = "USB Power";
  54. regulator-min-microvolt = <5000000>;
  55. regulator-max-microvolt = <5000000>;
  56. regulator-always-on;
  57. regulator-boot-on;
  58. gpio = <&gpio1 27 GPIO_ACTIVE_LOW>;
  59. };
  60. regulator@1 {
  61. compatible = "regulator-fixed";
  62. reg = <1>;
  63. regulator-name = "SATA0 power";
  64. regulator-min-microvolt = <5000000>;
  65. regulator-max-microvolt = <5000000>;
  66. enable-active-high;
  67. regulator-always-on;
  68. regulator-boot-on;
  69. gpio = <&gpio1 18 GPIO_ACTIVE_HIGH>;
  70. };
  71. };
  72. gpio-keys {
  73. compatible = "gpio-keys";
  74. button-power {
  75. label = "Power button";
  76. linux,code = <KEY_POWER>;
  77. gpios = <&gpio1 19 GPIO_ACTIVE_HIGH>;
  78. debounce-interval = <100>;
  79. };
  80. button-reset {
  81. label = "Reset Button";
  82. linux,code = <KEY_RESTART>;
  83. gpios = <&gpio1 23 GPIO_ACTIVE_LOW>;
  84. debounce-interval = <100>;
  85. };
  86. button-usb {
  87. label = "USB VBUS error";
  88. linux,code = <KEY_UNKNOWN>;
  89. gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
  90. debounce-interval = <100>;
  91. };
  92. };
  93. gpio-leds {
  94. compatible = "gpio-leds";
  95. red-sata0 {
  96. label = "cumulus:red:sata0";
  97. gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>;
  98. default-state = "off";
  99. };
  100. };
  101. gpio_poweroff {
  102. compatible = "gpio-poweroff";
  103. gpios = <&gpio1 25 GPIO_ACTIVE_HIGH>;
  104. };
  105. };
  106. &pciec {
  107. status = "okay";
  108. /* USB 3.0 Bridge ASM1042A */
  109. pcie@1,0 {
  110. status = "okay";
  111. };
  112. };
  113. &mdio {
  114. pinctrl-0 = <&mdio_pins>;
  115. pinctrl-names = "default";
  116. phy0: ethernet-phy@0 {
  117. reg = <0>;
  118. };
  119. };
  120. &pinctrl {
  121. pinctrl-0 = <&sata_led_pin>;
  122. pinctrl-names = "default";
  123. sata_led_pin: sata-led-pin {
  124. marvell,pins = "mpp60";
  125. marvell,function = "sata0";
  126. };
  127. gpio_led_pin: gpio-led-pin {
  128. marvell,pins = "mpp60";
  129. marvell,function = "gpio";
  130. };
  131. };
  132. &spi0 {
  133. status = "okay";
  134. pinctrl-0 = <&spi0_pins2>;
  135. pinctrl-names = "default";
  136. flash@0 {
  137. #address-cells = <1>;
  138. #size-cells = <1>;
  139. /* MX25L8006E */
  140. compatible = "mxicy,mx25l8005", "jedec,spi-nor";
  141. reg = <0>; /* Chip select 0 */
  142. spi-max-frequency = <50000000>;
  143. partition@0 {
  144. label = "u-boot";
  145. reg = <0x0 0x100000>;
  146. };
  147. };
  148. };