dove-sbc-a510.dts 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. /*
  2. * Device Tree file for Compulab SBC-A510 Single Board Computer
  3. *
  4. * Copyright (C) 2015, Sebastian Hesselbarth <[email protected]>
  5. *
  6. * This file is dual-licensed: you can use it either under the terms
  7. * of the GPL or the X11 license, at your option. Note that this dual
  8. * licensing only applies to this file, and not this project as a
  9. * whole.
  10. *
  11. * a) This file is free software; you can redistribute it and/or
  12. * modify it under the terms of the GNU General Public License as
  13. * published by the Free Software Foundation; version 2 of the
  14. * License.
  15. *
  16. * This file is distributed in the hope that it will be useful,
  17. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  18. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  19. * GNU General Public License for more details.
  20. *
  21. * Or, alternatively,
  22. *
  23. * b) Permission is hereby granted, free of charge, to any person
  24. * obtaining a copy of this software and associated documentation
  25. * files (the "Software"), to deal in the Software without
  26. * restriction, including without limitation the rights to use,
  27. * copy, modify, merge, publish, distribute, sublicense, and/or
  28. * sell copies of the Software, and to permit persons to whom the
  29. * Software is furnished to do so, subject to the following
  30. * conditions:
  31. *
  32. * The above copyright notice and this permission notice shall be
  33. * included in all copies or substantial portions of the Software.
  34. *
  35. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  36. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  37. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  38. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  39. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  40. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  41. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  42. * OTHER DEALINGS IN THE SOFTWARE.
  43. */
  44. /*
  45. * SBC-A510 comprises a PCA9555 I2C GPIO expander its GPIO lines connected to
  46. *
  47. * 0.0 USB0 VBUS_EN (active high)
  48. * 0.1 USB0 VBUS_GOOD
  49. * 0.2 DVI transmitter TI TFP410 MSEN
  50. * 0.3 DVI transmitter TI TFP410 PD# (active low power down)
  51. * 0.4 LVDS transmitter DS90C365 PD# (active low power down)
  52. * 0.5 LCD nRST (active low reset)
  53. * 0.6 PCIe0 nRST (active low reset)
  54. * 0.7 mini-PCIe slot W_DISABLE#
  55. *
  56. * 1.0 MMC WP
  57. * 1.1 Camera Input FPC FLASH_STB and P21.5
  58. * 1.2 Camera Input FPC WE and P21.22
  59. * 1.3 MMC VCC_EN (active high) and P21.7
  60. * 1.4 Camera Input FPC AFTR_RST and P21.17
  61. * 1.5 Camera Input FPC OE and P21.19
  62. * 1.6 Camera Input FPC SNPSHT and P21.6
  63. * 1.7 Camera Input FPC SHTR and P21.10
  64. */
  65. /dts-v1/;
  66. #include "dove-cm-a510.dtsi"
  67. / {
  68. model = "Compulab SBC-A510";
  69. compatible = "compulab,sbc-a510", "compulab,cm-a510", "marvell,dove";
  70. chosen {
  71. stdout-path = &uart0;
  72. };
  73. regulators {
  74. usb0_power: regulator@2 {
  75. compatible = "regulator-fixed";
  76. regulator-name = "USB Power";
  77. regulator-min-microvolt = <5000000>;
  78. regulator-max-microvolt = <5000000>;
  79. gpio = <&gpio_ext 0 GPIO_ACTIVE_HIGH>;
  80. };
  81. mmc_power: regulator@3 {
  82. compatible = "regulator-fixed";
  83. regulator-name = "MMC Power";
  84. regulator-min-microvolt = <3300000>;
  85. regulator-max-microvolt = <3300000>;
  86. gpio = <&gpio_ext 13 GPIO_ACTIVE_HIGH>;
  87. };
  88. };
  89. };
  90. /* Ethernet0 depends on CM-A510 option E1 */
  91. &mdio { status = "disabled"; };
  92. &eth { status = "disabled"; };
  93. &ethphy { status = "disabled"; };
  94. /*
  95. * USB port 0 can be powered and monitored by I2C GPIO expander:
  96. * VBUS_ENABLE on GPIO0, VBUS_GOOD on GPIO1
  97. */
  98. &ehci0 {
  99. status = "okay";
  100. vbus-supply = <&usb0_power>;
  101. };
  102. /* USB port 1 (and ports 2, 3 if CM-A510 has U4 option) */
  103. &ehci1 { status = "okay"; };
  104. /*
  105. * I2C bus layout:
  106. * i2c0:
  107. * - Audio Codec, 0x1a (option from CM-A510)
  108. * - DVI transmitter TI TFP410, 0x39
  109. * - HDMI/DVI DDC channel
  110. * i2c1:
  111. * - GPIO expander, NXP PCA9555, 0x20
  112. * - VGA DDC channel
  113. */
  114. &i2c {
  115. pinctrl-0 = <&pmx_i2c1>;
  116. pinctrl-names = "default";
  117. };
  118. &i2c0 {
  119. /* TI TFP410 DVI transmitter */
  120. dvi: video@39 {
  121. compatible = "ti,tfp410";
  122. reg = <0x39>;
  123. powerdown-gpio = <&gpio_ext 3 GPIO_ACTIVE_LOW>;
  124. };
  125. };
  126. &i2c1 {
  127. status = "okay";
  128. /* NXP PCA9555 GPIO expander */
  129. gpio_ext: gpio@20 {
  130. compatible = "nxp,pca9555";
  131. reg = <0x20>;
  132. gpio-controller;
  133. #gpio-cells = <2>;
  134. };
  135. };
  136. &pcie { status = "okay"; };
  137. /*
  138. * PCIe0 can be configured by Jumper E1 to be either connected to
  139. * a mini-PCIe slot or a Pericom PI7C9X111 PCIe-to-PCI bridge.
  140. */
  141. &pcie0 {
  142. status = "okay";
  143. pinctrl-0 = <&pmx_pcie0_clkreq>;
  144. pinctrl-names = "default";
  145. reset-gpios = <&gpio_ext 6 GPIO_ACTIVE_LOW>;
  146. };
  147. /* Ethernet1 depends on CM-A510 option E2 */
  148. &pcie1 { status = "disabled"; };
  149. /* SATA connector */
  150. &sata0 { status = "okay"; };
  151. /*
  152. * SDIO0 is connected to a MMC/SD/SDIO socket, I2C GPIO expander has
  153. * VCC_MMC_ENABLE on GPIO13, MMC_WP on GPIO10
  154. */
  155. &sdio0 {
  156. vmmc-supply = <&mmc_power>;
  157. wp-gpios = <&gpio_ext 10 GPIO_ACTIVE_LOW>;
  158. status = "okay";
  159. };
  160. /* UART0 on RS232 mini-connector */
  161. &uart0 { status = "okay"; };
  162. /* UART2 on pin headers */
  163. &uart2 { status = "okay"; };