kirkwood-lsxl.dtsi 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. // SPDX-License-Identifier: GPL-2.0
  2. #include "kirkwood.dtsi"
  3. #include "kirkwood-6281.dtsi"
  4. / {
  5. chosen {
  6. bootargs = "console=ttyS0,115200n8 earlyprintk";
  7. stdout-path = &uart0;
  8. };
  9. ocp@f1000000 {
  10. pinctrl: pin-controller@10000 {
  11. /* Non-default UART pins */
  12. pmx_uart0: pmx-uart0 {
  13. marvell,pins = "mpp4", "mpp5";
  14. };
  15. pmx_power_hdd: pmx-power-hdd {
  16. marvell,pins = "mpp10";
  17. marvell,function = "gpo";
  18. };
  19. pmx_usb_vbus: pmx-usb-vbus {
  20. marvell,pins = "mpp11";
  21. marvell,function = "gpio";
  22. };
  23. pmx_fan_high: pmx-fan-high {
  24. marvell,pins = "mpp18";
  25. marvell,function = "gpo";
  26. };
  27. pmx_fan_low: pmx-fan-low {
  28. marvell,pins = "mpp19";
  29. marvell,function = "gpo";
  30. };
  31. pmx_led_function_blue: pmx-led-function-blue {
  32. marvell,pins = "mpp36";
  33. marvell,function = "gpio";
  34. };
  35. pmx_led_alarm: pmx-led-alarm {
  36. marvell,pins = "mpp37";
  37. marvell,function = "gpio";
  38. };
  39. pmx_led_info: pmx-led-info {
  40. marvell,pins = "mpp38";
  41. marvell,function = "gpio";
  42. };
  43. pmx_led_power: pmx-led-power {
  44. marvell,pins = "mpp39";
  45. marvell,function = "gpio";
  46. };
  47. pmx_fan_lock: pmx-fan-lock {
  48. marvell,pins = "mpp40";
  49. marvell,function = "gpio";
  50. };
  51. pmx_button_function: pmx-button-function {
  52. marvell,pins = "mpp41";
  53. marvell,function = "gpio";
  54. };
  55. pmx_power_switch: pmx-power-switch {
  56. marvell,pins = "mpp42";
  57. marvell,function = "gpio";
  58. };
  59. pmx_power_auto_switch: pmx-power-auto-switch {
  60. marvell,pins = "mpp43";
  61. marvell,function = "gpio";
  62. };
  63. pmx_led_function_red: pmx-led-function_red {
  64. marvell,pins = "mpp48";
  65. marvell,function = "gpio";
  66. };
  67. };
  68. sata@80000 {
  69. status = "okay";
  70. nr-ports = <1>;
  71. };
  72. spi@10600 {
  73. status = "okay";
  74. m25p40@0 {
  75. #address-cells = <1>;
  76. #size-cells = <1>;
  77. compatible = "m25p40", "jedec,spi-nor";
  78. reg = <0>;
  79. spi-max-frequency = <25000000>;
  80. mode = <0>;
  81. partition@0 {
  82. reg = <0x0 0x60000>;
  83. label = "uboot";
  84. read-only;
  85. };
  86. partition@60000 {
  87. reg = <0x60000 0x10000>;
  88. label = "dtb";
  89. read-only;
  90. };
  91. partition@70000 {
  92. reg = <0x70000 0x10000>;
  93. label = "uboot_env";
  94. };
  95. };
  96. };
  97. };
  98. gpio_keys {
  99. compatible = "gpio-keys";
  100. #address-cells = <1>;
  101. #size-cells = <0>;
  102. pinctrl-0 = <&pmx_button_function &pmx_power_switch
  103. &pmx_power_auto_switch>;
  104. pinctrl-names = "default";
  105. option {
  106. label = "Function Button";
  107. linux,code = <KEY_OPTION>;
  108. gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
  109. };
  110. reserved {
  111. label = "Power-on Switch";
  112. linux,code = <KEY_RESERVED>;
  113. linux,input-type = <5>;
  114. gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
  115. };
  116. power {
  117. label = "Power-auto Switch";
  118. linux,code = <KEY_ESC>;
  119. linux,input-type = <5>;
  120. gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
  121. };
  122. };
  123. gpio_leds {
  124. compatible = "gpio-leds";
  125. pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm
  126. &pmx_led_info &pmx_led_power
  127. &pmx_led_function_blue>;
  128. pinctrl-names = "default";
  129. func_blue {
  130. label = "lsxl:blue:func";
  131. gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
  132. };
  133. alarm {
  134. label = "lsxl:red:alarm";
  135. gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
  136. };
  137. info {
  138. label = "lsxl:amber:info";
  139. gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
  140. };
  141. power {
  142. label = "lsxl:blue:power";
  143. gpios = <&gpio1 7 GPIO_ACTIVE_LOW>;
  144. default-state = "keep";
  145. };
  146. func_red {
  147. label = "lsxl:red:func";
  148. gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
  149. };
  150. };
  151. gpio_fan {
  152. compatible = "gpio-fan";
  153. pinctrl-0 = <&pmx_fan_low &pmx_fan_high &pmx_fan_lock>;
  154. pinctrl-names = "default";
  155. gpios = <&gpio0 19 GPIO_ACTIVE_LOW
  156. &gpio0 18 GPIO_ACTIVE_LOW>;
  157. gpio-fan,speed-map = <0 3
  158. 1500 2
  159. 3250 1
  160. 5000 0>;
  161. alarm-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
  162. };
  163. restart_poweroff {
  164. compatible = "restart-poweroff";
  165. };
  166. regulators {
  167. compatible = "simple-bus";
  168. #address-cells = <1>;
  169. #size-cells = <0>;
  170. pinctrl-0 = <&pmx_power_hdd &pmx_usb_vbus>;
  171. pinctrl-names = "default";
  172. usb_power: regulator@1 {
  173. compatible = "regulator-fixed";
  174. reg = <1>;
  175. regulator-name = "USB Power";
  176. regulator-min-microvolt = <5000000>;
  177. regulator-max-microvolt = <5000000>;
  178. enable-active-high;
  179. regulator-always-on;
  180. regulator-boot-on;
  181. gpio = <&gpio0 11 0>;
  182. };
  183. hdd_power: regulator@2 {
  184. compatible = "regulator-fixed";
  185. reg = <2>;
  186. regulator-name = "HDD Power";
  187. regulator-min-microvolt = <5000000>;
  188. regulator-max-microvolt = <5000000>;
  189. enable-active-high;
  190. regulator-always-on;
  191. regulator-boot-on;
  192. gpio = <&gpio0 10 0>;
  193. };
  194. };
  195. };
  196. &mdio {
  197. status = "okay";
  198. ethphy1: ethernet-phy@8 {
  199. reg = <8>;
  200. };
  201. };
  202. &eth1 {
  203. status = "okay";
  204. ethernet1-port@0 {
  205. phy-handle = <&ethphy1>;
  206. };
  207. };