qcom-ipq8064.dtsi 30 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408
  1. /dts-v1/;
  2. #include "skeleton.dtsi"
  3. #include <dt-bindings/clock/qcom,gcc-ipq806x.h>
  4. #include <dt-bindings/mfd/qcom-rpm.h>
  5. #include <dt-bindings/clock/qcom,rpmcc.h>
  6. #include <dt-bindings/clock/qcom,lcc-ipq806x.h>
  7. #include <dt-bindings/soc/qcom,gsbi.h>
  8. #include <dt-bindings/reset/qcom,gcc-ipq806x.h>
  9. #include <dt-bindings/interrupt-controller/arm-gic.h>
  10. #include <dt-bindings/gpio/gpio.h>
  11. / {
  12. model = "Qualcomm IPQ8064";
  13. compatible = "qcom,ipq8064";
  14. interrupt-parent = <&intc>;
  15. cpus {
  16. #address-cells = <1>;
  17. #size-cells = <0>;
  18. cpu0: cpu@0 {
  19. compatible = "qcom,krait";
  20. enable-method = "qcom,kpss-acc-v1";
  21. device_type = "cpu";
  22. reg = <0>;
  23. next-level-cache = <&L2>;
  24. qcom,acc = <&acc0>;
  25. qcom,saw = <&saw0>;
  26. clocks = <&kraitcc 0>, <&kraitcc 4>;
  27. clock-names = "cpu", "l2";
  28. clock-latency = <100000>;
  29. cpu-supply = <&smb208_s2a>;
  30. voltage-tolerance = <5>;
  31. cooling-min-state = <0>;
  32. cooling-max-state = <10>;
  33. #cooling-cells = <2>;
  34. cpu-idle-states = <&CPU_SPC>;
  35. };
  36. cpu1: cpu@1 {
  37. compatible = "qcom,krait";
  38. enable-method = "qcom,kpss-acc-v1";
  39. device_type = "cpu";
  40. reg = <1>;
  41. next-level-cache = <&L2>;
  42. qcom,acc = <&acc1>;
  43. qcom,saw = <&saw1>;
  44. clocks = <&kraitcc 1>, <&kraitcc 4>;
  45. clock-names = "cpu", "l2";
  46. clock-latency = <100000>;
  47. cpu-supply = <&smb208_s2b>;
  48. cooling-min-state = <0>;
  49. cooling-max-state = <10>;
  50. #cooling-cells = <2>;
  51. cpu-idle-states = <&CPU_SPC>;
  52. };
  53. L2: l2-cache {
  54. compatible = "cache";
  55. cache-level = <2>;
  56. qcom,saw = <&saw_l2>;
  57. };
  58. qcom,l2 {
  59. qcom,l2-rates = <384000000 1000000000 1200000000>;
  60. };
  61. idle-states {
  62. CPU_SPC: spc {
  63. compatible = "qcom,idle-state-spc",
  64. "arm,idle-state";
  65. entry-latency-us = <400>;
  66. exit-latency-us = <900>;
  67. min-residency-us = <3000>;
  68. };
  69. };
  70. };
  71. thermal-zones {
  72. tsens_tz_sensor0 {
  73. polling-delay-passive = <0>;
  74. polling-delay = <0>;
  75. thermal-sensors = <&tsens 0>;
  76. trips {
  77. cpu-critical-hi {
  78. temperature = <125000>;
  79. hysteresis = <2000>;
  80. type = "critical_high";
  81. };
  82. cpu-config-hi {
  83. temperature = <105000>;
  84. hysteresis = <2000>;
  85. type = "configurable_hi";
  86. };
  87. cpu-config-lo {
  88. temperature = <95000>;
  89. hysteresis = <2000>;
  90. type = "configurable_lo";
  91. };
  92. cpu-critical-low {
  93. temperature = <0>;
  94. hysteresis = <2000>;
  95. type = "critical_low";
  96. };
  97. };
  98. };
  99. tsens_tz_sensor1 {
  100. polling-delay-passive = <0>;
  101. polling-delay = <0>;
  102. thermal-sensors = <&tsens 1>;
  103. trips {
  104. cpu-critical-hi {
  105. temperature = <125000>;
  106. hysteresis = <2000>;
  107. type = "critical_high";
  108. };
  109. cpu-config-hi {
  110. temperature = <105000>;
  111. hysteresis = <2000>;
  112. type = "configurable_hi";
  113. };
  114. cpu-config-lo {
  115. temperature = <95000>;
  116. hysteresis = <2000>;
  117. type = "configurable_lo";
  118. };
  119. cpu-critical-low {
  120. temperature = <0>;
  121. hysteresis = <2000>;
  122. type = "critical_low";
  123. };
  124. };
  125. };
  126. tsens_tz_sensor2 {
  127. polling-delay-passive = <0>;
  128. polling-delay = <0>;
  129. thermal-sensors = <&tsens 2>;
  130. trips {
  131. cpu-critical-hi {
  132. temperature = <125000>;
  133. hysteresis = <2000>;
  134. type = "critical_high";
  135. };
  136. cpu-config-hi {
  137. temperature = <105000>;
  138. hysteresis = <2000>;
  139. type = "configurable_hi";
  140. };
  141. cpu-config-lo {
  142. temperature = <95000>;
  143. hysteresis = <2000>;
  144. type = "configurable_lo";
  145. };
  146. cpu-critical-low {
  147. temperature = <0>;
  148. hysteresis = <2000>;
  149. type = "critical_low";
  150. };
  151. };
  152. };
  153. tsens_tz_sensor3 {
  154. polling-delay-passive = <0>;
  155. polling-delay = <0>;
  156. thermal-sensors = <&tsens 3>;
  157. trips {
  158. cpu-critical-hi {
  159. temperature = <125000>;
  160. hysteresis = <2000>;
  161. type = "critical_high";
  162. };
  163. cpu-config-hi {
  164. temperature = <105000>;
  165. hysteresis = <2000>;
  166. type = "configurable_hi";
  167. };
  168. cpu-config-lo {
  169. temperature = <95000>;
  170. hysteresis = <2000>;
  171. type = "configurable_lo";
  172. };
  173. cpu-critical-low {
  174. temperature = <0>;
  175. hysteresis = <2000>;
  176. type = "critical_low";
  177. };
  178. };
  179. };
  180. tsens_tz_sensor4 {
  181. polling-delay-passive = <0>;
  182. polling-delay = <0>;
  183. thermal-sensors = <&tsens 4>;
  184. trips {
  185. cpu-critical-hi {
  186. temperature = <125000>;
  187. hysteresis = <2000>;
  188. type = "critical_high";
  189. };
  190. cpu-config-hi {
  191. temperature = <105000>;
  192. hysteresis = <2000>;
  193. type = "configurable_hi";
  194. };
  195. cpu-config-lo {
  196. temperature = <95000>;
  197. hysteresis = <2000>;
  198. type = "configurable_lo";
  199. };
  200. cpu-critical-low {
  201. temperature = <0>;
  202. hysteresis = <2000>;
  203. type = "critical_low";
  204. };
  205. };
  206. };
  207. tsens_tz_sensor5 {
  208. polling-delay-passive = <0>;
  209. polling-delay = <0>;
  210. thermal-sensors = <&tsens 5>;
  211. trips {
  212. cpu-critical-hi {
  213. temperature = <125000>;
  214. hysteresis = <2000>;
  215. type = "critical_high";
  216. };
  217. cpu-config-hi {
  218. temperature = <105000>;
  219. hysteresis = <2000>;
  220. type = "configurable_hi";
  221. };
  222. cpu-config-lo {
  223. temperature = <95000>;
  224. hysteresis = <2000>;
  225. type = "configurable_lo";
  226. };
  227. cpu-critical-low {
  228. temperature = <0>;
  229. hysteresis = <2000>;
  230. type = "critical_low";
  231. };
  232. };
  233. };
  234. tsens_tz_sensor6 {
  235. polling-delay-passive = <0>;
  236. polling-delay = <0>;
  237. thermal-sensors = <&tsens 6>;
  238. trips {
  239. cpu-critical-hi {
  240. temperature = <125000>;
  241. hysteresis = <2000>;
  242. type = "critical_high";
  243. };
  244. cpu-config-hi {
  245. temperature = <105000>;
  246. hysteresis = <2000>;
  247. type = "configurable_hi";
  248. };
  249. cpu-config-lo {
  250. temperature = <95000>;
  251. hysteresis = <2000>;
  252. type = "configurable_lo";
  253. };
  254. cpu-critical-low {
  255. temperature = <0>;
  256. hysteresis = <2000>;
  257. type = "critical_low";
  258. };
  259. };
  260. };
  261. tsens_tz_sensor7 {
  262. polling-delay-passive = <0>;
  263. polling-delay = <0>;
  264. thermal-sensors = <&tsens 7>;
  265. trips {
  266. cpu-critical-hi {
  267. temperature = <125000>;
  268. hysteresis = <2000>;
  269. type = "critical_high";
  270. };
  271. cpu-config-hi {
  272. temperature = <105000>;
  273. hysteresis = <2000>;
  274. type = "configurable_hi";
  275. };
  276. cpu-config-lo {
  277. temperature = <95000>;
  278. hysteresis = <2000>;
  279. type = "configurable_lo";
  280. };
  281. cpu-critical-low {
  282. temperature = <0>;
  283. hysteresis = <2000>;
  284. type = "critical_low";
  285. };
  286. };
  287. };
  288. tsens_tz_sensor8 {
  289. polling-delay-passive = <0>;
  290. polling-delay = <0>;
  291. thermal-sensors = <&tsens 8>;
  292. trips {
  293. cpu-critical-hi {
  294. temperature = <125000>;
  295. hysteresis = <2000>;
  296. type = "critical_high";
  297. };
  298. cpu-config-hi {
  299. temperature = <105000>;
  300. hysteresis = <2000>;
  301. type = "configurable_hi";
  302. };
  303. cpu-config-lo {
  304. temperature = <95000>;
  305. hysteresis = <2000>;
  306. type = "configurable_lo";
  307. };
  308. cpu-critical-low {
  309. temperature = <0>;
  310. hysteresis = <2000>;
  311. type = "critical_low";
  312. };
  313. };
  314. };
  315. tsens_tz_sensor9 {
  316. polling-delay-passive = <0>;
  317. polling-delay = <0>;
  318. thermal-sensors = <&tsens 9>;
  319. trips {
  320. cpu-critical-hi {
  321. temperature = <125000>;
  322. hysteresis = <2000>;
  323. type = "critical_high";
  324. };
  325. cpu-config-hi {
  326. temperature = <105000>;
  327. hysteresis = <2000>;
  328. type = "configurable_hi";
  329. };
  330. cpu-config-lo {
  331. temperature = <95000>;
  332. hysteresis = <2000>;
  333. type = "configurable_lo";
  334. };
  335. cpu-critical-low {
  336. temperature = <0>;
  337. hysteresis = <2000>;
  338. type = "critical_low";
  339. };
  340. };
  341. };
  342. tsens_tz_sensor10 {
  343. polling-delay-passive = <0>;
  344. polling-delay = <0>;
  345. thermal-sensors = <&tsens 10>;
  346. trips {
  347. cpu-critical-hi {
  348. temperature = <125000>;
  349. hysteresis = <2000>;
  350. type = "critical_high";
  351. };
  352. cpu-config-hi {
  353. temperature = <105000>;
  354. hysteresis = <2000>;
  355. type = "configurable_hi";
  356. };
  357. cpu-config-lo {
  358. temperature = <95000>;
  359. hysteresis = <2000>;
  360. type = "configurable_lo";
  361. };
  362. cpu-critical-low {
  363. temperature = <0>;
  364. hysteresis = <2000>;
  365. type = "critical_low";
  366. };
  367. };
  368. };
  369. };
  370. cpu-pmu {
  371. compatible = "qcom,krait-pmu";
  372. interrupts = <1 10 0x304>;
  373. };
  374. reserved-memory {
  375. #address-cells = <1>;
  376. #size-cells = <1>;
  377. ranges;
  378. nss@40000000 {
  379. reg = <0x40000000 0x1000000>;
  380. no-map;
  381. };
  382. smem: smem@41000000 {
  383. reg = <0x41000000 0x200000>;
  384. no-map;
  385. };
  386. };
  387. clocks {
  388. cxo_board {
  389. compatible = "fixed-clock";
  390. #clock-cells = <0>;
  391. clock-frequency = <25000000>;
  392. };
  393. pxo_board {
  394. compatible = "fixed-clock";
  395. #clock-cells = <0>;
  396. clock-frequency = <25000000>;
  397. };
  398. sleep_clk: sleep_clk {
  399. compatible = "fixed-clock";
  400. clock-frequency = <32768>;
  401. #clock-cells = <0>;
  402. };
  403. };
  404. firmware {
  405. scm {
  406. compatible = "qcom,scm-ipq806x";
  407. };
  408. };
  409. kraitcc: clock-controller {
  410. compatible = "qcom,krait-cc-v1";
  411. #clock-cells = <1>;
  412. };
  413. qcom,pvs {
  414. qcom,pvs-format-a;
  415. qcom,speed0-pvs0-bin-v0 =
  416. < 1400000000 1250000 >,
  417. < 1200000000 1200000 >,
  418. < 1000000000 1150000 >,
  419. < 800000000 1100000 >,
  420. < 600000000 1050000 >,
  421. < 384000000 1000000 >;
  422. qcom,speed0-pvs1-bin-v0 =
  423. < 1400000000 1175000 >,
  424. < 1200000000 1125000 >,
  425. < 1000000000 1075000 >,
  426. < 800000000 1025000 >,
  427. < 600000000 975000 >,
  428. < 384000000 925000 >;
  429. qcom,speed0-pvs2-bin-v0 =
  430. < 1400000000 1125000 >,
  431. < 1200000000 1075000 >,
  432. < 1000000000 1025000 >,
  433. < 800000000 995000 >,
  434. < 600000000 925000 >,
  435. < 384000000 875000 >;
  436. qcom,speed0-pvs3-bin-v0 =
  437. < 1400000000 1050000 >,
  438. < 1200000000 1000000 >,
  439. < 1000000000 950000 >,
  440. < 800000000 900000 >,
  441. < 600000000 850000 >,
  442. < 384000000 800000 >;
  443. };
  444. soc: soc {
  445. #address-cells = <1>;
  446. #size-cells = <1>;
  447. ranges;
  448. compatible = "simple-bus";
  449. lpass@28100000 {
  450. compatible = "qcom,lpass-cpu";
  451. status = "disabled";
  452. clocks = <&lcc AHBIX_CLK>,
  453. <&lcc MI2S_OSR_CLK>,
  454. <&lcc MI2S_BIT_CLK>;
  455. clock-names = "ahbix-clk",
  456. "mi2s-osr-clk",
  457. "mi2s-bit-clk";
  458. interrupts = <0 85 1>;
  459. interrupt-names = "lpass-irq-lpaif";
  460. reg = <0x28100000 0x10000>;
  461. reg-names = "lpass-lpaif";
  462. };
  463. qfprom: qfprom@700000 {
  464. compatible = "qcom,qfprom", "syscon";
  465. reg = <0x700000 0x1000>;
  466. #address-cells = <1>;
  467. #size-cells = <1>;
  468. status = "okay";
  469. tsens_calib: calib@400 {
  470. reg = <0x400 0x10>;
  471. };
  472. tsens_backup: backup@410 {
  473. reg = <0x410 0x10>;
  474. };
  475. };
  476. rpm@108000 {
  477. compatible = "qcom,rpm-ipq8064";
  478. reg = <0x108000 0x1000>;
  479. qcom,ipc = <&l2cc 0x8 2>;
  480. interrupts = <0 19 0>,
  481. <0 21 0>,
  482. <0 22 0>;
  483. interrupt-names = "ack",
  484. "err",
  485. "wakeup";
  486. clocks = <&gcc RPM_MSG_RAM_H_CLK>;
  487. clock-names = "ram";
  488. #address-cells = <1>;
  489. #size-cells = <0>;
  490. rpmcc: clock-controller {
  491. compatible = "qcom,rpmcc-ipq806x", "qcom,rpmcc";
  492. #clock-cells = <1>;
  493. };
  494. regulators {
  495. compatible = "qcom,rpm-smb208-regulators";
  496. smb208_s1a: s1a {
  497. regulator-min-microvolt = <1050000>;
  498. regulator-max-microvolt = <1150000>;
  499. qcom,switch-mode-frequency = <1200000>;
  500. };
  501. smb208_s1b: s1b {
  502. regulator-min-microvolt = <1050000>;
  503. regulator-max-microvolt = <1150000>;
  504. qcom,switch-mode-frequency = <1200000>;
  505. };
  506. smb208_s2a: s2a {
  507. regulator-min-microvolt = < 800000>;
  508. regulator-max-microvolt = <1250000>;
  509. qcom,switch-mode-frequency = <1200000>;
  510. };
  511. smb208_s2b: s2b {
  512. regulator-min-microvolt = < 800000>;
  513. regulator-max-microvolt = <1250000>;
  514. qcom,switch-mode-frequency = <1200000>;
  515. };
  516. };
  517. };
  518. rng@1a500000 {
  519. compatible = "qcom,prng";
  520. reg = <0x1a500000 0x200>;
  521. clocks = <&gcc PRNG_CLK>;
  522. clock-names = "core";
  523. };
  524. qcom_pinmux: pinmux@800000 {
  525. compatible = "qcom,ipq8064-pinctrl";
  526. reg = <0x800000 0x4000>;
  527. gpio-controller;
  528. #gpio-cells = <2>;
  529. interrupt-controller;
  530. #interrupt-cells = <2>;
  531. interrupts = <0 16 0x4>;
  532. pcie0_pins: pcie0_pinmux {
  533. mux {
  534. pins = "gpio3";
  535. function = "pcie1_rst";
  536. drive-strength = <2>;
  537. bias-disable;
  538. };
  539. };
  540. pcie1_pins: pcie1_pinmux {
  541. mux {
  542. pins = "gpio48";
  543. function = "pcie2_rst";
  544. drive-strength = <2>;
  545. bias-disable;
  546. };
  547. };
  548. pcie2_pins: pcie2_pinmux {
  549. mux {
  550. pins = "gpio63";
  551. function = "pcie3_rst";
  552. drive-strength = <2>;
  553. bias-disable;
  554. output-low;
  555. };
  556. };
  557. };
  558. intc: interrupt-controller@2000000 {
  559. compatible = "qcom,msm-qgic2";
  560. interrupt-controller;
  561. #interrupt-cells = <3>;
  562. reg = <0x02000000 0x1000>,
  563. <0x02002000 0x1000>;
  564. };
  565. timer@200a000 {
  566. compatible = "qcom,kpss-timer", "qcom,msm-timer";
  567. interrupts = <1 1 0x301>,
  568. <1 2 0x301>,
  569. <1 3 0x301>,
  570. <1 4 0x301>,
  571. <1 5 0x301>;
  572. reg = <0x0200a000 0x100>;
  573. clock-frequency = <25000000>,
  574. <32768>;
  575. clocks = <&sleep_clk>;
  576. clock-names = "sleep";
  577. cpu-offset = <0x80000>;
  578. };
  579. acc0: clock-controller@2088000 {
  580. compatible = "qcom,kpss-acc-v1";
  581. reg = <0x02088000 0x1000>, <0x02008000 0x1000>;
  582. clock-output-names = "acpu0_aux";
  583. };
  584. acc1: clock-controller@2098000 {
  585. compatible = "qcom,kpss-acc-v1";
  586. reg = <0x02098000 0x1000>, <0x02008000 0x1000>;
  587. clock-output-names = "acpu1_aux";
  588. };
  589. l2cc: clock-controller@2011000 {
  590. compatible = "qcom,kpss-gcc", "syscon";
  591. reg = <0x2011000 0x1000>;
  592. clock-output-names = "acpu_l2_aux";
  593. };
  594. saw0: regulator@2089000 {
  595. compatible = "qcom,saw2", "syscon";
  596. reg = <0x02089000 0x1000>, <0x02009000 0x1000>;
  597. regulator;
  598. };
  599. saw1: regulator@2099000 {
  600. compatible = "qcom,saw2", "syscon";
  601. reg = <0x02099000 0x1000>, <0x02009000 0x1000>;
  602. regulator;
  603. };
  604. saw_l2: regulator@02012000 {
  605. compatible = "qcom,saw2", "syscon";
  606. reg = <0x02012000 0x1000>;
  607. regulator;
  608. };
  609. sic_non_secure: sic-non-secure@12100000 {
  610. compatible = "syscon";
  611. reg = <0x12100000 0x10000>;
  612. };
  613. gsbi2: gsbi@12480000 {
  614. compatible = "qcom,gsbi-v1.0.0";
  615. cell-index = <2>;
  616. reg = <0x12480000 0x100>;
  617. clocks = <&gcc GSBI2_H_CLK>;
  618. clock-names = "iface";
  619. #address-cells = <1>;
  620. #size-cells = <1>;
  621. ranges;
  622. status = "disabled";
  623. syscon-tcsr = <&tcsr>;
  624. uart2: serial@12490000 {
  625. compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
  626. reg = <0x12490000 0x1000>,
  627. <0x12480000 0x1000>;
  628. interrupts = <0 195 0x0>;
  629. clocks = <&gcc GSBI2_UART_CLK>, <&gcc GSBI2_H_CLK>;
  630. clock-names = "core", "iface";
  631. status = "disabled";
  632. };
  633. i2c@124a0000 {
  634. compatible = "qcom,i2c-qup-v1.1.1";
  635. reg = <0x124a0000 0x1000>;
  636. interrupts = <0 196 0>;
  637. clocks = <&gcc GSBI2_QUP_CLK>, <&gcc GSBI2_H_CLK>;
  638. clock-names = "core", "iface";
  639. status = "disabled";
  640. #address-cells = <1>;
  641. #size-cells = <0>;
  642. };
  643. };
  644. gsbi4: gsbi@16300000 {
  645. compatible = "qcom,gsbi-v1.0.0";
  646. cell-index = <4>;
  647. reg = <0x16300000 0x100>;
  648. clocks = <&gcc GSBI4_H_CLK>;
  649. clock-names = "iface";
  650. #address-cells = <1>;
  651. #size-cells = <1>;
  652. ranges;
  653. status = "disabled";
  654. syscon-tcsr = <&tcsr>;
  655. gsbi4_serial: serial@16340000 {
  656. compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
  657. reg = <0x16340000 0x1000>,
  658. <0x16300000 0x1000>;
  659. interrupts = <0 152 0x0>;
  660. clocks = <&gcc GSBI4_UART_CLK>, <&gcc GSBI4_H_CLK>;
  661. clock-names = "core", "iface";
  662. status = "disabled";
  663. };
  664. i2c@16380000 {
  665. compatible = "qcom,i2c-qup-v1.1.1";
  666. reg = <0x16380000 0x1000>;
  667. interrupts = <0 153 0>;
  668. clocks = <&gcc GSBI4_QUP_CLK>, <&gcc GSBI4_H_CLK>;
  669. clock-names = "core", "iface";
  670. status = "disabled";
  671. #address-cells = <1>;
  672. #size-cells = <0>;
  673. };
  674. };
  675. gsbi5: gsbi@1a200000 {
  676. compatible = "qcom,gsbi-v1.0.0";
  677. cell-index = <5>;
  678. reg = <0x1a200000 0x100>;
  679. clocks = <&gcc GSBI5_H_CLK>;
  680. clock-names = "iface";
  681. #address-cells = <1>;
  682. #size-cells = <1>;
  683. ranges;
  684. status = "disabled";
  685. syscon-tcsr = <&tcsr>;
  686. uart5: serial@1a240000 {
  687. compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
  688. reg = <0x1a240000 0x1000>,
  689. <0x1a200000 0x1000>;
  690. interrupts = <0 154 0x0>;
  691. clocks = <&gcc GSBI5_UART_CLK>, <&gcc GSBI5_H_CLK>;
  692. clock-names = "core", "iface";
  693. status = "disabled";
  694. };
  695. i2c@1a280000 {
  696. compatible = "qcom,i2c-qup-v1.1.1";
  697. reg = <0x1a280000 0x1000>;
  698. interrupts = <0 155 0>;
  699. clocks = <&gcc GSBI5_QUP_CLK>, <&gcc GSBI5_H_CLK>;
  700. clock-names = "core", "iface";
  701. status = "disabled";
  702. #address-cells = <1>;
  703. #size-cells = <0>;
  704. };
  705. spi@1a280000 {
  706. compatible = "qcom,spi-qup-v1.1.1";
  707. reg = <0x1a280000 0x1000>;
  708. interrupts = <0 155 0>;
  709. clocks = <&gcc GSBI5_QUP_CLK>, <&gcc GSBI5_H_CLK>;
  710. clock-names = "core", "iface";
  711. status = "disabled";
  712. #address-cells = <1>;
  713. #size-cells = <0>;
  714. };
  715. };
  716. sata_phy: sata-phy@1b400000 {
  717. compatible = "qcom,ipq806x-sata-phy";
  718. reg = <0x1b400000 0x200>;
  719. clocks = <&gcc SATA_PHY_CFG_CLK>;
  720. clock-names = "cfg";
  721. #phy-cells = <0>;
  722. status = "disabled";
  723. };
  724. sata@29000000 {
  725. compatible = "qcom,ipq806x-ahci", "generic-ahci";
  726. reg = <0x29000000 0x180>;
  727. interrupts = <0 209 0x0>;
  728. clocks = <&gcc SFAB_SATA_S_H_CLK>,
  729. <&gcc SATA_H_CLK>,
  730. <&gcc SATA_A_CLK>,
  731. <&gcc SATA_RXOOB_CLK>,
  732. <&gcc SATA_PMALIVE_CLK>;
  733. clock-names = "slave_face", "iface", "core",
  734. "rxoob", "pmalive";
  735. assigned-clocks = <&gcc SATA_RXOOB_CLK>, <&gcc SATA_PMALIVE_CLK>;
  736. assigned-clock-rates = <100000000>, <100000000>;
  737. phys = <&sata_phy>;
  738. phy-names = "sata-phy";
  739. status = "disabled";
  740. };
  741. qcom,ssbi@500000 {
  742. compatible = "qcom,ssbi";
  743. reg = <0x00500000 0x1000>;
  744. qcom,controller-type = "pmic-arbiter";
  745. };
  746. gcc: clock-controller@900000 {
  747. compatible = "qcom,gcc-ipq8064";
  748. reg = <0x00900000 0x4000>;
  749. #clock-cells = <1>;
  750. #reset-cells = <1>;
  751. #power-domain-cells = <1>;
  752. };
  753. tsens: thermal-sensor@900000 {
  754. compatible = "qcom,ipq8064-tsens";
  755. reg = <0x900000 0x3680>;
  756. nvmem-cells = <&tsens_calib>, <&tsens_backup>;
  757. nvmem-cell-names = "calib", "calib_backup";
  758. interrupts = <0 178 0>;
  759. #thermal-sensor-cells = <1>;
  760. };
  761. tcsr: syscon@1a400000 {
  762. compatible = "qcom,tcsr-ipq8064", "syscon";
  763. reg = <0x1a400000 0x100>;
  764. };
  765. lcc: clock-controller@28000000 {
  766. compatible = "qcom,lcc-ipq8064";
  767. reg = <0x28000000 0x1000>;
  768. #clock-cells = <1>;
  769. #reset-cells = <1>;
  770. };
  771. sfpb_mutex_block: syscon@1200600 {
  772. compatible = "syscon";
  773. reg = <0x01200600 0x100>;
  774. };
  775. hs_phy_1: phy@100f8800 {
  776. compatible = "qcom,dwc3-hs-usb-phy";
  777. reg = <0x100f8800 0x30>;
  778. clocks = <&gcc USB30_1_UTMI_CLK>;
  779. clock-names = "ref";
  780. #phy-cells = <0>;
  781. status = "disabled";
  782. };
  783. ss_phy_1: phy@100f8830 {
  784. compatible = "qcom,dwc3-ss-usb-phy";
  785. reg = <0x100f8830 0x30>;
  786. clocks = <&gcc USB30_1_MASTER_CLK>;
  787. clock-names = "ref";
  788. #phy-cells = <0>;
  789. status = "disabled";
  790. };
  791. hs_phy_0: phy@110f8800 {
  792. compatible = "qcom,dwc3-hs-usb-phy";
  793. reg = <0x110f8800 0x30>;
  794. clocks = <&gcc USB30_0_UTMI_CLK>;
  795. clock-names = "ref";
  796. #phy-cells = <0>;
  797. status = "disabled";
  798. };
  799. ss_phy_0: phy@110f8830 {
  800. compatible = "qcom,dwc3-ss-usb-phy";
  801. reg = <0x110f8830 0x30>;
  802. clocks = <&gcc USB30_0_MASTER_CLK>;
  803. clock-names = "ref";
  804. #phy-cells = <0>;
  805. status = "disabled";
  806. };
  807. usb3_0: usb30@0 {
  808. compatible = "qcom,dwc3";
  809. #address-cells = <1>;
  810. #size-cells = <1>;
  811. clocks = <&gcc USB30_0_MASTER_CLK>;
  812. clock-names = "core";
  813. ranges;
  814. resets = <&gcc USB30_0_MASTER_RESET>;
  815. reset-names = "usb30_0_mstr_rst";
  816. status = "disabled";
  817. dwc3@11000000 {
  818. compatible = "snps,dwc3";
  819. reg = <0x11000000 0xcd00>;
  820. interrupts = <0 110 0x4>;
  821. phys = <&hs_phy_0>, <&ss_phy_0>;
  822. phy-names = "usb2-phy", "usb3-phy";
  823. dr_mode = "host";
  824. snps,dis_u3_susphy_quirk;
  825. };
  826. };
  827. usb3_1: usb30@1 {
  828. compatible = "qcom,dwc3";
  829. #address-cells = <1>;
  830. #size-cells = <1>;
  831. clocks = <&gcc USB30_1_MASTER_CLK>;
  832. clock-names = "core";
  833. ranges;
  834. resets = <&gcc USB30_1_MASTER_RESET>;
  835. reset-names = "usb30_1_mstr_rst";
  836. status = "disabled";
  837. dwc3@10000000 {
  838. compatible = "snps,dwc3";
  839. reg = <0x10000000 0xcd00>;
  840. interrupts = <0 205 0x4>;
  841. phys = <&hs_phy_1>, <&ss_phy_1>;
  842. phy-names = "usb2-phy", "usb3-phy";
  843. dr_mode = "host";
  844. snps,dis_u3_susphy_quirk;
  845. };
  846. };
  847. pcie0: pci@1b500000 {
  848. compatible = "qcom,pcie-ipq8064";
  849. reg = <0x1b500000 0x1000
  850. 0x1b502000 0x80
  851. 0x1b600000 0x100
  852. 0x0ff00000 0x100000>;
  853. reg-names = "dbi", "elbi", "parf", "config";
  854. device_type = "pci";
  855. linux,pci-domain = <0>;
  856. bus-range = <0x00 0xff>;
  857. num-lanes = <1>;
  858. #address-cells = <3>;
  859. #size-cells = <2>;
  860. ranges = <0x81000000 0 0x0fe00000 0x0fe00000 0 0x00100000 /* downstream I/O */
  861. 0x82000000 0 0x08000000 0x08000000 0 0x07e00000>; /* non-prefetchable memory */
  862. interrupts = <GIC_SPI 35 IRQ_TYPE_NONE>;
  863. interrupt-names = "msi";
  864. #interrupt-cells = <1>;
  865. interrupt-map-mask = <0 0 0 0x7>;
  866. interrupt-map = <0 0 0 1 &intc 0 36 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
  867. <0 0 0 2 &intc 0 37 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
  868. <0 0 0 3 &intc 0 38 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
  869. <0 0 0 4 &intc 0 39 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
  870. clocks = <&gcc PCIE_A_CLK>,
  871. <&gcc PCIE_H_CLK>,
  872. <&gcc PCIE_PHY_CLK>,
  873. <&gcc PCIE_AUX_CLK>,
  874. <&gcc PCIE_ALT_REF_CLK>;
  875. clock-names = "core", "iface", "phy", "aux", "ref";
  876. assigned-clocks = <&gcc PCIE_ALT_REF_CLK>;
  877. assigned-clock-rates = <100000000>;
  878. resets = <&gcc PCIE_ACLK_RESET>,
  879. <&gcc PCIE_HCLK_RESET>,
  880. <&gcc PCIE_POR_RESET>,
  881. <&gcc PCIE_PCI_RESET>,
  882. <&gcc PCIE_PHY_RESET>,
  883. <&gcc PCIE_EXT_RESET>;
  884. reset-names = "axi", "ahb", "por", "pci", "phy", "ext";
  885. pinctrl-0 = <&pcie0_pins>;
  886. pinctrl-names = "default";
  887. perst-gpios = <&qcom_pinmux 3 GPIO_ACTIVE_LOW>;
  888. phy-tx0-term-offset = <7>;
  889. status = "disabled";
  890. };
  891. pcie1: pci@1b700000 {
  892. compatible = "qcom,pcie-ipq8064";
  893. reg = <0x1b700000 0x1000
  894. 0x1b702000 0x80
  895. 0x1b800000 0x100
  896. 0x31f00000 0x100000>;
  897. reg-names = "dbi", "elbi", "parf", "config";
  898. device_type = "pci";
  899. linux,pci-domain = <1>;
  900. bus-range = <0x00 0xff>;
  901. num-lanes = <1>;
  902. #address-cells = <3>;
  903. #size-cells = <2>;
  904. ranges = <0x81000000 0 0x31e00000 0x31e00000 0 0x00100000 /* downstream I/O */
  905. 0x82000000 0 0x2e000000 0x2e000000 0 0x03e00000>; /* non-prefetchable memory */
  906. interrupts = <GIC_SPI 57 IRQ_TYPE_NONE>;
  907. interrupt-names = "msi";
  908. #interrupt-cells = <1>;
  909. interrupt-map-mask = <0 0 0 0x7>;
  910. interrupt-map = <0 0 0 1 &intc 0 58 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
  911. <0 0 0 2 &intc 0 59 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
  912. <0 0 0 3 &intc 0 60 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
  913. <0 0 0 4 &intc 0 61 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
  914. clocks = <&gcc PCIE_1_A_CLK>,
  915. <&gcc PCIE_1_H_CLK>,
  916. <&gcc PCIE_1_PHY_CLK>,
  917. <&gcc PCIE_1_AUX_CLK>,
  918. <&gcc PCIE_1_ALT_REF_CLK>;
  919. clock-names = "core", "iface", "phy", "aux", "ref";
  920. assigned-clocks = <&gcc PCIE_1_ALT_REF_CLK>;
  921. assigned-clock-rates = <100000000>;
  922. resets = <&gcc PCIE_1_ACLK_RESET>,
  923. <&gcc PCIE_1_HCLK_RESET>,
  924. <&gcc PCIE_1_POR_RESET>,
  925. <&gcc PCIE_1_PCI_RESET>,
  926. <&gcc PCIE_1_PHY_RESET>,
  927. <&gcc PCIE_1_EXT_RESET>;
  928. reset-names = "axi", "ahb", "por", "pci", "phy", "ext";
  929. pinctrl-0 = <&pcie1_pins>;
  930. pinctrl-names = "default";
  931. perst-gpios = <&qcom_pinmux 48 GPIO_ACTIVE_LOW>;
  932. phy-tx0-term-offset = <7>;
  933. status = "disabled";
  934. };
  935. pcie2: pci@1b900000 {
  936. compatible = "qcom,pcie-ipq8064";
  937. reg = <0x1b900000 0x1000
  938. 0x1b902000 0x80
  939. 0x1ba00000 0x100
  940. 0x35f00000 0x100000>;
  941. reg-names = "dbi", "elbi", "parf", "config";
  942. device_type = "pci";
  943. linux,pci-domain = <2>;
  944. bus-range = <0x00 0xff>;
  945. num-lanes = <1>;
  946. #address-cells = <3>;
  947. #size-cells = <2>;
  948. ranges = <0x81000000 0 0x35e00000 0x35e00000 0 0x00100000 /* downstream I/O */
  949. 0x82000000 0 0x32000000 0x32000000 0 0x03e00000>; /* non-prefetchable memory */
  950. interrupts = <GIC_SPI 71 IRQ_TYPE_NONE>;
  951. interrupt-names = "msi";
  952. #interrupt-cells = <1>;
  953. interrupt-map-mask = <0 0 0 0x7>;
  954. interrupt-map = <0 0 0 1 &intc 0 72 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
  955. <0 0 0 2 &intc 0 73 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
  956. <0 0 0 3 &intc 0 74 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
  957. <0 0 0 4 &intc 0 75 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
  958. clocks = <&gcc PCIE_2_A_CLK>,
  959. <&gcc PCIE_2_H_CLK>,
  960. <&gcc PCIE_2_PHY_CLK>,
  961. <&gcc PCIE_2_AUX_CLK>,
  962. <&gcc PCIE_2_ALT_REF_CLK>;
  963. clock-names = "core", "iface", "phy", "aux", "ref";
  964. assigned-clocks = <&gcc PCIE_2_ALT_REF_CLK>;
  965. assigned-clock-rates = <100000000>;
  966. resets = <&gcc PCIE_2_ACLK_RESET>,
  967. <&gcc PCIE_2_HCLK_RESET>,
  968. <&gcc PCIE_2_POR_RESET>,
  969. <&gcc PCIE_2_PCI_RESET>,
  970. <&gcc PCIE_2_PHY_RESET>,
  971. <&gcc PCIE_2_EXT_RESET>;
  972. reset-names = "axi", "ahb", "por", "pci", "phy", "ext";
  973. pinctrl-0 = <&pcie2_pins>;
  974. pinctrl-names = "default";
  975. perst-gpios = <&qcom_pinmux 63 GPIO_ACTIVE_LOW>;
  976. phy-tx0-term-offset = <7>;
  977. status = "disabled";
  978. };
  979. adm_dma: dma@18300000 {
  980. compatible = "qcom,adm";
  981. reg = <0x18300000 0x100000>;
  982. interrupts = <0 170 0>;
  983. #dma-cells = <1>;
  984. clocks = <&gcc ADM0_CLK>, <&gcc ADM0_PBUS_CLK>;
  985. clock-names = "core", "iface";
  986. resets = <&gcc ADM0_RESET>,
  987. <&gcc ADM0_PBUS_RESET>,
  988. <&gcc ADM0_C0_RESET>,
  989. <&gcc ADM0_C1_RESET>,
  990. <&gcc ADM0_C2_RESET>;
  991. reset-names = "clk", "pbus", "c0", "c1", "c2";
  992. qcom,ee = <0>;
  993. status = "disabled";
  994. };
  995. nand@1ac00000 {
  996. compatible = "qcom,ipq806x-nand";
  997. reg = <0x1ac00000 0x800>;
  998. clocks = <&gcc EBI2_CLK>,
  999. <&gcc EBI2_AON_CLK>;
  1000. clock-names = "core", "aon";
  1001. dmas = <&adm_dma 3>;
  1002. dma-names = "rxtx";
  1003. qcom,cmd-crci = <15>;
  1004. qcom,data-crci = <3>;
  1005. status = "disabled";
  1006. #address-cells = <1>;
  1007. #size-cells = <0>;
  1008. };
  1009. nss_common: syscon@03000000 {
  1010. compatible = "syscon";
  1011. reg = <0x03000000 0x0000FFFF>;
  1012. };
  1013. qsgmii_csr: syscon@1bb00000 {
  1014. compatible = "syscon";
  1015. reg = <0x1bb00000 0x000001FF>;
  1016. };
  1017. stmmac_axi_setup: stmmac-axi-config {
  1018. snps,wr_osr_lmt = <7>;
  1019. snps,rd_osr_lmt = <7>;
  1020. snps,blen = <16 0 0 0 0 0 0>;
  1021. };
  1022. gmac0: ethernet@37000000 {
  1023. device_type = "network";
  1024. compatible = "qcom,ipq806x-gmac";
  1025. reg = <0x37000000 0x200000>;
  1026. interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
  1027. interrupt-names = "macirq";
  1028. snps,axi-config = <&stmmac_axi_setup>;
  1029. snps,pbl = <32>;
  1030. snps,aal = <1>;
  1031. qcom,nss-common = <&nss_common>;
  1032. qcom,qsgmii-csr = <&qsgmii_csr>;
  1033. clocks = <&gcc GMAC_CORE1_CLK>;
  1034. clock-names = "stmmaceth";
  1035. resets = <&gcc GMAC_CORE1_RESET>;
  1036. reset-names = "stmmaceth";
  1037. status = "disabled";
  1038. };
  1039. gmac1: ethernet@37200000 {
  1040. device_type = "network";
  1041. compatible = "qcom,ipq806x-gmac";
  1042. reg = <0x37200000 0x200000>;
  1043. interrupts = <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
  1044. interrupt-names = "macirq";
  1045. snps,axi-config = <&stmmac_axi_setup>;
  1046. snps,pbl = <32>;
  1047. snps,aal = <1>;
  1048. qcom,nss-common = <&nss_common>;
  1049. qcom,qsgmii-csr = <&qsgmii_csr>;
  1050. clocks = <&gcc GMAC_CORE2_CLK>;
  1051. clock-names = "stmmaceth";
  1052. resets = <&gcc GMAC_CORE2_RESET>;
  1053. reset-names = "stmmaceth";
  1054. status = "disabled";
  1055. };
  1056. gmac2: ethernet@37400000 {
  1057. device_type = "network";
  1058. compatible = "qcom,ipq806x-gmac";
  1059. reg = <0x37400000 0x200000>;
  1060. interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>;
  1061. interrupt-names = "macirq";
  1062. snps,axi-config = <&stmmac_axi_setup>;
  1063. snps,pbl = <32>;
  1064. snps,aal = <1>;
  1065. qcom,nss-common = <&nss_common>;
  1066. qcom,qsgmii-csr = <&qsgmii_csr>;
  1067. clocks = <&gcc GMAC_CORE3_CLK>;
  1068. clock-names = "stmmaceth";
  1069. resets = <&gcc GMAC_CORE3_RESET>;
  1070. reset-names = "stmmaceth";
  1071. status = "disabled";
  1072. };
  1073. gmac3: ethernet@37600000 {
  1074. device_type = "network";
  1075. compatible = "qcom,ipq806x-gmac";
  1076. reg = <0x37600000 0x200000>;
  1077. interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
  1078. interrupt-names = "macirq";
  1079. snps,axi-config = <&stmmac_axi_setup>;
  1080. snps,pbl = <32>;
  1081. snps,aal = <1>;
  1082. qcom,nss-common = <&nss_common>;
  1083. qcom,qsgmii-csr = <&qsgmii_csr>;
  1084. clocks = <&gcc GMAC_CORE4_CLK>;
  1085. clock-names = "stmmaceth";
  1086. resets = <&gcc GMAC_CORE4_RESET>;
  1087. reset-names = "stmmaceth";
  1088. status = "disabled";
  1089. };
  1090. /* Temporary fixed regulator */
  1091. vsdcc_fixed: vsdcc-regulator {
  1092. compatible = "regulator-fixed";
  1093. regulator-name = "SDCC Power";
  1094. regulator-min-microvolt = <3300000>;
  1095. regulator-max-microvolt = <3300000>;
  1096. regulator-always-on;
  1097. };
  1098. sdcc1bam:dma@12402000 {
  1099. compatible = "qcom,bam-v1.3.0";
  1100. reg = <0x12402000 0x8000>;
  1101. interrupts = <0 98 0>;
  1102. clocks = <&gcc SDC1_H_CLK>;
  1103. clock-names = "bam_clk";
  1104. #dma-cells = <1>;
  1105. qcom,ee = <0>;
  1106. };
  1107. sdcc3bam:dma@12182000 {
  1108. compatible = "qcom,bam-v1.3.0";
  1109. reg = <0x12182000 0x8000>;
  1110. interrupts = <0 96 0>;
  1111. clocks = <&gcc SDC3_H_CLK>;
  1112. clock-names = "bam_clk";
  1113. #dma-cells = <1>;
  1114. qcom,ee = <0>;
  1115. };
  1116. amba {
  1117. compatible = "arm,amba-bus";
  1118. #address-cells = <1>;
  1119. #size-cells = <1>;
  1120. ranges;
  1121. sdcc1: sdcc@12400000 {
  1122. status = "disabled";
  1123. compatible = "arm,pl18x", "arm,primecell";
  1124. arm,primecell-periphid = <0x00051180>;
  1125. reg = <0x12400000 0x2000>;
  1126. interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
  1127. interrupt-names = "cmd_irq";
  1128. clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>;
  1129. clock-names = "mclk", "apb_pclk";
  1130. bus-width = <8>;
  1131. max-frequency = <96000000>;
  1132. non-removable;
  1133. cap-sd-highspeed;
  1134. cap-mmc-highspeed;
  1135. vmmc-supply = <&vsdcc_fixed>;
  1136. dmas = <&sdcc1bam 2>, <&sdcc1bam 1>;
  1137. dma-names = "tx", "rx";
  1138. };
  1139. sdcc3: sdcc@12180000 {
  1140. compatible = "arm,pl18x", "arm,primecell";
  1141. arm,primecell-periphid = <0x00051180>;
  1142. status = "disabled";
  1143. reg = <0x12180000 0x2000>;
  1144. interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
  1145. interrupt-names = "cmd_irq";
  1146. clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>;
  1147. clock-names = "mclk", "apb_pclk";
  1148. bus-width = <8>;
  1149. cap-sd-highspeed;
  1150. cap-mmc-highspeed;
  1151. max-frequency = <192000000>;
  1152. #mmc-ddr-1_8v;
  1153. sd-uhs-sdr104;
  1154. sd-uhs-ddr50;
  1155. vqmmc-supply = <&vsdcc_fixed>;
  1156. dmas = <&sdcc3bam 2>, <&sdcc3bam 1>;
  1157. dma-names = "tx", "rx";
  1158. };
  1159. };
  1160. };
  1161. sfpb_mutex: sfpb-mutex {
  1162. compatible = "qcom,sfpb-mutex";
  1163. syscon = <&sfpb_mutex_block 4 4>;
  1164. #hwlock-cells = <1>;
  1165. };
  1166. smem {
  1167. compatible = "qcom,smem";
  1168. memory-region = <&smem>;
  1169. hwlocks = <&sfpb_mutex 3>;
  1170. };
  1171. };