qcom-apq8064-ifc6410.dts 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382
  1. // SPDX-License-Identifier: GPL-2.0
  2. #include "qcom-apq8064-v2.0.dtsi"
  3. #include <dt-bindings/gpio/gpio.h>
  4. #include <dt-bindings/leds/common.h>
  5. #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
  6. / {
  7. model = "Qualcomm APQ8064/IFC6410";
  8. compatible = "qcom,apq8064-ifc6410", "qcom,apq8064";
  9. aliases {
  10. serial0 = &gsbi7_serial;
  11. serial1 = &gsbi6_serial;
  12. i2c0 = &gsbi1_i2c;
  13. i2c1 = &gsbi2_i2c;
  14. i2c2 = &gsbi3_i2c;
  15. i2c3 = &gsbi4_i2c;
  16. spi0 = &gsbi5_spi;
  17. };
  18. chosen {
  19. stdout-path = "serial0:115200n8";
  20. };
  21. pwrseq {
  22. compatible = "simple-bus";
  23. sdcc4_pwrseq: sdcc4_pwrseq {
  24. pinctrl-names = "default";
  25. pinctrl-0 = <&wlan_default_gpios>;
  26. compatible = "mmc-pwrseq-simple";
  27. reset-gpios = <&pm8921_gpio 43 GPIO_ACTIVE_LOW>;
  28. };
  29. };
  30. leds {
  31. compatible = "gpio-leds";
  32. pinctrl-names = "default";
  33. pinctrl-0 = <&notify_led>;
  34. led@1 {
  35. label = "apq8064:green:user1";
  36. color = <LED_COLOR_ID_GREEN>;
  37. gpios = <&pm8921_gpio 18 GPIO_ACTIVE_HIGH>;
  38. default-state = "on";
  39. };
  40. };
  41. hdmi-out {
  42. compatible = "hdmi-connector";
  43. type = "d";
  44. port {
  45. hdmi_con: endpoint {
  46. remote-endpoint = <&hdmi_out>;
  47. };
  48. };
  49. };
  50. soc {
  51. pinctrl@800000 {
  52. card_detect: card_detect {
  53. mux {
  54. pins = "gpio26";
  55. function = "gpio";
  56. bias-disable;
  57. };
  58. };
  59. pcie_pins: pcie_pinmux {
  60. mux {
  61. pins = "gpio27";
  62. function = "gpio";
  63. };
  64. conf {
  65. pins = "gpio27";
  66. drive-strength = <12>;
  67. bias-disable;
  68. };
  69. };
  70. };
  71. rpm@108000 {
  72. regulators {
  73. vin_lvs1_3_6-supply = <&pm8921_s4>;
  74. vin_lvs2-supply = <&pm8921_s1>;
  75. vin_lvs4_5_7-supply = <&pm8921_s4>;
  76. vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
  77. vdd_l24-supply = <&pm8921_s1>;
  78. vdd_l25-supply = <&pm8921_s1>;
  79. vdd_l26-supply = <&pm8921_s7>;
  80. vdd_l27-supply = <&pm8921_s7>;
  81. vdd_l28-supply = <&pm8921_s7>;
  82. /* Buck SMPS */
  83. s1 {
  84. regulator-always-on;
  85. regulator-min-microvolt = <1225000>;
  86. regulator-max-microvolt = <1225000>;
  87. qcom,switch-mode-frequency = <3200000>;
  88. bias-pull-down;
  89. };
  90. s3 {
  91. regulator-min-microvolt = <1000000>;
  92. regulator-max-microvolt = <1400000>;
  93. qcom,switch-mode-frequency = <4800000>;
  94. };
  95. s4 {
  96. regulator-min-microvolt = <1800000>;
  97. regulator-max-microvolt = <1800000>;
  98. qcom,switch-mode-frequency = <3200000>;
  99. };
  100. s7 {
  101. regulator-min-microvolt = <1300000>;
  102. regulator-max-microvolt = <1300000>;
  103. qcom,switch-mode-frequency = <3200000>;
  104. };
  105. l3 {
  106. regulator-min-microvolt = <3050000>;
  107. regulator-max-microvolt = <3300000>;
  108. bias-pull-down;
  109. };
  110. l4 {
  111. regulator-min-microvolt = <1000000>;
  112. regulator-max-microvolt = <1800000>;
  113. bias-pull-down;
  114. };
  115. l5 {
  116. regulator-min-microvolt = <2750000>;
  117. regulator-max-microvolt = <3000000>;
  118. bias-pull-down;
  119. };
  120. l6 {
  121. regulator-min-microvolt = <2950000>;
  122. regulator-max-microvolt = <2950000>;
  123. bias-pull-down;
  124. };
  125. l23 {
  126. regulator-min-microvolt = <1700000>;
  127. regulator-max-microvolt = <1900000>;
  128. bias-pull-down;
  129. };
  130. lvs1 {
  131. bias-pull-down;
  132. };
  133. lvs6 {
  134. bias-pull-down;
  135. };
  136. };
  137. };
  138. ext_3p3v: regulator-fixed@1 {
  139. compatible = "regulator-fixed";
  140. regulator-min-microvolt = <3300000>;
  141. regulator-max-microvolt = <3300000>;
  142. regulator-name = "ext_3p3v";
  143. regulator-type = "voltage";
  144. startup-delay-us = <0>;
  145. gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>;
  146. enable-active-high;
  147. regulator-boot-on;
  148. };
  149. gsbi3: gsbi@16200000 {
  150. status = "okay";
  151. qcom,mode = <GSBI_PROT_I2C>;
  152. i2c@16280000 {
  153. status = "okay";
  154. };
  155. };
  156. gsbi@16300000 {
  157. status = "okay";
  158. qcom,mode = <GSBI_PROT_I2C>;
  159. /* CAM I2C MIPI-CSI connector */
  160. i2c@16380000 {
  161. status = "okay";
  162. };
  163. };
  164. gsbi@12440000 {
  165. status = "okay";
  166. qcom,mode = <GSBI_PROT_I2C>;
  167. i2c@12460000 {
  168. status = "okay";
  169. clock-frequency = <200000>;
  170. eeprom@52 {
  171. compatible = "atmel,24c128";
  172. reg = <0x52>;
  173. pagesize = <32>;
  174. };
  175. };
  176. };
  177. gsbi@1a200000 {
  178. qcom,mode = <GSBI_PROT_SPI>;
  179. status = "okay";
  180. spi4: spi@1a280000 {
  181. status = "okay";
  182. num-cs = <1>;
  183. cs-gpios = <&tlmm_pinmux 53 0>;
  184. };
  185. };
  186. gsbi@16500000 {
  187. status = "okay";
  188. qcom,mode = <GSBI_PROT_UART_W_FC>;
  189. serial@16540000 {
  190. status = "okay";
  191. pinctrl-names = "default";
  192. pinctrl-0 = <&gsbi6_uart_4pins>;
  193. };
  194. };
  195. gsbi@16600000 {
  196. status = "okay";
  197. qcom,mode = <GSBI_PROT_I2C_UART>;
  198. serial@16640000 {
  199. status = "okay";
  200. pinctrl-names = "default";
  201. pinctrl-0 = <&gsbi7_uart_2pins>;
  202. };
  203. };
  204. sata_phy0: phy@1b400000 {
  205. status = "okay";
  206. };
  207. sata0: sata@29000000 {
  208. status = "okay";
  209. target-supply = <&pm8921_s4>;
  210. };
  211. /* OTG */
  212. usb@12500000 {
  213. status = "okay";
  214. dr_mode = "otg";
  215. ulpi {
  216. phy {
  217. v3p3-supply = <&pm8921_l3>;
  218. v1p8-supply = <&pm8921_l4>;
  219. };
  220. };
  221. };
  222. usb@12520000 {
  223. status = "okay";
  224. dr_mode = "host";
  225. ulpi {
  226. phy {
  227. v3p3-supply = <&pm8921_l3>;
  228. v1p8-supply = <&pm8921_l23>;
  229. };
  230. };
  231. };
  232. usb@12530000 {
  233. status = "okay";
  234. dr_mode = "host";
  235. ulpi {
  236. phy {
  237. v3p3-supply = <&pm8921_l3>;
  238. v1p8-supply = <&pm8921_l23>;
  239. };
  240. };
  241. };
  242. pci@1b500000 {
  243. status = "okay";
  244. vdda-supply = <&pm8921_s3>;
  245. vdda_phy-supply = <&pm8921_lvs6>;
  246. vdda_refclk-supply = <&ext_3p3v>;
  247. pinctrl-0 = <&pcie_pins>;
  248. pinctrl-names = "default";
  249. perst-gpios = <&tlmm_pinmux 27 GPIO_ACTIVE_LOW>;
  250. };
  251. qcom,ssbi@500000 {
  252. pmic@0 {
  253. gpio@150 {
  254. wlan_default_gpios: wlan-gpios-state {
  255. pinconf {
  256. pins = "gpio43";
  257. function = "normal";
  258. bias-disable;
  259. power-source = <PM8921_GPIO_S4>;
  260. };
  261. };
  262. notify_led: nled-state {
  263. pinconf {
  264. pins = "gpio18";
  265. function = "normal";
  266. bias-disable;
  267. power-source = <PM8921_GPIO_S4>;
  268. };
  269. };
  270. };
  271. };
  272. };
  273. amba {
  274. /* eMMC */
  275. sdcc1: mmc@12400000 {
  276. status = "okay";
  277. vmmc-supply = <&pm8921_l5>;
  278. vqmmc-supply = <&pm8921_s4>;
  279. };
  280. /* External micro SD card */
  281. sdcc3: mmc@12180000 {
  282. status = "okay";
  283. vmmc-supply = <&pm8921_l6>;
  284. pinctrl-names = "default";
  285. pinctrl-0 = <&card_detect>;
  286. cd-gpios = <&tlmm_pinmux 26 GPIO_ACTIVE_LOW>;
  287. };
  288. /* WLAN */
  289. sdcc4: mmc@121c0000 {
  290. status = "okay";
  291. vmmc-supply = <&ext_3p3v>;
  292. vqmmc-supply = <&pm8921_lvs1>;
  293. mmc-pwrseq = <&sdcc4_pwrseq>;
  294. };
  295. };
  296. hdmi-tx@4a00000 {
  297. status = "okay";
  298. core-vdda-supply = <&pm8921_hdmi_switch>;
  299. hpd-gpios = <&tlmm_pinmux 72 GPIO_ACTIVE_HIGH>;
  300. ports {
  301. port@0 {
  302. endpoint {
  303. remote-endpoint = <&mdp_dtv_out>;
  304. };
  305. };
  306. port@1 {
  307. endpoint {
  308. remote-endpoint = <&hdmi_con>;
  309. };
  310. };
  311. };
  312. };
  313. hdmi-phy@4a00400 {
  314. status = "okay";
  315. core-vdda-supply = <&pm8921_hdmi_switch>;
  316. };
  317. mdp@5100000 {
  318. status = "okay";
  319. ports {
  320. port@3 {
  321. endpoint {
  322. remote-endpoint = <&hdmi_in>;
  323. };
  324. };
  325. };
  326. };
  327. };
  328. };