orion5x-lacie-ethernet-disk-mini-v2.dts 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. /*
  2. * Copyright (C) 2012 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  3. *
  4. * This file is licensed under the terms of the GNU General Public
  5. * License version 2. This program is licensed "as is" without any
  6. * warranty of any kind, whether express or implied.
  7. */
  8. /*
  9. * TODO: add Orion USB device port init when kernel.org support is added.
  10. * TODO: add flash write support: see below.
  11. * TODO: add power-off support.
  12. * TODO: add I2C EEPROM support.
  13. */
  14. /dts-v1/;
  15. #include <dt-bindings/gpio/gpio.h>
  16. #include <dt-bindings/input/input.h>
  17. #include <dt-bindings/interrupt-controller/irq.h>
  18. #include "orion5x-mv88f5182.dtsi"
  19. / {
  20. model = "LaCie Ethernet Disk mini V2";
  21. compatible = "lacie,ethernet-disk-mini-v2", "marvell,orion5x-88f5182", "marvell,orion5x";
  22. memory {
  23. reg = <0x00000000 0x4000000>; /* 64 MB */
  24. };
  25. chosen {
  26. bootargs = "console=ttyS0,115200n8 earlyprintk";
  27. linux,stdout-path = &uart0;
  28. };
  29. soc {
  30. ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000>,
  31. <MBUS_ID(0x09, 0x00) 0 0xf2200000 0x800>,
  32. <MBUS_ID(0x01, 0x0f) 0 0xfff80000 0x80000>;
  33. };
  34. gpio-keys {
  35. compatible = "gpio-keys";
  36. pinctrl-0 = <&pmx_power_button>;
  37. pinctrl-names = "default";
  38. #address-cells = <1>;
  39. #size-cells = <0>;
  40. button@1 {
  41. label = "Power-on Switch";
  42. linux,code = <KEY_POWER>;
  43. gpios = <&gpio0 18 GPIO_ACTIVE_HIGH>;
  44. };
  45. };
  46. gpio-leds {
  47. compatible = "gpio-leds";
  48. pinctrl-0 = <&pmx_power_led>;
  49. pinctrl-names = "default";
  50. led@1 {
  51. label = "power:blue";
  52. gpios = <&gpio0 16 GPIO_ACTIVE_LOW>;
  53. };
  54. };
  55. };
  56. &devbus_bootcs {
  57. status = "okay";
  58. /* Read parameters */
  59. devbus,bus-width = <8>;
  60. devbus,turn-off-ps = <90000>;
  61. devbus,badr-skew-ps = <0>;
  62. devbus,acc-first-ps = <186000>;
  63. devbus,acc-next-ps = <186000>;
  64. /* Write parameters */
  65. devbus,wr-high-ps = <90000>;
  66. devbus,wr-low-ps = <90000>;
  67. devbus,ale-wr-ps = <90000>;
  68. /*
  69. * Currently the MTD code does not recognize the MX29LV400CBCT
  70. * as a bottom-type device. This could cause risks of
  71. * accidentally erasing critical flash sectors. We thus define
  72. * a single, write-protected partition covering the whole
  73. * flash. TODO: once the flash part TOP/BOTTOM detection
  74. * issue is sorted out in the MTD code, break this into at
  75. * least three partitions: 'u-boot code', 'u-boot environment'
  76. * and 'whatever is left'.
  77. */
  78. flash@0 {
  79. compatible = "cfi-flash";
  80. reg = <0 0x80000>;
  81. bank-width = <1>;
  82. #address-cells = <1>;
  83. #size-cells = <1>;
  84. partition@0 {
  85. label = "Full512Kb";
  86. reg = <0 0x80000>;
  87. read-only;
  88. };
  89. };
  90. };
  91. &ehci0 {
  92. status = "okay";
  93. };
  94. &eth {
  95. status = "okay";
  96. ethernet-port@0 {
  97. phy-handle = <&ethphy>;
  98. };
  99. };
  100. &i2c {
  101. status = "okay";
  102. clock-frequency = <100000>;
  103. #address-cells = <1>;
  104. rtc@32 {
  105. compatible = "ricoh,rs5c372a";
  106. reg = <0x32>;
  107. interrupt-parent = <&gpio0>;
  108. interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
  109. };
  110. };
  111. &mdio {
  112. status = "okay";
  113. ethphy: ethernet-phy {
  114. reg = <8>;
  115. };
  116. };
  117. &pinctrl {
  118. pinctrl-0 = <&pmx_rtc &pmx_power_led_ctrl>;
  119. pinctrl-names = "default";
  120. pmx_power_button: pmx-power-button {
  121. marvell,pins = "mpp18";
  122. marvell,function = "gpio";
  123. };
  124. pmx_power_led: pmx-power-led {
  125. marvell,pins = "mpp16";
  126. marvell,function = "gpio";
  127. };
  128. pmx_power_led_ctrl: pmx-power-led-ctrl {
  129. marvell,pins = "mpp17";
  130. marvell,function = "gpio";
  131. };
  132. pmx_rtc: pmx-rtc {
  133. marvell,pins = "mpp3";
  134. marvell,function = "gpio";
  135. };
  136. };
  137. &sata {
  138. pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
  139. pinctrl-names = "default";
  140. status = "okay";
  141. nr-ports = <2>;
  142. };
  143. &uart0 {
  144. status = "okay";
  145. };