qcom-msm8974.dtsi 42 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936
  1. // SPDX-License-Identifier: GPL-2.0
  2. /dts-v1/;
  3. #include <dt-bindings/interconnect/qcom,msm8974.h>
  4. #include <dt-bindings/interrupt-controller/arm-gic.h>
  5. #include <dt-bindings/clock/qcom,gcc-msm8974.h>
  6. #include <dt-bindings/clock/qcom,mmcc-msm8974.h>
  7. #include <dt-bindings/clock/qcom,rpmcc.h>
  8. #include <dt-bindings/reset/qcom,gcc-msm8974.h>
  9. #include <dt-bindings/gpio/gpio.h>
  10. / {
  11. #address-cells = <1>;
  12. #size-cells = <1>;
  13. interrupt-parent = <&intc>;
  14. clocks {
  15. xo_board: xo_board {
  16. compatible = "fixed-clock";
  17. #clock-cells = <0>;
  18. clock-frequency = <19200000>;
  19. };
  20. sleep_clk: sleep_clk {
  21. compatible = "fixed-clock";
  22. #clock-cells = <0>;
  23. clock-frequency = <32768>;
  24. };
  25. };
  26. cpus {
  27. #address-cells = <1>;
  28. #size-cells = <0>;
  29. interrupts = <GIC_PPI 9 0xf04>;
  30. CPU0: cpu@0 {
  31. compatible = "qcom,krait";
  32. enable-method = "qcom,kpss-acc-v2";
  33. device_type = "cpu";
  34. reg = <0>;
  35. next-level-cache = <&L2>;
  36. qcom,acc = <&acc0>;
  37. qcom,saw = <&saw0>;
  38. cpu-idle-states = <&CPU_SPC>;
  39. };
  40. CPU1: cpu@1 {
  41. compatible = "qcom,krait";
  42. enable-method = "qcom,kpss-acc-v2";
  43. device_type = "cpu";
  44. reg = <1>;
  45. next-level-cache = <&L2>;
  46. qcom,acc = <&acc1>;
  47. qcom,saw = <&saw1>;
  48. cpu-idle-states = <&CPU_SPC>;
  49. };
  50. CPU2: cpu@2 {
  51. compatible = "qcom,krait";
  52. enable-method = "qcom,kpss-acc-v2";
  53. device_type = "cpu";
  54. reg = <2>;
  55. next-level-cache = <&L2>;
  56. qcom,acc = <&acc2>;
  57. qcom,saw = <&saw2>;
  58. cpu-idle-states = <&CPU_SPC>;
  59. };
  60. CPU3: cpu@3 {
  61. compatible = "qcom,krait";
  62. enable-method = "qcom,kpss-acc-v2";
  63. device_type = "cpu";
  64. reg = <3>;
  65. next-level-cache = <&L2>;
  66. qcom,acc = <&acc3>;
  67. qcom,saw = <&saw3>;
  68. cpu-idle-states = <&CPU_SPC>;
  69. };
  70. L2: l2-cache {
  71. compatible = "cache";
  72. cache-level = <2>;
  73. qcom,saw = <&saw_l2>;
  74. };
  75. idle-states {
  76. CPU_SPC: spc {
  77. compatible = "qcom,idle-state-spc",
  78. "arm,idle-state";
  79. entry-latency-us = <150>;
  80. exit-latency-us = <200>;
  81. min-residency-us = <2000>;
  82. };
  83. };
  84. };
  85. firmware {
  86. scm {
  87. compatible = "qcom,scm-msm8974", "qcom,scm";
  88. clocks = <&gcc GCC_CE1_CLK>, <&gcc GCC_CE1_AXI_CLK>, <&gcc GCC_CE1_AHB_CLK>;
  89. clock-names = "core", "bus", "iface";
  90. };
  91. };
  92. memory {
  93. device_type = "memory";
  94. reg = <0x0 0x0>;
  95. };
  96. pmu {
  97. compatible = "qcom,krait-pmu";
  98. interrupts = <GIC_PPI 7 0xf04>;
  99. };
  100. reserved-memory {
  101. #address-cells = <1>;
  102. #size-cells = <1>;
  103. ranges;
  104. mpss_region: mpss@8000000 {
  105. reg = <0x08000000 0x5100000>;
  106. no-map;
  107. };
  108. mba_region: mba@d100000 {
  109. reg = <0x0d100000 0x100000>;
  110. no-map;
  111. };
  112. wcnss_region: wcnss@d200000 {
  113. reg = <0x0d200000 0xa00000>;
  114. no-map;
  115. };
  116. adsp_region: adsp@dc00000 {
  117. reg = <0x0dc00000 0x1900000>;
  118. no-map;
  119. };
  120. venus_region: memory@f500000 {
  121. reg = <0x0f500000 0x500000>;
  122. no-map;
  123. };
  124. smem_region: smem@fa00000 {
  125. reg = <0xfa00000 0x200000>;
  126. no-map;
  127. };
  128. tz_region: memory@fc00000 {
  129. reg = <0x0fc00000 0x160000>;
  130. no-map;
  131. };
  132. rfsa_mem: memory@fd60000 {
  133. reg = <0x0fd60000 0x20000>;
  134. no-map;
  135. };
  136. rmtfs@fd80000 {
  137. compatible = "qcom,rmtfs-mem";
  138. reg = <0x0fd80000 0x180000>;
  139. no-map;
  140. qcom,client-id = <1>;
  141. };
  142. };
  143. smem {
  144. compatible = "qcom,smem";
  145. memory-region = <&smem_region>;
  146. qcom,rpm-msg-ram = <&rpm_msg_ram>;
  147. hwlocks = <&tcsr_mutex 3>;
  148. };
  149. smp2p-adsp {
  150. compatible = "qcom,smp2p";
  151. qcom,smem = <443>, <429>;
  152. interrupt-parent = <&intc>;
  153. interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
  154. qcom,ipc = <&apcs 8 10>;
  155. qcom,local-pid = <0>;
  156. qcom,remote-pid = <2>;
  157. adsp_smp2p_out: master-kernel {
  158. qcom,entry-name = "master-kernel";
  159. #qcom,smem-state-cells = <1>;
  160. };
  161. adsp_smp2p_in: slave-kernel {
  162. qcom,entry-name = "slave-kernel";
  163. interrupt-controller;
  164. #interrupt-cells = <2>;
  165. };
  166. };
  167. smp2p-modem {
  168. compatible = "qcom,smp2p";
  169. qcom,smem = <435>, <428>;
  170. interrupt-parent = <&intc>;
  171. interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
  172. qcom,ipc = <&apcs 8 14>;
  173. qcom,local-pid = <0>;
  174. qcom,remote-pid = <1>;
  175. modem_smp2p_out: master-kernel {
  176. qcom,entry-name = "master-kernel";
  177. #qcom,smem-state-cells = <1>;
  178. };
  179. modem_smp2p_in: slave-kernel {
  180. qcom,entry-name = "slave-kernel";
  181. interrupt-controller;
  182. #interrupt-cells = <2>;
  183. };
  184. };
  185. smp2p-wcnss {
  186. compatible = "qcom,smp2p";
  187. qcom,smem = <451>, <431>;
  188. interrupt-parent = <&intc>;
  189. interrupts = <GIC_SPI 143 IRQ_TYPE_EDGE_RISING>;
  190. qcom,ipc = <&apcs 8 18>;
  191. qcom,local-pid = <0>;
  192. qcom,remote-pid = <4>;
  193. wcnss_smp2p_out: master-kernel {
  194. qcom,entry-name = "master-kernel";
  195. #qcom,smem-state-cells = <1>;
  196. };
  197. wcnss_smp2p_in: slave-kernel {
  198. qcom,entry-name = "slave-kernel";
  199. interrupt-controller;
  200. #interrupt-cells = <2>;
  201. };
  202. };
  203. smsm {
  204. compatible = "qcom,smsm";
  205. #address-cells = <1>;
  206. #size-cells = <0>;
  207. qcom,ipc-1 = <&apcs 8 13>;
  208. qcom,ipc-2 = <&apcs 8 9>;
  209. qcom,ipc-3 = <&apcs 8 19>;
  210. apps_smsm: apps@0 {
  211. reg = <0>;
  212. #qcom,smem-state-cells = <1>;
  213. };
  214. modem_smsm: modem@1 {
  215. reg = <1>;
  216. interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
  217. interrupt-controller;
  218. #interrupt-cells = <2>;
  219. };
  220. adsp_smsm: adsp@2 {
  221. reg = <2>;
  222. interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>;
  223. interrupt-controller;
  224. #interrupt-cells = <2>;
  225. };
  226. wcnss_smsm: wcnss@7 {
  227. reg = <7>;
  228. interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>;
  229. interrupt-controller;
  230. #interrupt-cells = <2>;
  231. };
  232. };
  233. smd {
  234. compatible = "qcom,smd";
  235. rpm {
  236. interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
  237. qcom,ipc = <&apcs 8 0>;
  238. qcom,smd-edge = <15>;
  239. rpm_requests: rpm-requests {
  240. compatible = "qcom,rpm-msm8974";
  241. qcom,smd-channels = "rpm_requests";
  242. rpmcc: clock-controller {
  243. compatible = "qcom,rpmcc-msm8974", "qcom,rpmcc";
  244. #clock-cells = <1>;
  245. };
  246. };
  247. };
  248. };
  249. soc: soc {
  250. #address-cells = <1>;
  251. #size-cells = <1>;
  252. ranges;
  253. compatible = "simple-bus";
  254. intc: interrupt-controller@f9000000 {
  255. compatible = "qcom,msm-qgic2";
  256. interrupt-controller;
  257. #interrupt-cells = <3>;
  258. reg = <0xf9000000 0x1000>,
  259. <0xf9002000 0x1000>;
  260. };
  261. apcs: syscon@f9011000 {
  262. compatible = "syscon";
  263. reg = <0xf9011000 0x1000>;
  264. };
  265. timer@f9020000 {
  266. #address-cells = <1>;
  267. #size-cells = <1>;
  268. ranges;
  269. compatible = "arm,armv7-timer-mem";
  270. reg = <0xf9020000 0x1000>;
  271. clock-frequency = <19200000>;
  272. frame@f9021000 {
  273. frame-number = <0>;
  274. interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
  275. <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
  276. reg = <0xf9021000 0x1000>,
  277. <0xf9022000 0x1000>;
  278. };
  279. frame@f9023000 {
  280. frame-number = <1>;
  281. interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
  282. reg = <0xf9023000 0x1000>;
  283. status = "disabled";
  284. };
  285. frame@f9024000 {
  286. frame-number = <2>;
  287. interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
  288. reg = <0xf9024000 0x1000>;
  289. status = "disabled";
  290. };
  291. frame@f9025000 {
  292. frame-number = <3>;
  293. interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
  294. reg = <0xf9025000 0x1000>;
  295. status = "disabled";
  296. };
  297. frame@f9026000 {
  298. frame-number = <4>;
  299. interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
  300. reg = <0xf9026000 0x1000>;
  301. status = "disabled";
  302. };
  303. frame@f9027000 {
  304. frame-number = <5>;
  305. interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
  306. reg = <0xf9027000 0x1000>;
  307. status = "disabled";
  308. };
  309. frame@f9028000 {
  310. frame-number = <6>;
  311. interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
  312. reg = <0xf9028000 0x1000>;
  313. status = "disabled";
  314. };
  315. };
  316. saw0: power-controller@f9089000 {
  317. compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2";
  318. reg = <0xf9089000 0x1000>, <0xf9009000 0x1000>;
  319. };
  320. saw1: power-controller@f9099000 {
  321. compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2";
  322. reg = <0xf9099000 0x1000>, <0xf9009000 0x1000>;
  323. };
  324. saw2: power-controller@f90a9000 {
  325. compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2";
  326. reg = <0xf90a9000 0x1000>, <0xf9009000 0x1000>;
  327. };
  328. saw3: power-controller@f90b9000 {
  329. compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2";
  330. reg = <0xf90b9000 0x1000>, <0xf9009000 0x1000>;
  331. };
  332. saw_l2: power-controller@f9012000 {
  333. compatible = "qcom,saw2";
  334. reg = <0xf9012000 0x1000>;
  335. regulator;
  336. };
  337. acc0: clock-controller@f9088000 {
  338. compatible = "qcom,kpss-acc-v2";
  339. reg = <0xf9088000 0x1000>, <0xf9008000 0x1000>;
  340. };
  341. acc1: clock-controller@f9098000 {
  342. compatible = "qcom,kpss-acc-v2";
  343. reg = <0xf9098000 0x1000>, <0xf9008000 0x1000>;
  344. };
  345. acc2: clock-controller@f90a8000 {
  346. compatible = "qcom,kpss-acc-v2";
  347. reg = <0xf90a8000 0x1000>, <0xf9008000 0x1000>;
  348. };
  349. acc3: clock-controller@f90b8000 {
  350. compatible = "qcom,kpss-acc-v2";
  351. reg = <0xf90b8000 0x1000>, <0xf9008000 0x1000>;
  352. };
  353. sdhc_1: mmc@f9824900 {
  354. compatible = "qcom,msm8974-sdhci", "qcom,sdhci-msm-v4";
  355. reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
  356. reg-names = "hc", "core";
  357. interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
  358. <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
  359. interrupt-names = "hc_irq", "pwr_irq";
  360. clocks = <&gcc GCC_SDCC1_AHB_CLK>,
  361. <&gcc GCC_SDCC1_APPS_CLK>,
  362. <&xo_board>;
  363. clock-names = "iface", "core", "xo";
  364. bus-width = <8>;
  365. non-removable;
  366. status = "disabled";
  367. };
  368. sdhc_3: mmc@f9864900 {
  369. compatible = "qcom,msm8974-sdhci", "qcom,sdhci-msm-v4";
  370. reg = <0xf9864900 0x11c>, <0xf9864000 0x800>;
  371. reg-names = "hc", "core";
  372. interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
  373. <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
  374. interrupt-names = "hc_irq", "pwr_irq";
  375. clocks = <&gcc GCC_SDCC3_AHB_CLK>,
  376. <&gcc GCC_SDCC3_APPS_CLK>,
  377. <&xo_board>;
  378. clock-names = "iface", "core", "xo";
  379. bus-width = <4>;
  380. #address-cells = <1>;
  381. #size-cells = <0>;
  382. status = "disabled";
  383. };
  384. sdhc_2: mmc@f98a4900 {
  385. compatible = "qcom,msm8974-sdhci", "qcom,sdhci-msm-v4";
  386. reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
  387. reg-names = "hc", "core";
  388. interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
  389. <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
  390. interrupt-names = "hc_irq", "pwr_irq";
  391. clocks = <&gcc GCC_SDCC2_AHB_CLK>,
  392. <&gcc GCC_SDCC2_APPS_CLK>,
  393. <&xo_board>;
  394. clock-names = "iface", "core", "xo";
  395. bus-width = <4>;
  396. #address-cells = <1>;
  397. #size-cells = <0>;
  398. status = "disabled";
  399. };
  400. blsp1_uart1: serial@f991d000 {
  401. compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
  402. reg = <0xf991d000 0x1000>;
  403. interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
  404. clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
  405. clock-names = "core", "iface";
  406. status = "disabled";
  407. };
  408. blsp1_uart2: serial@f991e000 {
  409. compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
  410. reg = <0xf991e000 0x1000>;
  411. interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
  412. clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
  413. clock-names = "core", "iface";
  414. pinctrl-names = "default";
  415. pinctrl-0 = <&blsp1_uart2_default>;
  416. status = "disabled";
  417. };
  418. blsp1_i2c1: i2c@f9923000 {
  419. status = "disabled";
  420. compatible = "qcom,i2c-qup-v2.1.1";
  421. reg = <0xf9923000 0x1000>;
  422. interrupts = <0 95 IRQ_TYPE_LEVEL_HIGH>;
  423. clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
  424. clock-names = "core", "iface";
  425. pinctrl-names = "default", "sleep";
  426. pinctrl-0 = <&blsp1_i2c1_default>;
  427. pinctrl-1 = <&blsp1_i2c1_sleep>;
  428. #address-cells = <1>;
  429. #size-cells = <0>;
  430. };
  431. blsp1_i2c2: i2c@f9924000 {
  432. status = "disabled";
  433. compatible = "qcom,i2c-qup-v2.1.1";
  434. reg = <0xf9924000 0x1000>;
  435. interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
  436. clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
  437. clock-names = "core", "iface";
  438. pinctrl-names = "default", "sleep";
  439. pinctrl-0 = <&blsp1_i2c2_default>;
  440. pinctrl-1 = <&blsp1_i2c2_sleep>;
  441. #address-cells = <1>;
  442. #size-cells = <0>;
  443. };
  444. blsp1_i2c3: i2c@f9925000 {
  445. status = "disabled";
  446. compatible = "qcom,i2c-qup-v2.1.1";
  447. reg = <0xf9925000 0x1000>;
  448. interrupts = <0 97 IRQ_TYPE_LEVEL_HIGH>;
  449. clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
  450. clock-names = "core", "iface";
  451. pinctrl-names = "default", "sleep";
  452. pinctrl-0 = <&blsp1_i2c3_default>;
  453. pinctrl-1 = <&blsp1_i2c3_sleep>;
  454. #address-cells = <1>;
  455. #size-cells = <0>;
  456. };
  457. blsp1_i2c6: i2c@f9928000 {
  458. status = "disabled";
  459. compatible = "qcom,i2c-qup-v2.1.1";
  460. reg = <0xf9928000 0x1000>;
  461. interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
  462. clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
  463. clock-names = "core", "iface";
  464. pinctrl-names = "default", "sleep";
  465. pinctrl-0 = <&blsp1_i2c6_default>;
  466. pinctrl-1 = <&blsp1_i2c6_sleep>;
  467. #address-cells = <1>;
  468. #size-cells = <0>;
  469. };
  470. blsp2_dma: dma-controller@f9944000 {
  471. compatible = "qcom,bam-v1.4.0";
  472. reg = <0xf9944000 0x19000>;
  473. interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
  474. clocks = <&gcc GCC_BLSP2_AHB_CLK>;
  475. clock-names = "bam_clk";
  476. #dma-cells = <1>;
  477. qcom,ee = <0>;
  478. };
  479. blsp2_uart1: serial@f995d000 {
  480. compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
  481. reg = <0xf995d000 0x1000>;
  482. interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
  483. clocks = <&gcc GCC_BLSP2_UART1_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
  484. clock-names = "core", "iface";
  485. pinctrl-names = "default", "sleep";
  486. pinctrl-0 = <&blsp2_uart1_default>;
  487. pinctrl-1 = <&blsp2_uart1_sleep>;
  488. status = "disabled";
  489. };
  490. blsp2_uart2: serial@f995e000 {
  491. compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
  492. reg = <0xf995e000 0x1000>;
  493. interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
  494. clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
  495. clock-names = "core", "iface";
  496. status = "disabled";
  497. };
  498. blsp2_uart4: serial@f9960000 {
  499. compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
  500. reg = <0xf9960000 0x1000>;
  501. interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
  502. clocks = <&gcc GCC_BLSP2_UART4_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
  503. clock-names = "core", "iface";
  504. pinctrl-names = "default";
  505. pinctrl-0 = <&blsp2_uart4_default>;
  506. status = "disabled";
  507. };
  508. blsp2_i2c2: i2c@f9964000 {
  509. status = "disabled";
  510. compatible = "qcom,i2c-qup-v2.1.1";
  511. reg = <0xf9964000 0x1000>;
  512. interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
  513. clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
  514. clock-names = "core", "iface";
  515. pinctrl-names = "default", "sleep";
  516. pinctrl-0 = <&blsp2_i2c2_default>;
  517. pinctrl-1 = <&blsp2_i2c2_sleep>;
  518. #address-cells = <1>;
  519. #size-cells = <0>;
  520. };
  521. blsp2_i2c5: i2c@f9967000 {
  522. status = "disabled";
  523. compatible = "qcom,i2c-qup-v2.1.1";
  524. reg = <0xf9967000 0x1000>;
  525. interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
  526. clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
  527. clock-names = "core", "iface";
  528. dmas = <&blsp2_dma 20>, <&blsp2_dma 21>;
  529. dma-names = "tx", "rx";
  530. pinctrl-names = "default", "sleep";
  531. pinctrl-0 = <&blsp2_i2c5_default>;
  532. pinctrl-1 = <&blsp2_i2c5_sleep>;
  533. #address-cells = <1>;
  534. #size-cells = <0>;
  535. };
  536. blsp2_i2c6: i2c@f9968000 {
  537. status = "disabled";
  538. compatible = "qcom,i2c-qup-v2.1.1";
  539. reg = <0xf9968000 0x1000>;
  540. interrupts = <0 106 IRQ_TYPE_LEVEL_HIGH>;
  541. clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
  542. clock-names = "core", "iface";
  543. pinctrl-names = "default", "sleep";
  544. pinctrl-0 = <&blsp2_i2c6_default>;
  545. pinctrl-1 = <&blsp2_i2c6_sleep>;
  546. #address-cells = <1>;
  547. #size-cells = <0>;
  548. };
  549. otg: usb@f9a55000 {
  550. compatible = "qcom,ci-hdrc";
  551. reg = <0xf9a55000 0x200>,
  552. <0xf9a55200 0x200>;
  553. interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
  554. clocks = <&gcc GCC_USB_HS_AHB_CLK>,
  555. <&gcc GCC_USB_HS_SYSTEM_CLK>;
  556. clock-names = "iface", "core";
  557. assigned-clocks = <&gcc GCC_USB_HS_SYSTEM_CLK>;
  558. assigned-clock-rates = <75000000>;
  559. resets = <&gcc GCC_USB_HS_BCR>;
  560. reset-names = "core";
  561. phy_type = "ulpi";
  562. dr_mode = "otg";
  563. ahb-burst-config = <0>;
  564. phy-names = "usb-phy";
  565. status = "disabled";
  566. #reset-cells = <1>;
  567. ulpi {
  568. usb_hs1_phy: phy@a {
  569. compatible = "qcom,usb-hs-phy-msm8974",
  570. "qcom,usb-hs-phy";
  571. #phy-cells = <0>;
  572. clocks = <&xo_board>, <&gcc GCC_USB2A_PHY_SLEEP_CLK>;
  573. clock-names = "ref", "sleep";
  574. resets = <&gcc GCC_USB2A_PHY_BCR>, <&otg 0>;
  575. reset-names = "phy", "por";
  576. status = "disabled";
  577. };
  578. usb_hs2_phy: phy@b {
  579. compatible = "qcom,usb-hs-phy-msm8974",
  580. "qcom,usb-hs-phy";
  581. #phy-cells = <0>;
  582. clocks = <&xo_board>, <&gcc GCC_USB2B_PHY_SLEEP_CLK>;
  583. clock-names = "ref", "sleep";
  584. resets = <&gcc GCC_USB2B_PHY_BCR>, <&otg 1>;
  585. reset-names = "phy", "por";
  586. status = "disabled";
  587. };
  588. };
  589. };
  590. rng@f9bff000 {
  591. compatible = "qcom,prng";
  592. reg = <0xf9bff000 0x200>;
  593. clocks = <&gcc GCC_PRNG_AHB_CLK>;
  594. clock-names = "core";
  595. };
  596. pronto: remoteproc@fb21b000 {
  597. compatible = "qcom,pronto-v2-pil", "qcom,pronto";
  598. reg = <0xfb204000 0x2000>, <0xfb202000 0x1000>, <0xfb21b000 0x3000>;
  599. reg-names = "ccu", "dxe", "pmu";
  600. memory-region = <&wcnss_region>;
  601. interrupts-extended = <&intc GIC_SPI 149 IRQ_TYPE_EDGE_RISING>,
  602. <&wcnss_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
  603. <&wcnss_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
  604. <&wcnss_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
  605. <&wcnss_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
  606. interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";
  607. qcom,smem-states = <&wcnss_smp2p_out 0>;
  608. qcom,smem-state-names = "stop";
  609. status = "disabled";
  610. iris {
  611. compatible = "qcom,wcn3680";
  612. clocks = <&rpmcc RPM_SMD_CXO_A2>;
  613. clock-names = "xo";
  614. };
  615. smd-edge {
  616. interrupts = <GIC_SPI 142 IRQ_TYPE_EDGE_RISING>;
  617. qcom,ipc = <&apcs 8 17>;
  618. qcom,smd-edge = <6>;
  619. wcnss {
  620. compatible = "qcom,wcnss";
  621. qcom,smd-channels = "WCNSS_CTRL";
  622. status = "disabled";
  623. qcom,mmio = <&pronto>;
  624. bt {
  625. compatible = "qcom,wcnss-bt";
  626. };
  627. wifi {
  628. compatible = "qcom,wcnss-wlan";
  629. interrupts = <GIC_SPI 145 IRQ_TYPE_EDGE_RISING>,
  630. <GIC_SPI 146 IRQ_TYPE_EDGE_RISING>;
  631. interrupt-names = "tx", "rx";
  632. qcom,smem-states = <&apps_smsm 10>, <&apps_smsm 9>;
  633. qcom,smem-state-names = "tx-enable",
  634. "tx-rings-empty";
  635. };
  636. };
  637. };
  638. };
  639. sram@fc190000 {
  640. compatible = "qcom,msm8974-rpm-stats";
  641. reg = <0xfc190000 0x10000>;
  642. };
  643. etf@fc307000 {
  644. compatible = "arm,coresight-tmc", "arm,primecell";
  645. reg = <0xfc307000 0x1000>;
  646. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  647. clock-names = "apb_pclk", "atclk";
  648. out-ports {
  649. port {
  650. etf_out: endpoint {
  651. remote-endpoint = <&replicator_in>;
  652. };
  653. };
  654. };
  655. in-ports {
  656. port {
  657. etf_in: endpoint {
  658. remote-endpoint = <&merger_out>;
  659. };
  660. };
  661. };
  662. };
  663. tpiu@fc318000 {
  664. compatible = "arm,coresight-tpiu", "arm,primecell";
  665. reg = <0xfc318000 0x1000>;
  666. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  667. clock-names = "apb_pclk", "atclk";
  668. in-ports {
  669. port {
  670. tpiu_in: endpoint {
  671. remote-endpoint = <&replicator_out1>;
  672. };
  673. };
  674. };
  675. };
  676. funnel@fc31a000 {
  677. compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
  678. reg = <0xfc31a000 0x1000>;
  679. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  680. clock-names = "apb_pclk", "atclk";
  681. in-ports {
  682. #address-cells = <1>;
  683. #size-cells = <0>;
  684. /*
  685. * Not described input ports:
  686. * 0 - not-connected
  687. * 1 - connected trought funnel to Multimedia CPU
  688. * 2 - connected to Wireless CPU
  689. * 3 - not-connected
  690. * 4 - not-connected
  691. * 6 - not-connected
  692. * 7 - connected to STM
  693. */
  694. port@5 {
  695. reg = <5>;
  696. funnel1_in5: endpoint {
  697. remote-endpoint = <&kpss_out>;
  698. };
  699. };
  700. };
  701. out-ports {
  702. port {
  703. funnel1_out: endpoint {
  704. remote-endpoint = <&merger_in1>;
  705. };
  706. };
  707. };
  708. };
  709. funnel@fc31b000 {
  710. compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
  711. reg = <0xfc31b000 0x1000>;
  712. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  713. clock-names = "apb_pclk", "atclk";
  714. in-ports {
  715. #address-cells = <1>;
  716. #size-cells = <0>;
  717. /*
  718. * Not described input ports:
  719. * 0 - connected trought funnel to Audio, Modem and
  720. * Resource and Power Manager CPU's
  721. * 2...7 - not-connected
  722. */
  723. port@1 {
  724. reg = <1>;
  725. merger_in1: endpoint {
  726. remote-endpoint = <&funnel1_out>;
  727. };
  728. };
  729. };
  730. out-ports {
  731. port {
  732. merger_out: endpoint {
  733. remote-endpoint = <&etf_in>;
  734. };
  735. };
  736. };
  737. };
  738. replicator@fc31c000 {
  739. compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
  740. reg = <0xfc31c000 0x1000>;
  741. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  742. clock-names = "apb_pclk", "atclk";
  743. out-ports {
  744. #address-cells = <1>;
  745. #size-cells = <0>;
  746. port@0 {
  747. reg = <0>;
  748. replicator_out0: endpoint {
  749. remote-endpoint = <&etr_in>;
  750. };
  751. };
  752. port@1 {
  753. reg = <1>;
  754. replicator_out1: endpoint {
  755. remote-endpoint = <&tpiu_in>;
  756. };
  757. };
  758. };
  759. in-ports {
  760. port {
  761. replicator_in: endpoint {
  762. remote-endpoint = <&etf_out>;
  763. };
  764. };
  765. };
  766. };
  767. etr@fc322000 {
  768. compatible = "arm,coresight-tmc", "arm,primecell";
  769. reg = <0xfc322000 0x1000>;
  770. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  771. clock-names = "apb_pclk", "atclk";
  772. in-ports {
  773. port {
  774. etr_in: endpoint {
  775. remote-endpoint = <&replicator_out0>;
  776. };
  777. };
  778. };
  779. };
  780. etm@fc33c000 {
  781. compatible = "arm,coresight-etm4x", "arm,primecell";
  782. reg = <0xfc33c000 0x1000>;
  783. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  784. clock-names = "apb_pclk", "atclk";
  785. cpu = <&CPU0>;
  786. out-ports {
  787. port {
  788. etm0_out: endpoint {
  789. remote-endpoint = <&kpss_in0>;
  790. };
  791. };
  792. };
  793. };
  794. etm@fc33d000 {
  795. compatible = "arm,coresight-etm4x", "arm,primecell";
  796. reg = <0xfc33d000 0x1000>;
  797. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  798. clock-names = "apb_pclk", "atclk";
  799. cpu = <&CPU1>;
  800. out-ports {
  801. port {
  802. etm1_out: endpoint {
  803. remote-endpoint = <&kpss_in1>;
  804. };
  805. };
  806. };
  807. };
  808. etm@fc33e000 {
  809. compatible = "arm,coresight-etm4x", "arm,primecell";
  810. reg = <0xfc33e000 0x1000>;
  811. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  812. clock-names = "apb_pclk", "atclk";
  813. cpu = <&CPU2>;
  814. out-ports {
  815. port {
  816. etm2_out: endpoint {
  817. remote-endpoint = <&kpss_in2>;
  818. };
  819. };
  820. };
  821. };
  822. etm@fc33f000 {
  823. compatible = "arm,coresight-etm4x", "arm,primecell";
  824. reg = <0xfc33f000 0x1000>;
  825. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  826. clock-names = "apb_pclk", "atclk";
  827. cpu = <&CPU3>;
  828. out-ports {
  829. port {
  830. etm3_out: endpoint {
  831. remote-endpoint = <&kpss_in3>;
  832. };
  833. };
  834. };
  835. };
  836. /* KPSS funnel, only 4 inputs are used */
  837. funnel@fc345000 {
  838. compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
  839. reg = <0xfc345000 0x1000>;
  840. clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
  841. clock-names = "apb_pclk", "atclk";
  842. in-ports {
  843. #address-cells = <1>;
  844. #size-cells = <0>;
  845. port@0 {
  846. reg = <0>;
  847. kpss_in0: endpoint {
  848. remote-endpoint = <&etm0_out>;
  849. };
  850. };
  851. port@1 {
  852. reg = <1>;
  853. kpss_in1: endpoint {
  854. remote-endpoint = <&etm1_out>;
  855. };
  856. };
  857. port@2 {
  858. reg = <2>;
  859. kpss_in2: endpoint {
  860. remote-endpoint = <&etm2_out>;
  861. };
  862. };
  863. port@3 {
  864. reg = <3>;
  865. kpss_in3: endpoint {
  866. remote-endpoint = <&etm3_out>;
  867. };
  868. };
  869. };
  870. out-ports {
  871. port {
  872. kpss_out: endpoint {
  873. remote-endpoint = <&funnel1_in5>;
  874. };
  875. };
  876. };
  877. };
  878. gcc: clock-controller@fc400000 {
  879. compatible = "qcom,gcc-msm8974";
  880. #clock-cells = <1>;
  881. #reset-cells = <1>;
  882. #power-domain-cells = <1>;
  883. reg = <0xfc400000 0x4000>;
  884. };
  885. rpm_msg_ram: memory@fc428000 {
  886. compatible = "qcom,rpm-msg-ram";
  887. reg = <0xfc428000 0x4000>;
  888. };
  889. bimc: interconnect@fc380000 {
  890. reg = <0xfc380000 0x6a000>;
  891. compatible = "qcom,msm8974-bimc";
  892. #interconnect-cells = <1>;
  893. clock-names = "bus", "bus_a";
  894. clocks = <&rpmcc RPM_SMD_BIMC_CLK>,
  895. <&rpmcc RPM_SMD_BIMC_A_CLK>;
  896. };
  897. snoc: interconnect@fc460000 {
  898. reg = <0xfc460000 0x4000>;
  899. compatible = "qcom,msm8974-snoc";
  900. #interconnect-cells = <1>;
  901. clock-names = "bus", "bus_a";
  902. clocks = <&rpmcc RPM_SMD_SNOC_CLK>,
  903. <&rpmcc RPM_SMD_SNOC_A_CLK>;
  904. };
  905. pnoc: interconnect@fc468000 {
  906. reg = <0xfc468000 0x4000>;
  907. compatible = "qcom,msm8974-pnoc";
  908. #interconnect-cells = <1>;
  909. clock-names = "bus", "bus_a";
  910. clocks = <&rpmcc RPM_SMD_PNOC_CLK>,
  911. <&rpmcc RPM_SMD_PNOC_A_CLK>;
  912. };
  913. ocmemnoc: interconnect@fc470000 {
  914. reg = <0xfc470000 0x4000>;
  915. compatible = "qcom,msm8974-ocmemnoc";
  916. #interconnect-cells = <1>;
  917. clock-names = "bus", "bus_a";
  918. clocks = <&rpmcc RPM_SMD_OCMEMGX_CLK>,
  919. <&rpmcc RPM_SMD_OCMEMGX_A_CLK>;
  920. };
  921. mmssnoc: interconnect@fc478000 {
  922. reg = <0xfc478000 0x4000>;
  923. compatible = "qcom,msm8974-mmssnoc";
  924. #interconnect-cells = <1>;
  925. clock-names = "bus", "bus_a";
  926. clocks = <&mmcc MMSS_S0_AXI_CLK>,
  927. <&mmcc MMSS_S0_AXI_CLK>;
  928. };
  929. cnoc: interconnect@fc480000 {
  930. reg = <0xfc480000 0x4000>;
  931. compatible = "qcom,msm8974-cnoc";
  932. #interconnect-cells = <1>;
  933. clock-names = "bus", "bus_a";
  934. clocks = <&rpmcc RPM_SMD_CNOC_CLK>,
  935. <&rpmcc RPM_SMD_CNOC_A_CLK>;
  936. };
  937. tsens: thermal-sensor@fc4a9000 {
  938. compatible = "qcom,msm8974-tsens";
  939. reg = <0xfc4a9000 0x1000>, /* TM */
  940. <0xfc4a8000 0x1000>; /* SROT */
  941. nvmem-cells = <&tsens_calib>, <&tsens_backup>;
  942. nvmem-cell-names = "calib", "calib_backup";
  943. #qcom,sensors = <11>;
  944. interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
  945. interrupt-names = "uplow";
  946. #thermal-sensor-cells = <1>;
  947. };
  948. restart@fc4ab000 {
  949. compatible = "qcom,pshold";
  950. reg = <0xfc4ab000 0x4>;
  951. };
  952. qfprom: qfprom@fc4bc000 {
  953. compatible = "qcom,msm8974-qfprom", "qcom,qfprom";
  954. reg = <0xfc4bc000 0x1000>;
  955. #address-cells = <1>;
  956. #size-cells = <1>;
  957. tsens_calib: calib@d0 {
  958. reg = <0xd0 0x18>;
  959. };
  960. tsens_backup: backup@440 {
  961. reg = <0x440 0x10>;
  962. };
  963. };
  964. spmi_bus: spmi@fc4cf000 {
  965. compatible = "qcom,spmi-pmic-arb";
  966. reg-names = "core", "intr", "cnfg";
  967. reg = <0xfc4cf000 0x1000>,
  968. <0xfc4cb000 0x1000>,
  969. <0xfc4ca000 0x1000>;
  970. interrupt-names = "periph_irq";
  971. interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
  972. qcom,ee = <0>;
  973. qcom,channel = <0>;
  974. #address-cells = <2>;
  975. #size-cells = <0>;
  976. interrupt-controller;
  977. #interrupt-cells = <4>;
  978. };
  979. bam_dmux_dma: dma-controller@fc834000 {
  980. compatible = "qcom,bam-v1.4.0";
  981. reg = <0xfc834000 0x7000>;
  982. interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
  983. #dma-cells = <1>;
  984. qcom,ee = <0>;
  985. num-channels = <6>;
  986. qcom,num-ees = <1>;
  987. qcom,powered-remotely;
  988. };
  989. remoteproc_mss: remoteproc@fc880000 {
  990. compatible = "qcom,msm8974-mss-pil";
  991. reg = <0xfc880000 0x100>, <0xfc820000 0x020>;
  992. reg-names = "qdsp6", "rmb";
  993. interrupts-extended = <&intc GIC_SPI 24 IRQ_TYPE_EDGE_RISING>,
  994. <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
  995. <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
  996. <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
  997. <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
  998. interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";
  999. clocks = <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>,
  1000. <&gcc GCC_MSS_CFG_AHB_CLK>,
  1001. <&gcc GCC_BOOT_ROM_AHB_CLK>,
  1002. <&xo_board>;
  1003. clock-names = "iface", "bus", "mem", "xo";
  1004. resets = <&gcc GCC_MSS_RESTART>;
  1005. reset-names = "mss_restart";
  1006. qcom,halt-regs = <&tcsr_mutex_block 0x1180 0x1200 0x1280>;
  1007. qcom,smem-states = <&modem_smp2p_out 0>;
  1008. qcom,smem-state-names = "stop";
  1009. status = "disabled";
  1010. mba {
  1011. memory-region = <&mba_region>;
  1012. };
  1013. mpss {
  1014. memory-region = <&mpss_region>;
  1015. };
  1016. bam_dmux: bam-dmux {
  1017. compatible = "qcom,bam-dmux";
  1018. interrupt-parent = <&modem_smsm>;
  1019. interrupts = <1 IRQ_TYPE_EDGE_BOTH>, <11 IRQ_TYPE_EDGE_BOTH>;
  1020. interrupt-names = "pc", "pc-ack";
  1021. qcom,smem-states = <&apps_smsm 1>, <&apps_smsm 11>;
  1022. qcom,smem-state-names = "pc", "pc-ack";
  1023. dmas = <&bam_dmux_dma 4>, <&bam_dmux_dma 5>;
  1024. dma-names = "tx", "rx";
  1025. };
  1026. smd-edge {
  1027. interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>;
  1028. qcom,ipc = <&apcs 8 12>;
  1029. qcom,smd-edge = <0>;
  1030. label = "modem";
  1031. };
  1032. };
  1033. tcsr_mutex_block: syscon@fd484000 {
  1034. compatible = "syscon";
  1035. reg = <0xfd484000 0x2000>;
  1036. };
  1037. tcsr: syscon@fd4a0000 {
  1038. compatible = "syscon";
  1039. reg = <0xfd4a0000 0x10000>;
  1040. };
  1041. tlmm: pinctrl@fd510000 {
  1042. compatible = "qcom,msm8974-pinctrl";
  1043. reg = <0xfd510000 0x4000>;
  1044. gpio-controller;
  1045. gpio-ranges = <&tlmm 0 0 146>;
  1046. #gpio-cells = <2>;
  1047. interrupt-controller;
  1048. #interrupt-cells = <2>;
  1049. interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
  1050. sdc1_off: sdc1-off {
  1051. clk {
  1052. pins = "sdc1_clk";
  1053. bias-disable;
  1054. drive-strength = <2>;
  1055. };
  1056. cmd {
  1057. pins = "sdc1_cmd";
  1058. bias-pull-up;
  1059. drive-strength = <2>;
  1060. };
  1061. data {
  1062. pins = "sdc1_data";
  1063. bias-pull-up;
  1064. drive-strength = <2>;
  1065. };
  1066. };
  1067. sdc2_off: sdc2-off {
  1068. clk {
  1069. pins = "sdc2_clk";
  1070. bias-disable;
  1071. drive-strength = <2>;
  1072. };
  1073. cmd {
  1074. pins = "sdc2_cmd";
  1075. bias-pull-up;
  1076. drive-strength = <2>;
  1077. };
  1078. data {
  1079. pins = "sdc2_data";
  1080. bias-pull-up;
  1081. drive-strength = <2>;
  1082. };
  1083. cd {
  1084. pins = "gpio54";
  1085. bias-disable;
  1086. drive-strength = <2>;
  1087. };
  1088. };
  1089. blsp1_uart2_default: blsp1-uart2-default {
  1090. rx {
  1091. pins = "gpio5";
  1092. function = "blsp_uart2";
  1093. drive-strength = <2>;
  1094. bias-pull-up;
  1095. };
  1096. tx {
  1097. pins = "gpio4";
  1098. function = "blsp_uart2";
  1099. drive-strength = <4>;
  1100. bias-disable;
  1101. };
  1102. };
  1103. blsp2_uart1_default: blsp2-uart1-default {
  1104. tx-rts {
  1105. pins = "gpio41", "gpio44";
  1106. function = "blsp_uart7";
  1107. drive-strength = <2>;
  1108. bias-disable;
  1109. };
  1110. rx-cts {
  1111. pins = "gpio42", "gpio43";
  1112. function = "blsp_uart7";
  1113. drive-strength = <2>;
  1114. bias-pull-up;
  1115. };
  1116. };
  1117. blsp2_uart1_sleep: blsp2-uart1-sleep {
  1118. pins = "gpio41", "gpio42", "gpio43", "gpio44";
  1119. function = "gpio";
  1120. drive-strength = <2>;
  1121. bias-pull-down;
  1122. };
  1123. blsp2_uart4_default: blsp2-uart4-default {
  1124. tx-rts {
  1125. pins = "gpio53", "gpio56";
  1126. function = "blsp_uart10";
  1127. drive-strength = <2>;
  1128. bias-disable;
  1129. };
  1130. rx-cts {
  1131. pins = "gpio54", "gpio55";
  1132. function = "blsp_uart10";
  1133. drive-strength = <2>;
  1134. bias-pull-up;
  1135. };
  1136. };
  1137. blsp1_i2c1_default: blsp1-i2c1-default {
  1138. pins = "gpio2", "gpio3";
  1139. function = "blsp_i2c1";
  1140. drive-strength = <2>;
  1141. bias-disable;
  1142. };
  1143. blsp1_i2c1_sleep: blsp1-i2c1-sleep {
  1144. pins = "gpio2", "gpio3";
  1145. function = "blsp_i2c1";
  1146. drive-strength = <2>;
  1147. bias-pull-up;
  1148. };
  1149. blsp1_i2c2_default: blsp1-i2c2-default {
  1150. pins = "gpio6", "gpio7";
  1151. function = "blsp_i2c2";
  1152. drive-strength = <2>;
  1153. bias-disable;
  1154. };
  1155. blsp1_i2c2_sleep: blsp1-i2c2-sleep {
  1156. pins = "gpio6", "gpio7";
  1157. function = "blsp_i2c2";
  1158. drive-strength = <2>;
  1159. bias-pull-up;
  1160. };
  1161. blsp1_i2c3_default: blsp1-i2c3-default {
  1162. pins = "gpio10", "gpio11";
  1163. function = "blsp_i2c3";
  1164. drive-strength = <2>;
  1165. bias-disable;
  1166. };
  1167. blsp1_i2c3_sleep: blsp1-i2c3-sleep {
  1168. pins = "gpio10", "gpio11";
  1169. function = "blsp_i2c3";
  1170. drive-strength = <2>;
  1171. bias-pull-up;
  1172. };
  1173. /* BLSP1_I2C4 info is missing */
  1174. /* BLSP1_I2C5 info is missing */
  1175. blsp1_i2c6_default: blsp1-i2c6-default {
  1176. pins = "gpio29", "gpio30";
  1177. function = "blsp_i2c6";
  1178. drive-strength = <2>;
  1179. bias-disable;
  1180. };
  1181. blsp1_i2c6_sleep: blsp1-i2c6-sleep {
  1182. pins = "gpio29", "gpio30";
  1183. function = "blsp_i2c6";
  1184. drive-strength = <2>;
  1185. bias-pull-up;
  1186. };
  1187. /* 6 interfaces per QUP, BLSP2 indexes are numbered (n)+6 */
  1188. /* BLSP2_I2C1 info is missing */
  1189. blsp2_i2c2_default: blsp2-i2c2-default {
  1190. pins = "gpio47", "gpio48";
  1191. function = "blsp_i2c8";
  1192. drive-strength = <2>;
  1193. bias-disable;
  1194. };
  1195. blsp2_i2c2_sleep: blsp2-i2c2-sleep {
  1196. pins = "gpio47", "gpio48";
  1197. function = "blsp_i2c8";
  1198. drive-strength = <2>;
  1199. bias-pull-up;
  1200. };
  1201. /* BLSP2_I2C3 info is missing */
  1202. /* BLSP2_I2C4 info is missing */
  1203. blsp2_i2c5_default: blsp2-i2c5-default {
  1204. pins = "gpio83", "gpio84";
  1205. function = "blsp_i2c11";
  1206. drive-strength = <2>;
  1207. bias-disable;
  1208. };
  1209. blsp2_i2c5_sleep: blsp2-i2c5-sleep {
  1210. pins = "gpio83", "gpio84";
  1211. function = "blsp_i2c11";
  1212. drive-strength = <2>;
  1213. bias-pull-up;
  1214. };
  1215. blsp2_i2c6_default: blsp2-i2c6-default {
  1216. pins = "gpio87", "gpio88";
  1217. function = "blsp_i2c12";
  1218. drive-strength = <2>;
  1219. bias-disable;
  1220. };
  1221. blsp2_i2c6_sleep: blsp2-i2c6-sleep {
  1222. pins = "gpio87", "gpio88";
  1223. function = "blsp_i2c12";
  1224. drive-strength = <2>;
  1225. bias-pull-up;
  1226. };
  1227. spi8_default: spi8_default {
  1228. mosi {
  1229. pins = "gpio45";
  1230. function = "blsp_spi8";
  1231. };
  1232. miso {
  1233. pins = "gpio46";
  1234. function = "blsp_spi8";
  1235. };
  1236. cs {
  1237. pins = "gpio47";
  1238. function = "blsp_spi8";
  1239. };
  1240. clk {
  1241. pins = "gpio48";
  1242. function = "blsp_spi8";
  1243. };
  1244. };
  1245. };
  1246. mmcc: clock-controller@fd8c0000 {
  1247. compatible = "qcom,mmcc-msm8974";
  1248. #clock-cells = <1>;
  1249. #reset-cells = <1>;
  1250. #power-domain-cells = <1>;
  1251. reg = <0xfd8c0000 0x6000>;
  1252. };
  1253. mdss: mdss@fd900000 {
  1254. compatible = "qcom,mdss";
  1255. reg = <0xfd900000 0x100>, <0xfd924000 0x1000>;
  1256. reg-names = "mdss_phys", "vbif_phys";
  1257. power-domains = <&mmcc MDSS_GDSC>;
  1258. clocks = <&mmcc MDSS_AHB_CLK>,
  1259. <&mmcc MDSS_AXI_CLK>,
  1260. <&mmcc MDSS_VSYNC_CLK>;
  1261. clock-names = "iface", "bus", "vsync";
  1262. interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
  1263. interrupt-controller;
  1264. #interrupt-cells = <1>;
  1265. status = "disabled";
  1266. #address-cells = <1>;
  1267. #size-cells = <1>;
  1268. ranges;
  1269. mdp: mdp@fd900000 {
  1270. compatible = "qcom,mdp5";
  1271. reg = <0xfd900100 0x22000>;
  1272. reg-names = "mdp_phys";
  1273. interrupt-parent = <&mdss>;
  1274. interrupts = <0>;
  1275. clocks = <&mmcc MDSS_AHB_CLK>,
  1276. <&mmcc MDSS_AXI_CLK>,
  1277. <&mmcc MDSS_MDP_CLK>,
  1278. <&mmcc MDSS_VSYNC_CLK>;
  1279. clock-names = "iface", "bus", "core", "vsync";
  1280. interconnects = <&mmssnoc MNOC_MAS_MDP_PORT0 &bimc BIMC_SLV_EBI_CH0>;
  1281. interconnect-names = "mdp0-mem";
  1282. ports {
  1283. #address-cells = <1>;
  1284. #size-cells = <0>;
  1285. port@0 {
  1286. reg = <0>;
  1287. mdp5_intf1_out: endpoint {
  1288. remote-endpoint = <&dsi0_in>;
  1289. };
  1290. };
  1291. };
  1292. };
  1293. dsi0: dsi@fd922800 {
  1294. compatible = "qcom,mdss-dsi-ctrl";
  1295. reg = <0xfd922800 0x1f8>;
  1296. reg-names = "dsi_ctrl";
  1297. interrupt-parent = <&mdss>;
  1298. interrupts = <4>;
  1299. assigned-clocks = <&mmcc BYTE0_CLK_SRC>, <&mmcc PCLK0_CLK_SRC>;
  1300. assigned-clock-parents = <&dsi0_phy 0>, <&dsi0_phy 1>;
  1301. clocks = <&mmcc MDSS_MDP_CLK>,
  1302. <&mmcc MDSS_AHB_CLK>,
  1303. <&mmcc MDSS_AXI_CLK>,
  1304. <&mmcc MDSS_BYTE0_CLK>,
  1305. <&mmcc MDSS_PCLK0_CLK>,
  1306. <&mmcc MDSS_ESC0_CLK>,
  1307. <&mmcc MMSS_MISC_AHB_CLK>;
  1308. clock-names = "mdp_core",
  1309. "iface",
  1310. "bus",
  1311. "byte",
  1312. "pixel",
  1313. "core",
  1314. "core_mmss";
  1315. phys = <&dsi0_phy>;
  1316. phy-names = "dsi-phy";
  1317. status = "disabled";
  1318. #address-cells = <1>;
  1319. #size-cells = <0>;
  1320. ports {
  1321. #address-cells = <1>;
  1322. #size-cells = <0>;
  1323. port@0 {
  1324. reg = <0>;
  1325. dsi0_in: endpoint {
  1326. remote-endpoint = <&mdp5_intf1_out>;
  1327. };
  1328. };
  1329. port@1 {
  1330. reg = <1>;
  1331. dsi0_out: endpoint {
  1332. };
  1333. };
  1334. };
  1335. };
  1336. dsi0_phy: dsi-phy@fd922a00 {
  1337. compatible = "qcom,dsi-phy-28nm-hpm";
  1338. reg = <0xfd922a00 0xd4>,
  1339. <0xfd922b00 0x280>,
  1340. <0xfd922d80 0x30>;
  1341. reg-names = "dsi_pll",
  1342. "dsi_phy",
  1343. "dsi_phy_regulator";
  1344. #clock-cells = <1>;
  1345. #phy-cells = <0>;
  1346. clocks = <&mmcc MDSS_AHB_CLK>, <&xo_board>;
  1347. clock-names = "iface", "ref";
  1348. status = "disabled";
  1349. };
  1350. };
  1351. gpu: adreno@fdb00000 {
  1352. compatible = "qcom,adreno-330.1", "qcom,adreno";
  1353. reg = <0xfdb00000 0x10000>;
  1354. reg-names = "kgsl_3d0_reg_memory";
  1355. interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
  1356. interrupt-names = "kgsl_3d0_irq";
  1357. clocks = <&mmcc OXILI_GFX3D_CLK>,
  1358. <&mmcc OXILICX_AHB_CLK>,
  1359. <&mmcc OXILICX_AXI_CLK>;
  1360. clock-names = "core", "iface", "mem_iface";
  1361. sram = <&gmu_sram>;
  1362. power-domains = <&mmcc OXILICX_GDSC>;
  1363. operating-points-v2 = <&gpu_opp_table>;
  1364. interconnects = <&mmssnoc MNOC_MAS_GRAPHICS_3D &bimc BIMC_SLV_EBI_CH0>,
  1365. <&ocmemnoc OCMEM_VNOC_MAS_GFX3D &ocmemnoc OCMEM_SLV_OCMEM>;
  1366. interconnect-names = "gfx-mem", "ocmem";
  1367. // iommus = <&gpu_iommu 0>;
  1368. status = "disabled";
  1369. gpu_opp_table: opp-table {
  1370. compatible = "operating-points-v2";
  1371. opp-320000000 {
  1372. opp-hz = /bits/ 64 <320000000>;
  1373. };
  1374. opp-200000000 {
  1375. opp-hz = /bits/ 64 <200000000>;
  1376. };
  1377. opp-27000000 {
  1378. opp-hz = /bits/ 64 <27000000>;
  1379. };
  1380. };
  1381. };
  1382. sram@fdd00000 {
  1383. compatible = "qcom,msm8974-ocmem";
  1384. reg = <0xfdd00000 0x2000>,
  1385. <0xfec00000 0x180000>;
  1386. reg-names = "ctrl", "mem";
  1387. ranges = <0 0xfec00000 0x180000>;
  1388. clocks = <&rpmcc RPM_SMD_OCMEMGX_CLK>,
  1389. <&mmcc OCMEMCX_OCMEMNOC_CLK>;
  1390. clock-names = "core", "iface";
  1391. #address-cells = <1>;
  1392. #size-cells = <1>;
  1393. gmu_sram: gmu-sram@0 {
  1394. reg = <0x0 0x100000>;
  1395. };
  1396. };
  1397. remoteproc_adsp: remoteproc@fe200000 {
  1398. compatible = "qcom,msm8974-adsp-pil";
  1399. reg = <0xfe200000 0x100>;
  1400. interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
  1401. <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
  1402. <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
  1403. <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
  1404. <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
  1405. interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";
  1406. clocks = <&xo_board>;
  1407. clock-names = "xo";
  1408. memory-region = <&adsp_region>;
  1409. qcom,smem-states = <&adsp_smp2p_out 0>;
  1410. qcom,smem-state-names = "stop";
  1411. status = "disabled";
  1412. smd-edge {
  1413. interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
  1414. qcom,ipc = <&apcs 8 8>;
  1415. qcom,smd-edge = <1>;
  1416. label = "lpass";
  1417. #address-cells = <1>;
  1418. #size-cells = <0>;
  1419. };
  1420. };
  1421. imem: sram@fe805000 {
  1422. compatible = "qcom,msm8974-imem", "syscon", "simple-mfd";
  1423. reg = <0xfe805000 0x1000>;
  1424. reboot-mode {
  1425. compatible = "syscon-reboot-mode";
  1426. offset = <0x65c>;
  1427. };
  1428. };
  1429. };
  1430. tcsr_mutex: tcsr-mutex {
  1431. compatible = "qcom,tcsr-mutex";
  1432. syscon = <&tcsr_mutex_block 0 0x80>;
  1433. #hwlock-cells = <1>;
  1434. };
  1435. thermal-zones {
  1436. cpu0-thermal {
  1437. polling-delay-passive = <250>;
  1438. polling-delay = <1000>;
  1439. thermal-sensors = <&tsens 5>;
  1440. trips {
  1441. cpu_alert0: trip0 {
  1442. temperature = <75000>;
  1443. hysteresis = <2000>;
  1444. type = "passive";
  1445. };
  1446. cpu_crit0: trip1 {
  1447. temperature = <110000>;
  1448. hysteresis = <2000>;
  1449. type = "critical";
  1450. };
  1451. };
  1452. };
  1453. cpu1-thermal {
  1454. polling-delay-passive = <250>;
  1455. polling-delay = <1000>;
  1456. thermal-sensors = <&tsens 6>;
  1457. trips {
  1458. cpu_alert1: trip0 {
  1459. temperature = <75000>;
  1460. hysteresis = <2000>;
  1461. type = "passive";
  1462. };
  1463. cpu_crit1: trip1 {
  1464. temperature = <110000>;
  1465. hysteresis = <2000>;
  1466. type = "critical";
  1467. };
  1468. };
  1469. };
  1470. cpu2-thermal {
  1471. polling-delay-passive = <250>;
  1472. polling-delay = <1000>;
  1473. thermal-sensors = <&tsens 7>;
  1474. trips {
  1475. cpu_alert2: trip0 {
  1476. temperature = <75000>;
  1477. hysteresis = <2000>;
  1478. type = "passive";
  1479. };
  1480. cpu_crit2: trip1 {
  1481. temperature = <110000>;
  1482. hysteresis = <2000>;
  1483. type = "critical";
  1484. };
  1485. };
  1486. };
  1487. cpu3-thermal {
  1488. polling-delay-passive = <250>;
  1489. polling-delay = <1000>;
  1490. thermal-sensors = <&tsens 8>;
  1491. trips {
  1492. cpu_alert3: trip0 {
  1493. temperature = <75000>;
  1494. hysteresis = <2000>;
  1495. type = "passive";
  1496. };
  1497. cpu_crit3: trip1 {
  1498. temperature = <110000>;
  1499. hysteresis = <2000>;
  1500. type = "critical";
  1501. };
  1502. };
  1503. };
  1504. q6-dsp-thermal {
  1505. polling-delay-passive = <250>;
  1506. polling-delay = <1000>;
  1507. thermal-sensors = <&tsens 1>;
  1508. trips {
  1509. q6_dsp_alert0: trip-point0 {
  1510. temperature = <90000>;
  1511. hysteresis = <2000>;
  1512. type = "hot";
  1513. };
  1514. };
  1515. };
  1516. modemtx-thermal {
  1517. polling-delay-passive = <250>;
  1518. polling-delay = <1000>;
  1519. thermal-sensors = <&tsens 2>;
  1520. trips {
  1521. modemtx_alert0: trip-point0 {
  1522. temperature = <90000>;
  1523. hysteresis = <2000>;
  1524. type = "hot";
  1525. };
  1526. };
  1527. };
  1528. video-thermal {
  1529. polling-delay-passive = <250>;
  1530. polling-delay = <1000>;
  1531. thermal-sensors = <&tsens 3>;
  1532. trips {
  1533. video_alert0: trip-point0 {
  1534. temperature = <95000>;
  1535. hysteresis = <2000>;
  1536. type = "hot";
  1537. };
  1538. };
  1539. };
  1540. wlan-thermal {
  1541. polling-delay-passive = <250>;
  1542. polling-delay = <1000>;
  1543. thermal-sensors = <&tsens 4>;
  1544. trips {
  1545. wlan_alert0: trip-point0 {
  1546. temperature = <105000>;
  1547. hysteresis = <2000>;
  1548. type = "hot";
  1549. };
  1550. };
  1551. };
  1552. gpu-top-thermal {
  1553. polling-delay-passive = <250>;
  1554. polling-delay = <1000>;
  1555. thermal-sensors = <&tsens 9>;
  1556. trips {
  1557. gpu1_alert0: trip-point0 {
  1558. temperature = <90000>;
  1559. hysteresis = <2000>;
  1560. type = "hot";
  1561. };
  1562. };
  1563. };
  1564. gpu-bottom-thermal {
  1565. polling-delay-passive = <250>;
  1566. polling-delay = <1000>;
  1567. thermal-sensors = <&tsens 10>;
  1568. trips {
  1569. gpu2_alert0: trip-point0 {
  1570. temperature = <90000>;
  1571. hysteresis = <2000>;
  1572. type = "hot";
  1573. };
  1574. };
  1575. };
  1576. };
  1577. timer {
  1578. compatible = "arm,armv7-timer";
  1579. interrupts = <GIC_PPI 2 0xf08>,
  1580. <GIC_PPI 3 0xf08>,
  1581. <GIC_PPI 4 0xf08>,
  1582. <GIC_PPI 1 0xf08>;
  1583. clock-frequency = <19200000>;
  1584. };
  1585. vreg_boost: vreg-boost {
  1586. compatible = "regulator-fixed";
  1587. regulator-name = "vreg-boost";
  1588. regulator-min-microvolt = <3150000>;
  1589. regulator-max-microvolt = <3150000>;
  1590. regulator-always-on;
  1591. regulator-boot-on;
  1592. gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>;
  1593. enable-active-high;
  1594. pinctrl-names = "default";
  1595. pinctrl-0 = <&boost_bypass_n_pin>;
  1596. };
  1597. vreg_vph_pwr: vreg-vph-pwr {
  1598. compatible = "regulator-fixed";
  1599. regulator-name = "vph-pwr";
  1600. regulator-min-microvolt = <3600000>;
  1601. regulator-max-microvolt = <3600000>;
  1602. regulator-always-on;
  1603. };
  1604. };