kirkwood-linkstation.dtsi 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2. /*
  3. * Device Tree common file for kirkwood based Buffalo Linkstation
  4. *
  5. * Copyright (C) 2015, 2016
  6. * Roger Shimizu <[email protected]>
  7. */
  8. / {
  9. chosen {
  10. bootargs = "console=ttyS0,115200n8 earlyprintk";
  11. stdout-path = &uart0;
  12. };
  13. ocp@f1000000 {
  14. pinctrl: pin-controller@10000 {
  15. pmx_power_hdd0: pmx-power-hdd0 {
  16. marvell,function = "gpio";
  17. };
  18. pmx_usb_vbus: pmx-usb-vbus {
  19. marvell,function = "gpio";
  20. };
  21. pmx_led_alarm: pmx-led-alarm {
  22. marvell,function = "gpio";
  23. };
  24. pmx_led_function_red: pmx-led-function-red {
  25. marvell,function = "gpio";
  26. };
  27. pmx_led_function_blue: pmx-led-function-blue {
  28. marvell,function = "gpio";
  29. };
  30. pmx_led_info: pmx-led-info {
  31. marvell,function = "gpio";
  32. };
  33. pmx_led_power: pmx-led-power {
  34. marvell,function = "gpio";
  35. };
  36. pmx_button_function: pmx-button-function {
  37. marvell,function = "gpio";
  38. };
  39. pmx_power_switch: pmx-power-switch {
  40. marvell,function = "gpio";
  41. };
  42. pmx_power_auto_switch: pmx-power-auto-switch {
  43. marvell,function = "gpio";
  44. };
  45. };
  46. serial@12000 {
  47. status = "okay";
  48. };
  49. sata@80000 {
  50. status = "okay";
  51. nr-ports = <1>;
  52. };
  53. spi@10600 {
  54. status = "okay";
  55. m25p40@0 {
  56. #address-cells = <1>;
  57. #size-cells = <1>;
  58. compatible = "st,m25p40", "jedec,spi-nor";
  59. reg = <0>;
  60. spi-max-frequency = <25000000>;
  61. mode = <0>;
  62. partition@0 {
  63. reg = <0x0 0x60000>;
  64. label = "uboot";
  65. read-only;
  66. };
  67. partition@60000 {
  68. reg = <0x60000 0x10000>;
  69. label = "dtb";
  70. read-only;
  71. };
  72. partition@70000 {
  73. reg = <0x70000 0x10000>;
  74. label = "uboot_env";
  75. };
  76. };
  77. };
  78. };
  79. gpio_keys {
  80. compatible = "gpio-keys";
  81. #address-cells = <1>;
  82. #size-cells = <0>;
  83. pinctrl-0 = <&pmx_button_function &pmx_power_switch
  84. &pmx_power_auto_switch>;
  85. pinctrl-names = "default";
  86. function-button {
  87. label = "Function Button";
  88. linux,code = <KEY_OPTION>;
  89. };
  90. power-on-switch {
  91. label = "Power-on Switch";
  92. linux,code = <KEY_RESERVED>;
  93. linux,input-type = <5>;
  94. };
  95. power-auto-switch {
  96. label = "Power-auto Switch";
  97. linux,code = <KEY_ESC>;
  98. linux,input-type = <5>;
  99. };
  100. };
  101. gpio_leds {
  102. compatible = "gpio-leds";
  103. pinctrl-0 = <&pmx_led_function_red &pmx_led_alarm
  104. &pmx_led_info &pmx_led_power
  105. &pmx_led_function_blue>;
  106. pinctrl-names = "default";
  107. };
  108. restart_poweroff {
  109. compatible = "restart-poweroff";
  110. };
  111. regulators {
  112. compatible = "simple-bus";
  113. #address-cells = <1>;
  114. #size-cells = <0>;
  115. pinctrl-0 = <&pmx_power_hdd0 &pmx_usb_vbus>;
  116. pinctrl-names = "default";
  117. usb_power: regulator@1 {
  118. compatible = "regulator-fixed";
  119. reg = <1>;
  120. regulator-name = "USB Power";
  121. regulator-min-microvolt = <5000000>;
  122. regulator-max-microvolt = <5000000>;
  123. enable-active-high;
  124. regulator-always-on;
  125. regulator-boot-on;
  126. };
  127. hdd_power0: regulator@2 {
  128. compatible = "regulator-fixed";
  129. reg = <2>;
  130. regulator-name = "HDD0 Power";
  131. regulator-min-microvolt = <5000000>;
  132. regulator-max-microvolt = <5000000>;
  133. enable-active-high;
  134. regulator-always-on;
  135. regulator-boot-on;
  136. };
  137. };
  138. };
  139. &pciec {
  140. status = "okay";
  141. };
  142. &pcie0 {
  143. status = "okay";
  144. };