ste-dbx5x0.dtsi 30 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165
  1. // SPDX-License-Identifier: GPL-2.0-or-later
  2. /*
  3. * Copyright 2012 Linaro Ltd
  4. */
  5. #include <dt-bindings/interrupt-controller/irq.h>
  6. #include <dt-bindings/interrupt-controller/arm-gic.h>
  7. #include <dt-bindings/reset/stericsson,db8500-prcc-reset.h>
  8. #include <dt-bindings/mfd/dbx500-prcmu.h>
  9. #include <dt-bindings/arm/ux500_pm_domains.h>
  10. #include <dt-bindings/gpio/gpio.h>
  11. #include <dt-bindings/thermal/thermal.h>
  12. / {
  13. #address-cells = <1>;
  14. #size-cells = <1>;
  15. /* This stablilizes the device enumeration */
  16. aliases {
  17. i2c0 = &i2c0;
  18. i2c1 = &i2c1;
  19. i2c2 = &i2c2;
  20. i2c3 = &i2c3;
  21. i2c4 = &i2c4;
  22. spi0 = &spi0;
  23. spi1 = &spi1;
  24. spi2 = &spi2;
  25. spi3 = &spi3;
  26. serial0 = &serial0;
  27. serial1 = &serial1;
  28. serial2 = &serial2;
  29. };
  30. chosen {
  31. };
  32. cpus {
  33. #address-cells = <1>;
  34. #size-cells = <0>;
  35. enable-method = "ste,dbx500-smp";
  36. cpu-map {
  37. cluster0 {
  38. core0 {
  39. cpu = <&CPU0>;
  40. };
  41. core1 {
  42. cpu = <&CPU1>;
  43. };
  44. };
  45. };
  46. CPU0: cpu@300 {
  47. device_type = "cpu";
  48. compatible = "arm,cortex-a9";
  49. reg = <0x300>;
  50. clocks = <&prcmu_clk PRCMU_ARMSS>;
  51. clock-names = "cpu";
  52. clock-latency = <20000>;
  53. #cooling-cells = <2>;
  54. };
  55. CPU1: cpu@301 {
  56. device_type = "cpu";
  57. compatible = "arm,cortex-a9";
  58. reg = <0x301>;
  59. };
  60. };
  61. thermal-zones {
  62. /*
  63. * Thermal zone for the SoC, using the thermal sensor in the
  64. * PRCMU for temperature and the cpufreq driver for passive
  65. * cooling.
  66. */
  67. cpu_thermal: cpu-thermal {
  68. polling-delay-passive = <250>;
  69. /*
  70. * This sensor fires interrupts to update the thermal
  71. * zone, so no polling is needed.
  72. */
  73. polling-delay = <0>;
  74. thermal-sensors = <&thermal>;
  75. trips {
  76. cpu_alert: cpu-alert {
  77. temperature = <70000>;
  78. hysteresis = <2000>;
  79. type = "passive";
  80. };
  81. cpu-crit {
  82. temperature = <85000>;
  83. hysteresis = <0>;
  84. type = "critical";
  85. };
  86. };
  87. cooling-maps {
  88. trip = <&cpu_alert>;
  89. cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
  90. contribution = <100>;
  91. };
  92. };
  93. };
  94. soc {
  95. #address-cells = <1>;
  96. #size-cells = <1>;
  97. compatible = "stericsson,db8500", "simple-bus";
  98. interrupt-parent = <&intc>;
  99. ranges;
  100. ptm@801ae000 {
  101. compatible = "arm,coresight-etm3x", "arm,primecell";
  102. reg = <0x801ae000 0x1000>;
  103. clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
  104. clock-names = "apb_pclk", "atclk";
  105. cpu = <&CPU0>;
  106. out-ports {
  107. port {
  108. ptm0_out_port: endpoint {
  109. remote-endpoint = <&funnel_in_port0>;
  110. };
  111. };
  112. };
  113. };
  114. ptm@801af000 {
  115. compatible = "arm,coresight-etm3x", "arm,primecell";
  116. reg = <0x801af000 0x1000>;
  117. clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
  118. clock-names = "apb_pclk", "atclk";
  119. cpu = <&CPU1>;
  120. out-ports {
  121. port {
  122. ptm1_out_port: endpoint {
  123. remote-endpoint = <&funnel_in_port1>;
  124. };
  125. };
  126. };
  127. };
  128. funnel@801a6000 {
  129. compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
  130. reg = <0x801a6000 0x1000>;
  131. clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
  132. clock-names = "apb_pclk", "atclk";
  133. out-ports {
  134. port {
  135. funnel_out_port: endpoint {
  136. remote-endpoint =
  137. <&replicator_in_port0>;
  138. };
  139. };
  140. };
  141. in-ports {
  142. #address-cells = <1>;
  143. #size-cells = <0>;
  144. port@0 {
  145. reg = <0>;
  146. funnel_in_port0: endpoint {
  147. remote-endpoint = <&ptm0_out_port>;
  148. };
  149. };
  150. port@1 {
  151. reg = <1>;
  152. funnel_in_port1: endpoint {
  153. remote-endpoint = <&ptm1_out_port>;
  154. };
  155. };
  156. };
  157. };
  158. replicator {
  159. compatible = "arm,coresight-static-replicator";
  160. clocks = <&prcmu_clk PRCMU_APEATCLK>;
  161. clock-names = "atclk";
  162. out-ports {
  163. #address-cells = <1>;
  164. #size-cells = <0>;
  165. port@0 {
  166. reg = <0>;
  167. replicator_out_port0: endpoint {
  168. remote-endpoint = <&tpiu_in_port>;
  169. };
  170. };
  171. port@1 {
  172. reg = <1>;
  173. replicator_out_port1: endpoint {
  174. remote-endpoint = <&etb_in_port>;
  175. };
  176. };
  177. };
  178. in-ports {
  179. port {
  180. replicator_in_port0: endpoint {
  181. remote-endpoint = <&funnel_out_port>;
  182. };
  183. };
  184. };
  185. };
  186. tpiu@80190000 {
  187. compatible = "arm,coresight-tpiu", "arm,primecell";
  188. reg = <0x80190000 0x1000>;
  189. clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
  190. clock-names = "apb_pclk", "atclk";
  191. in-ports {
  192. port {
  193. tpiu_in_port: endpoint {
  194. remote-endpoint = <&replicator_out_port0>;
  195. };
  196. };
  197. };
  198. };
  199. etb@801a4000 {
  200. compatible = "arm,coresight-etb10", "arm,primecell";
  201. reg = <0x801a4000 0x1000>;
  202. clocks = <&prcmu_clk PRCMU_APETRACECLK>, <&prcmu_clk PRCMU_APEATCLK>;
  203. clock-names = "apb_pclk", "atclk";
  204. in-ports {
  205. port {
  206. etb_in_port: endpoint {
  207. remote-endpoint = <&replicator_out_port1>;
  208. };
  209. };
  210. };
  211. };
  212. intc: interrupt-controller@a0411000 {
  213. compatible = "arm,cortex-a9-gic";
  214. #interrupt-cells = <3>;
  215. #address-cells = <1>;
  216. interrupt-controller;
  217. reg = <0xa0411000 0x1000>,
  218. <0xa0410100 0x100>;
  219. };
  220. scu@a0410000 {
  221. compatible = "arm,cortex-a9-scu";
  222. reg = <0xa0410000 0x100>;
  223. };
  224. /*
  225. * The backup RAM is used for retention during sleep
  226. * and various things like spin tables
  227. */
  228. backupram@80150000 {
  229. compatible = "ste,dbx500-backupram";
  230. reg = <0x80150000 0x2000>;
  231. };
  232. L2: cache-controller {
  233. compatible = "arm,pl310-cache";
  234. reg = <0xa0412000 0x1000>;
  235. interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
  236. cache-unified;
  237. cache-level = <2>;
  238. };
  239. pmu {
  240. compatible = "arm,cortex-a9-pmu";
  241. interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
  242. };
  243. pm_domains: pm_domains0 {
  244. compatible = "stericsson,ux500-pm-domains";
  245. #power-domain-cells = <1>;
  246. };
  247. clocks {
  248. compatible = "stericsson,u8500-clks";
  249. /*
  250. * Registers for the CLKRST block on peripheral
  251. * groups 1, 2, 3, 5, 6,
  252. */
  253. reg = <0x8012f000 0x1000>, <0x8011f000 0x1000>,
  254. <0x8000f000 0x1000>, <0xa03ff000 0x1000>,
  255. <0xa03cf000 0x1000>;
  256. prcmu_clk: prcmu-clock {
  257. #clock-cells = <1>;
  258. };
  259. prcc_pclk: prcc-periph-clock {
  260. #clock-cells = <2>;
  261. };
  262. prcc_kclk: prcc-kernel-clock {
  263. #clock-cells = <2>;
  264. };
  265. prcc_reset: prcc-reset-controller {
  266. #reset-cells = <2>;
  267. };
  268. rtc_clk: rtc32k-clock {
  269. #clock-cells = <0>;
  270. };
  271. smp_twd_clk: smp-twd-clock {
  272. #clock-cells = <0>;
  273. };
  274. };
  275. mtu@a03c6000 {
  276. /* Nomadik System Timer */
  277. compatible = "st,nomadik-mtu";
  278. reg = <0xa03c6000 0x1000>;
  279. interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
  280. clocks = <&prcmu_clk PRCMU_TIMCLK>, <&prcc_pclk 6 6>;
  281. clock-names = "timclk", "apb_pclk";
  282. };
  283. timer@a0410600 {
  284. compatible = "arm,cortex-a9-twd-timer";
  285. reg = <0xa0410600 0x20>;
  286. interrupts = <GIC_PPI 13 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>;
  287. clocks = <&smp_twd_clk>;
  288. };
  289. watchdog@a0410620 {
  290. compatible = "arm,cortex-a9-twd-wdt";
  291. reg = <0xa0410620 0x20>;
  292. interrupts = <GIC_PPI 14 (GIC_CPU_MASK_RAW(3) | IRQ_TYPE_LEVEL_HIGH)>;
  293. clocks = <&smp_twd_clk>;
  294. };
  295. rtc@80154000 {
  296. compatible = "arm,pl031", "arm,primecell";
  297. reg = <0x80154000 0x1000>;
  298. interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
  299. clocks = <&rtc_clk>;
  300. clock-names = "apb_pclk";
  301. };
  302. gpio0: gpio@8012e000 {
  303. compatible = "stericsson,db8500-gpio",
  304. "st,nomadik-gpio";
  305. reg = <0x8012e000 0x80>;
  306. interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
  307. interrupt-controller;
  308. #interrupt-cells = <2>;
  309. st,supports-sleepmode;
  310. gpio-controller;
  311. #gpio-cells = <2>;
  312. gpio-bank = <0>;
  313. gpio-ranges = <&pinctrl 0 0 32>;
  314. clocks = <&prcc_pclk 1 9>;
  315. };
  316. gpio1: gpio@8012e080 {
  317. compatible = "stericsson,db8500-gpio",
  318. "st,nomadik-gpio";
  319. reg = <0x8012e080 0x80>;
  320. interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
  321. interrupt-controller;
  322. #interrupt-cells = <2>;
  323. st,supports-sleepmode;
  324. gpio-controller;
  325. #gpio-cells = <2>;
  326. gpio-bank = <1>;
  327. gpio-ranges = <&pinctrl 0 32 5>;
  328. clocks = <&prcc_pclk 1 9>;
  329. };
  330. gpio2: gpio@8000e000 {
  331. compatible = "stericsson,db8500-gpio",
  332. "st,nomadik-gpio";
  333. reg = <0x8000e000 0x80>;
  334. interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
  335. interrupt-controller;
  336. #interrupt-cells = <2>;
  337. st,supports-sleepmode;
  338. gpio-controller;
  339. #gpio-cells = <2>;
  340. gpio-bank = <2>;
  341. gpio-ranges = <&pinctrl 0 64 32>;
  342. clocks = <&prcc_pclk 3 8>;
  343. };
  344. gpio3: gpio@8000e080 {
  345. compatible = "stericsson,db8500-gpio",
  346. "st,nomadik-gpio";
  347. reg = <0x8000e080 0x80>;
  348. interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
  349. interrupt-controller;
  350. #interrupt-cells = <2>;
  351. st,supports-sleepmode;
  352. gpio-controller;
  353. #gpio-cells = <2>;
  354. gpio-bank = <3>;
  355. gpio-ranges = <&pinctrl 0 96 2>;
  356. clocks = <&prcc_pclk 3 8>;
  357. };
  358. gpio4: gpio@8000e100 {
  359. compatible = "stericsson,db8500-gpio",
  360. "st,nomadik-gpio";
  361. reg = <0x8000e100 0x80>;
  362. interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
  363. interrupt-controller;
  364. #interrupt-cells = <2>;
  365. st,supports-sleepmode;
  366. gpio-controller;
  367. #gpio-cells = <2>;
  368. gpio-bank = <4>;
  369. gpio-ranges = <&pinctrl 0 128 32>;
  370. clocks = <&prcc_pclk 3 8>;
  371. };
  372. gpio5: gpio@8000e180 {
  373. compatible = "stericsson,db8500-gpio",
  374. "st,nomadik-gpio";
  375. reg = <0x8000e180 0x80>;
  376. interrupts = <GIC_SPI 124 IRQ_TYPE_LEVEL_HIGH>;
  377. interrupt-controller;
  378. #interrupt-cells = <2>;
  379. st,supports-sleepmode;
  380. gpio-controller;
  381. #gpio-cells = <2>;
  382. gpio-bank = <5>;
  383. gpio-ranges = <&pinctrl 0 160 12>;
  384. clocks = <&prcc_pclk 3 8>;
  385. };
  386. gpio6: gpio@8011e000 {
  387. compatible = "stericsson,db8500-gpio",
  388. "st,nomadik-gpio";
  389. reg = <0x8011e000 0x80>;
  390. interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
  391. interrupt-controller;
  392. #interrupt-cells = <2>;
  393. st,supports-sleepmode;
  394. gpio-controller;
  395. #gpio-cells = <2>;
  396. gpio-bank = <6>;
  397. gpio-ranges = <&pinctrl 0 192 32>;
  398. clocks = <&prcc_pclk 2 11>;
  399. };
  400. gpio7: gpio@8011e080 {
  401. compatible = "stericsson,db8500-gpio",
  402. "st,nomadik-gpio";
  403. reg = <0x8011e080 0x80>;
  404. interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
  405. interrupt-controller;
  406. #interrupt-cells = <2>;
  407. st,supports-sleepmode;
  408. gpio-controller;
  409. #gpio-cells = <2>;
  410. gpio-bank = <7>;
  411. gpio-ranges = <&pinctrl 0 224 7>;
  412. clocks = <&prcc_pclk 2 11>;
  413. };
  414. gpio8: gpio@a03fe000 {
  415. compatible = "stericsson,db8500-gpio",
  416. "st,nomadik-gpio";
  417. reg = <0xa03fe000 0x80>;
  418. interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
  419. interrupt-controller;
  420. #interrupt-cells = <2>;
  421. st,supports-sleepmode;
  422. gpio-controller;
  423. #gpio-cells = <2>;
  424. gpio-bank = <8>;
  425. gpio-ranges = <&pinctrl 0 256 12>;
  426. clocks = <&prcc_pclk 5 1>;
  427. };
  428. pinctrl: pinctrl {
  429. compatible = "stericsson,db8500-pinctrl";
  430. nomadik-gpio-chips = <&gpio0>, <&gpio1>, <&gpio2>, <&gpio3>,
  431. <&gpio4>, <&gpio5>, <&gpio6>, <&gpio7>,
  432. <&gpio8>;
  433. prcm = <&prcmu>;
  434. };
  435. usb_per5@a03e0000 {
  436. compatible = "stericsson,db8500-musb";
  437. reg = <0xa03e0000 0x10000>;
  438. interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
  439. interrupt-names = "mc";
  440. dr_mode = "otg";
  441. dmas = <&dma 38 0 0x2>, /* Logical - DevToMem */
  442. <&dma 38 0 0x0>, /* Logical - MemToDev */
  443. <&dma 37 0 0x2>, /* Logical - DevToMem */
  444. <&dma 37 0 0x0>, /* Logical - MemToDev */
  445. <&dma 36 0 0x2>, /* Logical - DevToMem */
  446. <&dma 36 0 0x0>, /* Logical - MemToDev */
  447. <&dma 19 0 0x2>, /* Logical - DevToMem */
  448. <&dma 19 0 0x0>, /* Logical - MemToDev */
  449. <&dma 18 0 0x2>, /* Logical - DevToMem */
  450. <&dma 18 0 0x0>, /* Logical - MemToDev */
  451. <&dma 17 0 0x2>, /* Logical - DevToMem */
  452. <&dma 17 0 0x0>, /* Logical - MemToDev */
  453. <&dma 16 0 0x2>, /* Logical - DevToMem */
  454. <&dma 16 0 0x0>, /* Logical - MemToDev */
  455. <&dma 39 0 0x2>, /* Logical - DevToMem */
  456. <&dma 39 0 0x0>; /* Logical - MemToDev */
  457. dma-names = "iep_1_9", "oep_1_9",
  458. "iep_2_10", "oep_2_10",
  459. "iep_3_11", "oep_3_11",
  460. "iep_4_12", "oep_4_12",
  461. "iep_5_13", "oep_5_13",
  462. "iep_6_14", "oep_6_14",
  463. "iep_7_15", "oep_7_15",
  464. "iep_8", "oep_8";
  465. clocks = <&prcc_pclk 5 0>;
  466. };
  467. dma: dma-controller@801C0000 {
  468. compatible = "stericsson,db8500-dma40", "stericsson,dma40";
  469. reg = <0x801C0000 0x1000 0x40010000 0x800>;
  470. reg-names = "base", "lcpa";
  471. interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
  472. #dma-cells = <3>;
  473. memcpy-channels = <56 57 58 59 60>;
  474. clocks = <&prcmu_clk PRCMU_DMACLK>;
  475. };
  476. prcmu: prcmu@80157000 {
  477. compatible = "stericsson,db8500-prcmu", "syscon";
  478. reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x1000>;
  479. reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm";
  480. interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
  481. #address-cells = <1>;
  482. #size-cells = <1>;
  483. interrupt-controller;
  484. #interrupt-cells = <2>;
  485. ranges;
  486. prcmu-timer-4@80157450 {
  487. compatible = "stericsson,db8500-prcmu-timer-4";
  488. reg = <0x80157450 0xC>;
  489. };
  490. thermal: thermal@801573c0 {
  491. compatible = "stericsson,db8500-thermal";
  492. reg = <0x801573c0 0x40>;
  493. interrupt-parent = <&prcmu>;
  494. interrupts = <21 IRQ_TYPE_LEVEL_HIGH>,
  495. <22 IRQ_TYPE_LEVEL_HIGH>;
  496. interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH";
  497. #thermal-sensor-cells = <0>;
  498. };
  499. db8500-prcmu-regulators {
  500. compatible = "stericsson,db8500-prcmu-regulator";
  501. // DB8500_REGULATOR_VAPE
  502. db8500_vape_reg: db8500_vape {
  503. regulator-always-on;
  504. };
  505. // DB8500_REGULATOR_VARM
  506. db8500_varm_reg: db8500_varm {
  507. };
  508. // DB8500_REGULATOR_VMODEM
  509. db8500_vmodem_reg: db8500_vmodem {
  510. };
  511. // DB8500_REGULATOR_VPLL
  512. db8500_vpll_reg: db8500_vpll {
  513. };
  514. // DB8500_REGULATOR_VSMPS1
  515. db8500_vsmps1_reg: db8500_vsmps1 {
  516. };
  517. // DB8500_REGULATOR_VSMPS2
  518. db8500_vsmps2_reg: db8500_vsmps2 {
  519. };
  520. // DB8500_REGULATOR_VSMPS3
  521. db8500_vsmps3_reg: db8500_vsmps3 {
  522. };
  523. // DB8500_REGULATOR_VRF1
  524. db8500_vrf1_reg: db8500_vrf1 {
  525. };
  526. // DB8500_REGULATOR_SWITCH_SVAMMDSP
  527. db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
  528. };
  529. // DB8500_REGULATOR_SWITCH_SVAMMDSPRET
  530. db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
  531. };
  532. // DB8500_REGULATOR_SWITCH_SVAPIPE
  533. db8500_sva_pipe_reg: db8500_sva_pipe {
  534. };
  535. // DB8500_REGULATOR_SWITCH_SIAMMDSP
  536. db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
  537. };
  538. // DB8500_REGULATOR_SWITCH_SIAMMDSPRET
  539. db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
  540. };
  541. // DB8500_REGULATOR_SWITCH_SIAPIPE
  542. db8500_sia_pipe_reg: db8500_sia_pipe {
  543. };
  544. // DB8500_REGULATOR_SWITCH_SGA
  545. db8500_sga_reg: db8500_sga {
  546. vin-supply = <&db8500_vape_reg>;
  547. };
  548. // DB8500_REGULATOR_SWITCH_B2R2_MCDE
  549. db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
  550. vin-supply = <&db8500_vape_reg>;
  551. };
  552. // DB8500_REGULATOR_SWITCH_ESRAM12
  553. db8500_esram12_reg: db8500_esram12 {
  554. };
  555. // DB8500_REGULATOR_SWITCH_ESRAM12RET
  556. db8500_esram12_ret_reg: db8500_esram12_ret {
  557. };
  558. // DB8500_REGULATOR_SWITCH_ESRAM34
  559. db8500_esram34_reg: db8500_esram34 {
  560. };
  561. // DB8500_REGULATOR_SWITCH_ESRAM34RET
  562. db8500_esram34_ret_reg: db8500_esram34_ret {
  563. };
  564. };
  565. };
  566. i2c0: i2c@80004000 {
  567. compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
  568. reg = <0x80004000 0x1000>;
  569. interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
  570. #address-cells = <1>;
  571. #size-cells = <0>;
  572. clock-frequency = <400000>;
  573. clocks = <&prcc_kclk 3 3>, <&prcc_pclk 3 3>;
  574. clock-names = "i2cclk", "apb_pclk";
  575. power-domains = <&pm_domains DOMAIN_VAPE>;
  576. resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_I2C0>;
  577. status = "disabled";
  578. };
  579. i2c1: i2c@80122000 {
  580. compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
  581. reg = <0x80122000 0x1000>;
  582. interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
  583. #address-cells = <1>;
  584. #size-cells = <0>;
  585. clock-frequency = <400000>;
  586. clocks = <&prcc_kclk 1 2>, <&prcc_pclk 1 2>;
  587. clock-names = "i2cclk", "apb_pclk";
  588. power-domains = <&pm_domains DOMAIN_VAPE>;
  589. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_I2C1>;
  590. status = "disabled";
  591. };
  592. i2c2: i2c@80128000 {
  593. compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
  594. reg = <0x80128000 0x1000>;
  595. interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
  596. #address-cells = <1>;
  597. #size-cells = <0>;
  598. clock-frequency = <400000>;
  599. clocks = <&prcc_kclk 1 6>, <&prcc_pclk 1 6>;
  600. clock-names = "i2cclk", "apb_pclk";
  601. power-domains = <&pm_domains DOMAIN_VAPE>;
  602. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_I2C2>;
  603. status = "disabled";
  604. };
  605. i2c3: i2c@80110000 {
  606. compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
  607. reg = <0x80110000 0x1000>;
  608. interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
  609. #address-cells = <1>;
  610. #size-cells = <0>;
  611. clock-frequency = <400000>;
  612. clocks = <&prcc_kclk 2 0>, <&prcc_pclk 2 0>;
  613. clock-names = "i2cclk", "apb_pclk";
  614. power-domains = <&pm_domains DOMAIN_VAPE>;
  615. resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_I2C3>;
  616. status = "disabled";
  617. };
  618. i2c4: i2c@8012a000 {
  619. compatible = "stericsson,db8500-i2c", "st,nomadik-i2c", "arm,primecell";
  620. reg = <0x8012a000 0x1000>;
  621. interrupts = <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>;
  622. #address-cells = <1>;
  623. #size-cells = <0>;
  624. clock-frequency = <400000>;
  625. clocks = <&prcc_kclk 1 9>, <&prcc_pclk 1 10>;
  626. clock-names = "i2cclk", "apb_pclk";
  627. power-domains = <&pm_domains DOMAIN_VAPE>;
  628. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_I2C4>;
  629. status = "disabled";
  630. };
  631. ssp0: spi@80002000 {
  632. compatible = "arm,pl022", "arm,primecell";
  633. reg = <0x80002000 0x1000>;
  634. interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
  635. #address-cells = <1>;
  636. #size-cells = <0>;
  637. clocks = <&prcc_kclk 3 1>, <&prcc_pclk 3 1>;
  638. clock-names = "sspclk", "apb_pclk";
  639. dmas = <&dma 8 0 0x2>, /* Logical - DevToMem */
  640. <&dma 8 0 0x0>; /* Logical - MemToDev */
  641. dma-names = "rx", "tx";
  642. power-domains = <&pm_domains DOMAIN_VAPE>;
  643. resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SSP0>;
  644. status = "disabled";
  645. };
  646. ssp1: spi@80003000 {
  647. compatible = "arm,pl022", "arm,primecell";
  648. reg = <0x80003000 0x1000>;
  649. interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
  650. #address-cells = <1>;
  651. #size-cells = <0>;
  652. clocks = <&prcc_kclk 3 2>, <&prcc_pclk 3 2>;
  653. clock-names = "sspclk", "apb_pclk";
  654. dmas = <&dma 9 0 0x2>, /* Logical - DevToMem */
  655. <&dma 9 0 0x0>; /* Logical - MemToDev */
  656. dma-names = "rx", "tx";
  657. power-domains = <&pm_domains DOMAIN_VAPE>;
  658. resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SSP1>;
  659. status = "disabled";
  660. };
  661. spi0: spi@8011a000 {
  662. compatible = "arm,pl022", "arm,primecell";
  663. reg = <0x8011a000 0x1000>;
  664. interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
  665. #address-cells = <1>;
  666. #size-cells = <0>;
  667. /* Same clock wired to kernel and pclk */
  668. clocks = <&prcc_pclk 2 8>, <&prcc_pclk 2 8>;
  669. clock-names = "sspclk", "apb_pclk";
  670. dmas = <&dma 0 0 0x2>, /* Logical - DevToMem */
  671. <&dma 0 0 0x0>; /* Logical - MemToDev */
  672. dma-names = "rx", "tx";
  673. power-domains = <&pm_domains DOMAIN_VAPE>;
  674. status = "disabled";
  675. };
  676. spi1: spi@80112000 {
  677. compatible = "arm,pl022", "arm,primecell";
  678. reg = <0x80112000 0x1000>;
  679. interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
  680. #address-cells = <1>;
  681. #size-cells = <0>;
  682. /* Same clock wired to kernel and pclk */
  683. clocks = <&prcc_pclk 2 2>, <&prcc_pclk 2 2>;
  684. clock-names = "sspclk", "apb_pclk";
  685. dmas = <&dma 35 0 0x2>, /* Logical - DevToMem */
  686. <&dma 35 0 0x0>; /* Logical - MemToDev */
  687. dma-names = "rx", "tx";
  688. power-domains = <&pm_domains DOMAIN_VAPE>;
  689. status = "disabled";
  690. };
  691. spi2: spi@80111000 {
  692. compatible = "arm,pl022", "arm,primecell";
  693. reg = <0x80111000 0x1000>;
  694. interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
  695. #address-cells = <1>;
  696. #size-cells = <0>;
  697. /* Same clock wired to kernel and pclk */
  698. clocks = <&prcc_pclk 2 1>, <&prcc_pclk 2 1>;
  699. clock-names = "sspclk", "apb_pclk";
  700. dmas = <&dma 33 0 0x2>, /* Logical - DevToMem */
  701. <&dma 33 0 0x0>; /* Logical - MemToDev */
  702. dma-names = "rx", "tx";
  703. power-domains = <&pm_domains DOMAIN_VAPE>;
  704. status = "disabled";
  705. };
  706. spi3: spi@80129000 {
  707. compatible = "arm,pl022", "arm,primecell";
  708. reg = <0x80129000 0x1000>;
  709. interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
  710. #address-cells = <1>;
  711. #size-cells = <0>;
  712. /* Same clock wired to kernel and pclk */
  713. clocks = <&prcc_pclk 1 7>, <&prcc_pclk 1 7>;
  714. clock-names = "sspclk", "apb_pclk";
  715. dmas = <&dma 40 0 0x2>, /* Logical - DevToMem */
  716. <&dma 40 0 0x0>; /* Logical - MemToDev */
  717. dma-names = "rx", "tx";
  718. power-domains = <&pm_domains DOMAIN_VAPE>;
  719. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_SPI3>;
  720. status = "disabled";
  721. };
  722. serial0: uart@80120000 {
  723. compatible = "arm,pl011", "arm,primecell";
  724. reg = <0x80120000 0x1000>;
  725. interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
  726. dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */
  727. <&dma 13 0 0x0>; /* Logical - MemToDev */
  728. dma-names = "rx", "tx";
  729. clocks = <&prcc_kclk 1 0>, <&prcc_pclk 1 0>;
  730. clock-names = "uart", "apb_pclk";
  731. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_UART0>;
  732. status = "disabled";
  733. };
  734. serial1: uart@80121000 {
  735. compatible = "arm,pl011", "arm,primecell";
  736. reg = <0x80121000 0x1000>;
  737. interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
  738. dmas = <&dma 12 0 0x2>, /* Logical - DevToMem */
  739. <&dma 12 0 0x0>; /* Logical - MemToDev */
  740. dma-names = "rx", "tx";
  741. clocks = <&prcc_kclk 1 1>, <&prcc_pclk 1 1>;
  742. clock-names = "uart", "apb_pclk";
  743. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_UART1>;
  744. status = "disabled";
  745. };
  746. serial2: uart@80007000 {
  747. compatible = "arm,pl011", "arm,primecell";
  748. reg = <0x80007000 0x1000>;
  749. interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
  750. dmas = <&dma 11 0 0x2>, /* Logical - DevToMem */
  751. <&dma 11 0 0x0>; /* Logical - MemToDev */
  752. dma-names = "rx", "tx";
  753. clocks = <&prcc_kclk 3 6>, <&prcc_pclk 3 6>;
  754. clock-names = "uart", "apb_pclk";
  755. resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_UART2>;
  756. status = "disabled";
  757. };
  758. mmc@80126000 {
  759. compatible = "arm,pl18x", "arm,primecell";
  760. reg = <0x80126000 0x1000>;
  761. interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
  762. dmas = <&dma 29 0 0x2>, /* Logical - DevToMem */
  763. <&dma 29 0 0x0>; /* Logical - MemToDev */
  764. dma-names = "rx", "tx";
  765. clocks = <&prcc_kclk 1 5>, <&prcc_pclk 1 5>;
  766. clock-names = "sdi", "apb_pclk";
  767. power-domains = <&pm_domains DOMAIN_VAPE>;
  768. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_SDI0>;
  769. status = "disabled";
  770. };
  771. mmc@80118000 {
  772. compatible = "arm,pl18x", "arm,primecell";
  773. reg = <0x80118000 0x1000>;
  774. interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
  775. dmas = <&dma 32 0 0x2>, /* Logical - DevToMem */
  776. <&dma 32 0 0x0>; /* Logical - MemToDev */
  777. dma-names = "rx", "tx";
  778. clocks = <&prcc_kclk 2 4>, <&prcc_pclk 2 6>;
  779. clock-names = "sdi", "apb_pclk";
  780. power-domains = <&pm_domains DOMAIN_VAPE>;
  781. resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_SDI1>;
  782. status = "disabled";
  783. };
  784. mmc@80005000 {
  785. compatible = "arm,pl18x", "arm,primecell";
  786. reg = <0x80005000 0x1000>;
  787. interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
  788. dmas = <&dma 28 0 0x2>, /* Logical - DevToMem */
  789. <&dma 28 0 0x0>; /* Logical - MemToDev */
  790. dma-names = "rx", "tx";
  791. clocks = <&prcc_kclk 3 4>, <&prcc_pclk 3 4>;
  792. clock-names = "sdi", "apb_pclk";
  793. power-domains = <&pm_domains DOMAIN_VAPE>;
  794. resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SDI2>;
  795. status = "disabled";
  796. };
  797. mmc@80119000 {
  798. compatible = "arm,pl18x", "arm,primecell";
  799. reg = <0x80119000 0x1000>;
  800. interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
  801. dmas = <&dma 41 0 0x2>, /* Logical - DevToMem */
  802. <&dma 41 0 0x0>; /* Logical - MemToDev */
  803. dma-names = "rx", "tx";
  804. clocks = <&prcc_kclk 2 5>, <&prcc_pclk 2 7>;
  805. clock-names = "sdi", "apb_pclk";
  806. power-domains = <&pm_domains DOMAIN_VAPE>;
  807. resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_SDI3>;
  808. status = "disabled";
  809. };
  810. mmc@80114000 {
  811. compatible = "arm,pl18x", "arm,primecell";
  812. reg = <0x80114000 0x1000>;
  813. interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
  814. dmas = <&dma 42 0 0x2>, /* Logical - DevToMem */
  815. <&dma 42 0 0x0>; /* Logical - MemToDev */
  816. dma-names = "rx", "tx";
  817. clocks = <&prcc_kclk 2 2>, <&prcc_pclk 2 4>;
  818. clock-names = "sdi", "apb_pclk";
  819. power-domains = <&pm_domains DOMAIN_VAPE>;
  820. resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_SDI4>;
  821. status = "disabled";
  822. };
  823. mmc@80008000 {
  824. compatible = "arm,pl18x", "arm,primecell";
  825. reg = <0x80008000 0x1000>;
  826. interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
  827. dmas = <&dma 43 0 0x2>, /* Logical - DevToMem */
  828. <&dma 43 0 0x0>; /* Logical - MemToDev */
  829. dma-names = "rx", "tx";
  830. clocks = <&prcc_kclk 3 7>, <&prcc_pclk 3 7>;
  831. clock-names = "sdi", "apb_pclk";
  832. power-domains = <&pm_domains DOMAIN_VAPE>;
  833. resets = <&prcc_reset DB8500_PRCC_3 DB8500_PRCC_3_RESET_SDI5>;
  834. status = "disabled";
  835. };
  836. sound {
  837. compatible = "stericsson,snd-soc-mop500";
  838. stericsson,cpu-dai = <&msp1 &msp3>;
  839. };
  840. msp0: msp@80123000 {
  841. compatible = "stericsson,ux500-msp-i2s";
  842. reg = <0x80123000 0x1000>;
  843. interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
  844. v-ape-supply = <&db8500_vape_reg>;
  845. dmas = <&dma 31 0 0x12>, /* Logical - DevToMem - HighPrio */
  846. <&dma 31 0 0x10>; /* Logical - MemToDev - HighPrio */
  847. dma-names = "rx", "tx";
  848. clocks = <&prcc_kclk 1 3>, <&prcc_pclk 1 3>;
  849. clock-names = "msp", "apb_pclk";
  850. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_MSP0>;
  851. status = "disabled";
  852. };
  853. msp1: msp@80124000 {
  854. compatible = "stericsson,ux500-msp-i2s";
  855. reg = <0x80124000 0x1000>;
  856. interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
  857. v-ape-supply = <&db8500_vape_reg>;
  858. /* This DMA channel only exist on DB8500 v1 */
  859. dmas = <&dma 30 0 0x10>; /* Logical - MemToDev - HighPrio */
  860. dma-names = "tx";
  861. clocks = <&prcc_kclk 1 4>, <&prcc_pclk 1 4>;
  862. clock-names = "msp", "apb_pclk";
  863. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_MSP1>;
  864. status = "disabled";
  865. };
  866. // HDMI sound
  867. msp2: msp@80117000 {
  868. compatible = "stericsson,ux500-msp-i2s";
  869. reg = <0x80117000 0x1000>;
  870. interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
  871. v-ape-supply = <&db8500_vape_reg>;
  872. dmas = <&dma 14 0 0x12>, /* Logical - DevToMem - HighPrio */
  873. <&dma 14 1 0x19>; /* Physical Chan 1 - MemToDev
  874. HighPrio - Fixed */
  875. dma-names = "rx", "tx";
  876. clocks = <&prcc_kclk 2 3>, <&prcc_pclk 2 5>;
  877. clock-names = "msp", "apb_pclk";
  878. resets = <&prcc_reset DB8500_PRCC_2 DB8500_PRCC_2_RESET_MSP2>;
  879. status = "disabled";
  880. };
  881. msp3: msp@80125000 {
  882. compatible = "stericsson,ux500-msp-i2s";
  883. reg = <0x80125000 0x1000>;
  884. interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
  885. v-ape-supply = <&db8500_vape_reg>;
  886. /* This DMA channel only exist on DB8500 v2 */
  887. dmas = <&dma 30 0 0x12>; /* Logical - DevToMem - HighPrio */
  888. dma-names = "rx";
  889. clocks = <&prcc_kclk 1 10>, <&prcc_pclk 1 11>;
  890. clock-names = "msp", "apb_pclk";
  891. resets = <&prcc_reset DB8500_PRCC_1 DB8500_PRCC_1_RESET_MSP3>;
  892. status = "disabled";
  893. };
  894. external-bus@50000000 {
  895. compatible = "simple-bus";
  896. reg = <0x50000000 0x4000000>;
  897. #address-cells = <1>;
  898. #size-cells = <1>;
  899. ranges = <0 0x50000000 0x4000000>;
  900. status = "disabled";
  901. };
  902. gpu@a0300000 {
  903. /*
  904. * This block is referred to as "Smart Graphics Adapter SGA500"
  905. * in documentation but is in practice a pretty straight-forward
  906. * MALI-400 GPU block.
  907. */
  908. compatible = "stericsson,db8500-mali", "arm,mali-400";
  909. reg = <0xa0300000 0x10000>;
  910. interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
  911. <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
  912. <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
  913. <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
  914. <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
  915. interrupt-names = "gp",
  916. "gpmmu",
  917. "pp0",
  918. "ppmmu0",
  919. "combined";
  920. clocks = <&prcmu_clk PRCMU_ACLK>, <&prcmu_clk PRCMU_SGACLK>;
  921. clock-names = "bus", "core";
  922. mali-supply = <&db8500_sga_reg>;
  923. power-domains = <&pm_domains DOMAIN_VAPE>;
  924. };
  925. mcde@a0350000 {
  926. compatible = "ste,mcde";
  927. reg = <0xa0350000 0x1000>;
  928. interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
  929. epod-supply = <&db8500_b2r2_mcde_reg>;
  930. clocks = <&prcmu_clk PRCMU_MCDECLK>, /* Main MCDE clock */
  931. <&prcmu_clk PRCMU_LCDCLK>, /* LCD clock */
  932. <&prcmu_clk PRCMU_PLLDSI>; /* HDMI clock */
  933. clock-names = "mcde", "lcd", "hdmi";
  934. #address-cells = <1>;
  935. #size-cells = <1>;
  936. ranges;
  937. status = "disabled";
  938. dsi0: dsi@a0351000 {
  939. compatible = "ste,mcde-dsi";
  940. reg = <0xa0351000 0x1000>;
  941. clocks = <&prcmu_clk PRCMU_DSI0CLK>, <&prcmu_clk PRCMU_DSI0ESCCLK>;
  942. clock-names = "hs", "lp";
  943. #address-cells = <1>;
  944. #size-cells = <0>;
  945. };
  946. dsi1: dsi@a0352000 {
  947. compatible = "ste,mcde-dsi";
  948. reg = <0xa0352000 0x1000>;
  949. clocks = <&prcmu_clk PRCMU_DSI1CLK>, <&prcmu_clk PRCMU_DSI1ESCCLK>;
  950. clock-names = "hs", "lp";
  951. #address-cells = <1>;
  952. #size-cells = <0>;
  953. };
  954. dsi2: dsi@a0353000 {
  955. compatible = "ste,mcde-dsi";
  956. reg = <0xa0353000 0x1000>;
  957. /* This DSI port only has the Low Power / Energy Save clock */
  958. clocks = <&prcmu_clk PRCMU_DSI2ESCCLK>;
  959. clock-names = "lp";
  960. #address-cells = <1>;
  961. #size-cells = <0>;
  962. };
  963. };
  964. cryp@a03cb000 {
  965. compatible = "stericsson,ux500-cryp";
  966. reg = <0xa03cb000 0x1000>;
  967. interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
  968. v-ape-supply = <&db8500_vape_reg>;
  969. clocks = <&prcc_pclk 6 1>;
  970. };
  971. hash@a03c2000 {
  972. compatible = "stericsson,ux500-hash";
  973. reg = <0xa03c2000 0x1000>;
  974. v-ape-supply = <&db8500_vape_reg>;
  975. clocks = <&prcc_pclk 6 2>;
  976. };
  977. };
  978. };