exynos850.dtsi 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Samsung Exynos850 SoC device tree source
  4. *
  5. * Copyright (C) 2018 Samsung Electronics Co., Ltd.
  6. * Copyright (C) 2021 Linaro Ltd.
  7. *
  8. * Samsung Exynos850 SoC device nodes are listed in this file.
  9. * Exynos850 based board files can include this file and provide
  10. * values for board specific bindings.
  11. */
  12. #include <dt-bindings/clock/exynos850.h>
  13. #include <dt-bindings/interrupt-controller/arm-gic.h>
  14. #include <dt-bindings/soc/samsung,exynos-usi.h>
  15. / {
  16. /* Also known under engineering name Exynos3830 */
  17. compatible = "samsung,exynos850";
  18. #address-cells = <2>;
  19. #size-cells = <1>;
  20. interrupt-parent = <&gic>;
  21. aliases {
  22. pinctrl0 = &pinctrl_alive;
  23. pinctrl1 = &pinctrl_cmgp;
  24. pinctrl2 = &pinctrl_aud;
  25. pinctrl3 = &pinctrl_hsi;
  26. pinctrl4 = &pinctrl_core;
  27. pinctrl5 = &pinctrl_peri;
  28. };
  29. arm-pmu {
  30. compatible = "arm,cortex-a55-pmu";
  31. interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
  32. <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
  33. <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
  34. <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
  35. <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
  36. <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
  37. <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
  38. <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
  39. interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>,
  40. <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>;
  41. };
  42. /* Main system clock (XTCXO); external, must be 26 MHz */
  43. oscclk: clock-oscclk {
  44. compatible = "fixed-clock";
  45. clock-output-names = "oscclk";
  46. #clock-cells = <0>;
  47. };
  48. cpus {
  49. #address-cells = <1>;
  50. #size-cells = <0>;
  51. cpu-map {
  52. cluster0 {
  53. core0 {
  54. cpu = <&cpu0>;
  55. };
  56. core1 {
  57. cpu = <&cpu1>;
  58. };
  59. core2 {
  60. cpu = <&cpu2>;
  61. };
  62. core3 {
  63. cpu = <&cpu3>;
  64. };
  65. };
  66. cluster1 {
  67. core0 {
  68. cpu = <&cpu4>;
  69. };
  70. core1 {
  71. cpu = <&cpu5>;
  72. };
  73. core2 {
  74. cpu = <&cpu6>;
  75. };
  76. core3 {
  77. cpu = <&cpu7>;
  78. };
  79. };
  80. };
  81. cpu0: cpu@0 {
  82. device_type = "cpu";
  83. compatible = "arm,cortex-a55";
  84. reg = <0x0>;
  85. enable-method = "psci";
  86. };
  87. cpu1: cpu@1 {
  88. device_type = "cpu";
  89. compatible = "arm,cortex-a55";
  90. reg = <0x1>;
  91. enable-method = "psci";
  92. };
  93. cpu2: cpu@2 {
  94. device_type = "cpu";
  95. compatible = "arm,cortex-a55";
  96. reg = <0x2>;
  97. enable-method = "psci";
  98. };
  99. cpu3: cpu@3 {
  100. device_type = "cpu";
  101. compatible = "arm,cortex-a55";
  102. reg = <0x3>;
  103. enable-method = "psci";
  104. };
  105. cpu4: cpu@100 {
  106. device_type = "cpu";
  107. compatible = "arm,cortex-a55";
  108. reg = <0x100>;
  109. enable-method = "psci";
  110. };
  111. cpu5: cpu@101 {
  112. device_type = "cpu";
  113. compatible = "arm,cortex-a55";
  114. reg = <0x101>;
  115. enable-method = "psci";
  116. };
  117. cpu6: cpu@102 {
  118. device_type = "cpu";
  119. compatible = "arm,cortex-a55";
  120. reg = <0x102>;
  121. enable-method = "psci";
  122. };
  123. cpu7: cpu@103 {
  124. device_type = "cpu";
  125. compatible = "arm,cortex-a55";
  126. reg = <0x103>;
  127. enable-method = "psci";
  128. };
  129. };
  130. psci {
  131. compatible = "arm,psci-1.0";
  132. method = "smc";
  133. };
  134. timer {
  135. compatible = "arm,armv8-timer";
  136. /* Hypervisor Virtual Timer interrupt is not wired to GIC */
  137. interrupts =
  138. <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
  139. <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
  140. <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
  141. <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
  142. };
  143. soc: soc@0 {
  144. compatible = "simple-bus";
  145. #address-cells = <1>;
  146. #size-cells = <1>;
  147. ranges = <0x0 0x0 0x0 0x20000000>;
  148. chipid@10000000 {
  149. compatible = "samsung,exynos850-chipid";
  150. reg = <0x10000000 0x100>;
  151. };
  152. timer@10040000 {
  153. compatible = "samsung,exynos850-mct",
  154. "samsung,exynos4210-mct";
  155. reg = <0x10040000 0x800>;
  156. interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
  157. <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
  158. <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>,
  159. <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
  160. <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
  161. <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
  162. <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>,
  163. <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,
  164. <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
  165. <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
  166. <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>,
  167. <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>;
  168. clocks = <&oscclk>, <&cmu_peri CLK_GOUT_MCT_PCLK>;
  169. clock-names = "fin_pll", "mct";
  170. };
  171. gic: interrupt-controller@12a01000 {
  172. compatible = "arm,gic-400";
  173. #interrupt-cells = <3>;
  174. #address-cells = <0>;
  175. reg = <0x12a01000 0x1000>,
  176. <0x12a02000 0x2000>,
  177. <0x12a04000 0x2000>,
  178. <0x12a06000 0x2000>;
  179. interrupt-controller;
  180. interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(8) |
  181. IRQ_TYPE_LEVEL_HIGH)>;
  182. };
  183. pmu_system_controller: system-controller@11860000 {
  184. compatible = "samsung,exynos850-pmu", "syscon";
  185. reg = <0x11860000 0x10000>;
  186. clocks = <&cmu_apm CLK_GOUT_PMU_ALIVE_PCLK>;
  187. reboot: syscon-reboot {
  188. compatible = "syscon-reboot";
  189. regmap = <&pmu_system_controller>;
  190. offset = <0x3a00>; /* SYSTEM_CONFIGURATION */
  191. mask = <0x2>; /* SWRESET_SYSTEM */
  192. value = <0x2>; /* reset value */
  193. };
  194. };
  195. watchdog_cl0: watchdog@10050000 {
  196. compatible = "samsung,exynos850-wdt";
  197. reg = <0x10050000 0x100>;
  198. interrupts = <GIC_SPI 228 IRQ_TYPE_LEVEL_HIGH>;
  199. clocks = <&cmu_peri CLK_GOUT_WDT0_PCLK>, <&oscclk>;
  200. clock-names = "watchdog", "watchdog_src";
  201. samsung,syscon-phandle = <&pmu_system_controller>;
  202. samsung,cluster-index = <0>;
  203. status = "disabled";
  204. };
  205. watchdog_cl1: watchdog@10060000 {
  206. compatible = "samsung,exynos850-wdt";
  207. reg = <0x10060000 0x100>;
  208. interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
  209. clocks = <&cmu_peri CLK_GOUT_WDT1_PCLK>, <&oscclk>;
  210. clock-names = "watchdog", "watchdog_src";
  211. samsung,syscon-phandle = <&pmu_system_controller>;
  212. samsung,cluster-index = <1>;
  213. status = "disabled";
  214. };
  215. cmu_peri: clock-controller@10030000 {
  216. compatible = "samsung,exynos850-cmu-peri";
  217. reg = <0x10030000 0x8000>;
  218. #clock-cells = <1>;
  219. clocks = <&oscclk>, <&cmu_top CLK_DOUT_PERI_BUS>,
  220. <&cmu_top CLK_DOUT_PERI_UART>,
  221. <&cmu_top CLK_DOUT_PERI_IP>;
  222. clock-names = "oscclk", "dout_peri_bus",
  223. "dout_peri_uart", "dout_peri_ip";
  224. };
  225. cmu_apm: clock-controller@11800000 {
  226. compatible = "samsung,exynos850-cmu-apm";
  227. reg = <0x11800000 0x8000>;
  228. #clock-cells = <1>;
  229. clocks = <&oscclk>, <&cmu_top CLK_DOUT_CLKCMU_APM_BUS>;
  230. clock-names = "oscclk", "dout_clkcmu_apm_bus";
  231. };
  232. cmu_cmgp: clock-controller@11c00000 {
  233. compatible = "samsung,exynos850-cmu-cmgp";
  234. reg = <0x11c00000 0x8000>;
  235. #clock-cells = <1>;
  236. clocks = <&oscclk>, <&cmu_apm CLK_GOUT_CLKCMU_CMGP_BUS>;
  237. clock-names = "oscclk", "gout_clkcmu_cmgp_bus";
  238. };
  239. cmu_core: clock-controller@12000000 {
  240. compatible = "samsung,exynos850-cmu-core";
  241. reg = <0x12000000 0x8000>;
  242. #clock-cells = <1>;
  243. clocks = <&oscclk>, <&cmu_top CLK_DOUT_CORE_BUS>,
  244. <&cmu_top CLK_DOUT_CORE_CCI>,
  245. <&cmu_top CLK_DOUT_CORE_MMC_EMBD>,
  246. <&cmu_top CLK_DOUT_CORE_SSS>;
  247. clock-names = "oscclk", "dout_core_bus",
  248. "dout_core_cci", "dout_core_mmc_embd",
  249. "dout_core_sss";
  250. };
  251. cmu_top: clock-controller@120e0000 {
  252. compatible = "samsung,exynos850-cmu-top";
  253. reg = <0x120e0000 0x8000>;
  254. #clock-cells = <1>;
  255. clocks = <&oscclk>;
  256. clock-names = "oscclk";
  257. };
  258. cmu_mfcmscl: clock-controller@12c00000 {
  259. compatible = "samsung,exynos850-cmu-mfcmscl";
  260. reg = <0x12c00000 0x8000>;
  261. #clock-cells = <1>;
  262. clocks = <&oscclk>,
  263. <&cmu_top CLK_DOUT_MFCMSCL_MFC>,
  264. <&cmu_top CLK_DOUT_MFCMSCL_M2M>,
  265. <&cmu_top CLK_DOUT_MFCMSCL_MCSC>,
  266. <&cmu_top CLK_DOUT_MFCMSCL_JPEG>;
  267. clock-names = "oscclk", "dout_mfcmscl_mfc",
  268. "dout_mfcmscl_m2m", "dout_mfcmscl_mcsc",
  269. "dout_mfcmscl_jpeg";
  270. };
  271. cmu_dpu: clock-controller@13000000 {
  272. compatible = "samsung,exynos850-cmu-dpu";
  273. reg = <0x13000000 0x8000>;
  274. #clock-cells = <1>;
  275. clocks = <&oscclk>, <&cmu_top CLK_DOUT_DPU>;
  276. clock-names = "oscclk", "dout_dpu";
  277. };
  278. cmu_hsi: clock-controller@13400000 {
  279. compatible = "samsung,exynos850-cmu-hsi";
  280. reg = <0x13400000 0x8000>;
  281. #clock-cells = <1>;
  282. clocks = <&oscclk>,
  283. <&cmu_top CLK_DOUT_HSI_BUS>,
  284. <&cmu_top CLK_DOUT_HSI_MMC_CARD>,
  285. <&cmu_top CLK_DOUT_HSI_USB20DRD>;
  286. clock-names = "oscclk", "dout_hsi_bus",
  287. "dout_hsi_mmc_card", "dout_hsi_usb20drd";
  288. };
  289. cmu_is: clock-controller@14500000 {
  290. compatible = "samsung,exynos850-cmu-is";
  291. reg = <0x14500000 0x8000>;
  292. #clock-cells = <1>;
  293. clocks = <&oscclk>,
  294. <&cmu_top CLK_DOUT_IS_BUS>,
  295. <&cmu_top CLK_DOUT_IS_ITP>,
  296. <&cmu_top CLK_DOUT_IS_VRA>,
  297. <&cmu_top CLK_DOUT_IS_GDC>;
  298. clock-names = "oscclk", "dout_is_bus", "dout_is_itp",
  299. "dout_is_vra", "dout_is_gdc";
  300. };
  301. cmu_aud: clock-controller@14a00000 {
  302. compatible = "samsung,exynos850-cmu-aud";
  303. reg = <0x14a00000 0x8000>;
  304. #clock-cells = <1>;
  305. clocks = <&oscclk>, <&cmu_top CLK_DOUT_AUD>;
  306. clock-names = "oscclk", "dout_aud";
  307. };
  308. pinctrl_alive: pinctrl@11850000 {
  309. compatible = "samsung,exynos850-pinctrl";
  310. reg = <0x11850000 0x1000>;
  311. wakeup-interrupt-controller {
  312. compatible = "samsung,exynos850-wakeup-eint";
  313. };
  314. };
  315. pinctrl_cmgp: pinctrl@11c30000 {
  316. compatible = "samsung,exynos850-pinctrl";
  317. reg = <0x11c30000 0x1000>;
  318. wakeup-interrupt-controller {
  319. compatible = "samsung,exynos850-wakeup-eint";
  320. };
  321. };
  322. pinctrl_core: pinctrl@12070000 {
  323. compatible = "samsung,exynos850-pinctrl";
  324. reg = <0x12070000 0x1000>;
  325. interrupts = <GIC_SPI 451 IRQ_TYPE_LEVEL_HIGH>;
  326. };
  327. pinctrl_hsi: pinctrl@13430000 {
  328. compatible = "samsung,exynos850-pinctrl";
  329. reg = <0x13430000 0x1000>;
  330. interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
  331. };
  332. pinctrl_peri: pinctrl@139b0000 {
  333. compatible = "samsung,exynos850-pinctrl";
  334. reg = <0x139b0000 0x1000>;
  335. interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>;
  336. };
  337. pinctrl_aud: pinctrl@14a60000 {
  338. compatible = "samsung,exynos850-pinctrl";
  339. reg = <0x14a60000 0x1000>;
  340. };
  341. rtc: rtc@11a30000 {
  342. compatible = "samsung,s3c6410-rtc";
  343. reg = <0x11a30000 0x100>;
  344. interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
  345. <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
  346. clocks = <&cmu_apm CLK_GOUT_RTC_PCLK>;
  347. clock-names = "rtc";
  348. status = "disabled";
  349. };
  350. mmc_0: mmc@12100000 {
  351. compatible = "samsung,exynos7-dw-mshc-smu";
  352. reg = <0x12100000 0x2000>;
  353. interrupts = <GIC_SPI 452 IRQ_TYPE_LEVEL_HIGH>;
  354. #address-cells = <1>;
  355. #size-cells = <0>;
  356. clocks = <&cmu_core CLK_GOUT_MMC_EMBD_ACLK>,
  357. <&cmu_core CLK_GOUT_MMC_EMBD_SDCLKIN>;
  358. clock-names = "biu", "ciu";
  359. fifo-depth = <0x40>;
  360. status = "disabled";
  361. };
  362. i2c_0: i2c@13830000 {
  363. compatible = "samsung,s3c2440-i2c";
  364. reg = <0x13830000 0x100>;
  365. interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
  366. #address-cells = <1>;
  367. #size-cells = <0>;
  368. pinctrl-names = "default";
  369. pinctrl-0 = <&i2c0_pins>;
  370. clocks = <&cmu_peri CLK_GOUT_I2C0_PCLK>;
  371. clock-names = "i2c";
  372. status = "disabled";
  373. };
  374. i2c_1: i2c@13840000 {
  375. compatible = "samsung,s3c2440-i2c";
  376. reg = <0x13840000 0x100>;
  377. interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
  378. #address-cells = <1>;
  379. #size-cells = <0>;
  380. pinctrl-names = "default";
  381. pinctrl-0 = <&i2c1_pins>;
  382. clocks = <&cmu_peri CLK_GOUT_I2C1_PCLK>;
  383. clock-names = "i2c";
  384. status = "disabled";
  385. };
  386. i2c_2: i2c@13850000 {
  387. compatible = "samsung,s3c2440-i2c";
  388. reg = <0x13850000 0x100>;
  389. interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>;
  390. #address-cells = <1>;
  391. #size-cells = <0>;
  392. pinctrl-names = "default";
  393. pinctrl-0 = <&i2c2_pins>;
  394. clocks = <&cmu_peri CLK_GOUT_I2C2_PCLK>;
  395. clock-names = "i2c";
  396. status = "disabled";
  397. };
  398. i2c_3: i2c@13860000 {
  399. compatible = "samsung,s3c2440-i2c";
  400. reg = <0x13860000 0x100>;
  401. interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
  402. #address-cells = <1>;
  403. #size-cells = <0>;
  404. pinctrl-names = "default";
  405. pinctrl-0 = <&i2c3_pins>;
  406. clocks = <&cmu_peri CLK_GOUT_I2C3_PCLK>;
  407. clock-names = "i2c";
  408. status = "disabled";
  409. };
  410. i2c_4: i2c@13870000 {
  411. compatible = "samsung,s3c2440-i2c";
  412. reg = <0x13870000 0x100>;
  413. interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>;
  414. #address-cells = <1>;
  415. #size-cells = <0>;
  416. pinctrl-names = "default";
  417. pinctrl-0 = <&i2c4_pins>;
  418. clocks = <&cmu_peri CLK_GOUT_I2C4_PCLK>;
  419. clock-names = "i2c";
  420. status = "disabled";
  421. };
  422. /* I2C_5 (also called CAM_PMIC_I2C in TRM) */
  423. i2c_5: i2c@13880000 {
  424. compatible = "samsung,s3c2440-i2c";
  425. reg = <0x13880000 0x100>;
  426. interrupts = <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
  427. #address-cells = <1>;
  428. #size-cells = <0>;
  429. pinctrl-names = "default";
  430. pinctrl-0 = <&i2c5_pins>;
  431. clocks = <&cmu_peri CLK_GOUT_I2C5_PCLK>;
  432. clock-names = "i2c";
  433. status = "disabled";
  434. };
  435. /* I2C_6 (also called MOTOR_I2C in TRM) */
  436. i2c_6: i2c@13890000 {
  437. compatible = "samsung,s3c2440-i2c";
  438. reg = <0x13890000 0x100>;
  439. interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
  440. #address-cells = <1>;
  441. #size-cells = <0>;
  442. pinctrl-names = "default";
  443. pinctrl-0 = <&i2c6_pins>;
  444. clocks = <&cmu_peri CLK_GOUT_I2C6_PCLK>;
  445. clock-names = "i2c";
  446. status = "disabled";
  447. };
  448. sysmmu_mfcmscl: sysmmu@12c50000 {
  449. compatible = "samsung,exynos-sysmmu";
  450. reg = <0x12c50000 0x9000>;
  451. interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
  452. clock-names = "sysmmu";
  453. clocks = <&cmu_mfcmscl CLK_GOUT_MFCMSCL_SYSMMU_CLK>;
  454. #iommu-cells = <0>;
  455. };
  456. sysmmu_dpu: sysmmu@130c0000 {
  457. compatible = "samsung,exynos-sysmmu";
  458. reg = <0x130c0000 0x9000>;
  459. interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
  460. clock-names = "sysmmu";
  461. clocks = <&cmu_dpu CLK_GOUT_DPU_SMMU_CLK>;
  462. #iommu-cells = <0>;
  463. };
  464. sysmmu_is0: sysmmu@14550000 {
  465. compatible = "samsung,exynos-sysmmu";
  466. reg = <0x14550000 0x9000>;
  467. interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
  468. clock-names = "sysmmu";
  469. clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS0_CLK>;
  470. #iommu-cells = <0>;
  471. };
  472. sysmmu_is1: sysmmu@14570000 {
  473. compatible = "samsung,exynos-sysmmu";
  474. reg = <0x14570000 0x9000>;
  475. interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
  476. clock-names = "sysmmu";
  477. clocks = <&cmu_is CLK_GOUT_IS_SYSMMU_IS1_CLK>;
  478. #iommu-cells = <0>;
  479. };
  480. sysmmu_aud: sysmmu@14850000 {
  481. compatible = "samsung,exynos-sysmmu";
  482. reg = <0x14850000 0x9000>;
  483. interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
  484. clock-names = "sysmmu";
  485. clocks = <&cmu_aud CLK_GOUT_AUD_SYSMMU_CLK>;
  486. #iommu-cells = <0>;
  487. };
  488. sysreg_peri: syscon@10020000 {
  489. compatible = "samsung,exynos850-sysreg", "syscon";
  490. reg = <0x10020000 0x10000>;
  491. clocks = <&cmu_peri CLK_GOUT_SYSREG_PERI_PCLK>;
  492. };
  493. sysreg_cmgp: syscon@11c20000 {
  494. compatible = "samsung,exynos850-sysreg", "syscon";
  495. reg = <0x11c20000 0x10000>;
  496. clocks = <&cmu_cmgp CLK_GOUT_SYSREG_CMGP_PCLK>;
  497. };
  498. usi_uart: usi@138200c0 {
  499. compatible = "samsung,exynos850-usi";
  500. reg = <0x138200c0 0x20>;
  501. samsung,sysreg = <&sysreg_peri 0x1010>;
  502. samsung,mode = <USI_V2_UART>;
  503. #address-cells = <1>;
  504. #size-cells = <1>;
  505. ranges;
  506. clocks = <&cmu_peri CLK_GOUT_UART_PCLK>,
  507. <&cmu_peri CLK_GOUT_UART_IPCLK>;
  508. clock-names = "pclk", "ipclk";
  509. status = "disabled";
  510. serial_0: serial@13820000 {
  511. compatible = "samsung,exynos850-uart";
  512. reg = <0x13820000 0xc0>;
  513. interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
  514. pinctrl-names = "default";
  515. pinctrl-0 = <&uart0_pins>;
  516. clocks = <&cmu_peri CLK_GOUT_UART_PCLK>,
  517. <&cmu_peri CLK_GOUT_UART_IPCLK>;
  518. clock-names = "uart", "clk_uart_baud0";
  519. status = "disabled";
  520. };
  521. };
  522. usi_hsi2c_0: usi@138a00c0 {
  523. compatible = "samsung,exynos850-usi";
  524. reg = <0x138a00c0 0x20>;
  525. samsung,sysreg = <&sysreg_peri 0x1020>;
  526. samsung,mode = <USI_V2_I2C>;
  527. #address-cells = <1>;
  528. #size-cells = <1>;
  529. ranges;
  530. clocks = <&cmu_peri CLK_GOUT_HSI2C0_PCLK>,
  531. <&cmu_peri CLK_GOUT_HSI2C0_IPCLK>;
  532. clock-names = "pclk", "ipclk";
  533. status = "disabled";
  534. hsi2c_0: i2c@138a0000 {
  535. compatible = "samsung,exynosautov9-hsi2c";
  536. reg = <0x138a0000 0xc0>;
  537. interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
  538. #address-cells = <1>;
  539. #size-cells = <0>;
  540. pinctrl-names = "default";
  541. pinctrl-0 = <&hsi2c0_pins>;
  542. clocks = <&cmu_peri CLK_GOUT_HSI2C0_IPCLK>,
  543. <&cmu_peri CLK_GOUT_HSI2C0_PCLK>;
  544. clock-names = "hsi2c", "hsi2c_pclk";
  545. status = "disabled";
  546. };
  547. };
  548. usi_hsi2c_1: usi@138b00c0 {
  549. compatible = "samsung,exynos850-usi";
  550. reg = <0x138b00c0 0x20>;
  551. samsung,sysreg = <&sysreg_peri 0x1030>;
  552. samsung,mode = <USI_V2_I2C>;
  553. #address-cells = <1>;
  554. #size-cells = <1>;
  555. ranges;
  556. clocks = <&cmu_peri CLK_GOUT_HSI2C1_PCLK>,
  557. <&cmu_peri CLK_GOUT_HSI2C1_IPCLK>;
  558. clock-names = "pclk", "ipclk";
  559. status = "disabled";
  560. hsi2c_1: i2c@138b0000 {
  561. compatible = "samsung,exynosautov9-hsi2c";
  562. reg = <0x138b0000 0xc0>;
  563. interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>;
  564. #address-cells = <1>;
  565. #size-cells = <0>;
  566. pinctrl-names = "default";
  567. pinctrl-0 = <&hsi2c1_pins>;
  568. clocks = <&cmu_peri CLK_GOUT_HSI2C1_IPCLK>,
  569. <&cmu_peri CLK_GOUT_HSI2C1_PCLK>;
  570. clock-names = "hsi2c", "hsi2c_pclk";
  571. status = "disabled";
  572. };
  573. };
  574. usi_hsi2c_2: usi@138c00c0 {
  575. compatible = "samsung,exynos850-usi";
  576. reg = <0x138c00c0 0x20>;
  577. samsung,sysreg = <&sysreg_peri 0x1040>;
  578. samsung,mode = <USI_V2_I2C>;
  579. #address-cells = <1>;
  580. #size-cells = <1>;
  581. ranges;
  582. clocks = <&cmu_peri CLK_GOUT_HSI2C2_PCLK>,
  583. <&cmu_peri CLK_GOUT_HSI2C2_IPCLK>;
  584. clock-names = "pclk", "ipclk";
  585. status = "disabled";
  586. hsi2c_2: i2c@138c0000 {
  587. compatible = "samsung,exynosautov9-hsi2c";
  588. reg = <0x138c0000 0xc0>;
  589. interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
  590. #address-cells = <1>;
  591. #size-cells = <0>;
  592. pinctrl-names = "default";
  593. pinctrl-0 = <&hsi2c2_pins>;
  594. clocks = <&cmu_peri CLK_GOUT_HSI2C2_IPCLK>,
  595. <&cmu_peri CLK_GOUT_HSI2C2_PCLK>;
  596. clock-names = "hsi2c", "hsi2c_pclk";
  597. status = "disabled";
  598. };
  599. };
  600. usi_spi_0: usi@139400c0 {
  601. compatible = "samsung,exynos850-usi";
  602. reg = <0x139400c0 0x20>;
  603. samsung,sysreg = <&sysreg_peri 0x1050>;
  604. samsung,mode = <USI_V2_SPI>;
  605. #address-cells = <1>;
  606. #size-cells = <1>;
  607. ranges;
  608. clocks = <&cmu_peri CLK_GOUT_SPI0_PCLK>,
  609. <&cmu_peri CLK_GOUT_SPI0_IPCLK>;
  610. clock-names = "pclk", "ipclk";
  611. status = "disabled";
  612. };
  613. usi_cmgp0: usi@11d000c0 {
  614. compatible = "samsung,exynos850-usi";
  615. reg = <0x11d000c0 0x20>;
  616. samsung,sysreg = <&sysreg_cmgp 0x2000>;
  617. samsung,mode = <USI_V2_I2C>;
  618. #address-cells = <1>;
  619. #size-cells = <1>;
  620. ranges;
  621. clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>,
  622. <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>;
  623. clock-names = "pclk", "ipclk";
  624. status = "disabled";
  625. hsi2c_3: i2c@11d00000 {
  626. compatible = "samsung,exynosautov9-hsi2c";
  627. reg = <0x11d00000 0xc0>;
  628. interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
  629. #address-cells = <1>;
  630. #size-cells = <0>;
  631. pinctrl-names = "default";
  632. pinctrl-0 = <&hsi2c3_pins>;
  633. clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>,
  634. <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>;
  635. clock-names = "hsi2c", "hsi2c_pclk";
  636. status = "disabled";
  637. };
  638. serial_1: serial@11d00000 {
  639. compatible = "samsung,exynos850-uart";
  640. reg = <0x11d00000 0xc0>;
  641. interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
  642. pinctrl-names = "default";
  643. pinctrl-0 = <&uart1_single_pins>;
  644. clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI0_PCLK>,
  645. <&cmu_cmgp CLK_GOUT_CMGP_USI0_IPCLK>;
  646. clock-names = "uart", "clk_uart_baud0";
  647. status = "disabled";
  648. };
  649. };
  650. usi_cmgp1: usi@11d200c0 {
  651. compatible = "samsung,exynos850-usi";
  652. reg = <0x11d200c0 0x20>;
  653. samsung,sysreg = <&sysreg_cmgp 0x2010>;
  654. samsung,mode = <USI_V2_I2C>;
  655. #address-cells = <1>;
  656. #size-cells = <1>;
  657. ranges;
  658. clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>,
  659. <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>;
  660. clock-names = "pclk", "ipclk";
  661. status = "disabled";
  662. hsi2c_4: i2c@11d20000 {
  663. compatible = "samsung,exynosautov9-hsi2c";
  664. reg = <0x11d20000 0xc0>;
  665. interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
  666. #address-cells = <1>;
  667. #size-cells = <0>;
  668. pinctrl-names = "default";
  669. pinctrl-0 = <&hsi2c4_pins>;
  670. clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>,
  671. <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>;
  672. clock-names = "hsi2c", "hsi2c_pclk";
  673. status = "disabled";
  674. };
  675. serial_2: serial@11d20000 {
  676. compatible = "samsung,exynos850-uart";
  677. reg = <0x11d20000 0xc0>;
  678. interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
  679. pinctrl-names = "default";
  680. pinctrl-0 = <&uart2_single_pins>;
  681. clocks = <&cmu_cmgp CLK_GOUT_CMGP_USI1_PCLK>,
  682. <&cmu_cmgp CLK_GOUT_CMGP_USI1_IPCLK>;
  683. clock-names = "uart", "clk_uart_baud0";
  684. status = "disabled";
  685. };
  686. };
  687. };
  688. };
  689. #include "exynos850-pinctrl.dtsi"