exynos4.dtsi 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Samsung's Exynos4 SoC series common device tree source
  4. *
  5. * Copyright (c) 2010-2011 Samsung Electronics Co., Ltd.
  6. * http://www.samsung.com
  7. * Copyright (c) 2010-2011 Linaro Ltd.
  8. * www.linaro.org
  9. *
  10. * Samsung's Exynos4 SoC series device nodes are listed in this file. Particular
  11. * SoCs from Exynos4 series can include this file and provide values for SoCs
  12. * specfic bindings.
  13. *
  14. * Note: This file does not include device nodes for all the controllers in
  15. * Exynos4 SoCs. As device tree coverage for Exynos4 increases, additional
  16. * nodes can be added to this file.
  17. */
  18. #include <dt-bindings/clock/exynos4.h>
  19. #include <dt-bindings/clock/exynos-audss-clk.h>
  20. #include <dt-bindings/interrupt-controller/arm-gic.h>
  21. #include <dt-bindings/interrupt-controller/irq.h>
  22. / {
  23. interrupt-parent = <&gic>;
  24. #address-cells = <1>;
  25. #size-cells = <1>;
  26. aliases {
  27. spi0 = &spi_0;
  28. spi1 = &spi_1;
  29. spi2 = &spi_2;
  30. i2c0 = &i2c_0;
  31. i2c1 = &i2c_1;
  32. i2c2 = &i2c_2;
  33. i2c3 = &i2c_3;
  34. i2c4 = &i2c_4;
  35. i2c5 = &i2c_5;
  36. i2c6 = &i2c_6;
  37. i2c7 = &i2c_7;
  38. i2c8 = &i2c_8;
  39. csis0 = &csis_0;
  40. csis1 = &csis_1;
  41. fimc0 = &fimc_0;
  42. fimc1 = &fimc_1;
  43. fimc2 = &fimc_2;
  44. fimc3 = &fimc_3;
  45. serial0 = &serial_0;
  46. serial1 = &serial_1;
  47. serial2 = &serial_2;
  48. serial3 = &serial_3;
  49. };
  50. pmu: pmu {
  51. compatible = "arm,cortex-a9-pmu";
  52. interrupt-parent = <&combiner>;
  53. status = "disabled";
  54. };
  55. soc: soc {
  56. compatible = "simple-bus";
  57. #address-cells = <1>;
  58. #size-cells = <1>;
  59. ranges;
  60. clock_audss: clock-controller@3810000 {
  61. compatible = "samsung,exynos4210-audss-clock";
  62. reg = <0x03810000 0x0C>;
  63. #clock-cells = <1>;
  64. clocks = <&clock CLK_FIN_PLL>, <&clock CLK_FOUT_EPLL>,
  65. <&clock CLK_SCLK_AUDIO0>,
  66. <&clock CLK_SCLK_AUDIO0>;
  67. clock-names = "pll_ref", "pll_in", "sclk_audio",
  68. "sclk_pcm_in";
  69. };
  70. i2s0: i2s@3830000 {
  71. compatible = "samsung,s5pv210-i2s";
  72. reg = <0x03830000 0x100>;
  73. clocks = <&clock_audss EXYNOS_I2S_BUS>,
  74. <&clock_audss EXYNOS_DOUT_AUD_BUS>,
  75. <&clock_audss EXYNOS_SCLK_I2S>;
  76. clock-names = "iis", "i2s_opclk0", "i2s_opclk1";
  77. #clock-cells = <1>;
  78. clock-output-names = "i2s_cdclk0";
  79. dmas = <&pdma0 12>, <&pdma0 11>, <&pdma0 10>;
  80. dma-names = "tx", "rx", "tx-sec";
  81. samsung,idma-addr = <0x03000000>;
  82. #sound-dai-cells = <1>;
  83. status = "disabled";
  84. };
  85. chipid@10000000 {
  86. compatible = "samsung,exynos4210-chipid";
  87. reg = <0x10000000 0x100>;
  88. };
  89. scu: snoop-control-unit@10500000 {
  90. compatible = "arm,cortex-a9-scu";
  91. reg = <0x10500000 0x2000>;
  92. };
  93. memory-controller@12570000 {
  94. compatible = "samsung,exynos4210-srom";
  95. reg = <0x12570000 0x14>;
  96. };
  97. mipi_phy: video-phy {
  98. compatible = "samsung,s5pv210-mipi-video-phy";
  99. #phy-cells = <1>;
  100. syscon = <&pmu_system_controller>;
  101. };
  102. pd_mfc: power-domain@10023c40 {
  103. compatible = "samsung,exynos4210-pd";
  104. reg = <0x10023C40 0x20>;
  105. #power-domain-cells = <0>;
  106. label = "MFC";
  107. };
  108. pd_g3d: power-domain@10023c60 {
  109. compatible = "samsung,exynos4210-pd";
  110. reg = <0x10023C60 0x20>;
  111. #power-domain-cells = <0>;
  112. label = "G3D";
  113. };
  114. pd_lcd0: power-domain@10023c80 {
  115. compatible = "samsung,exynos4210-pd";
  116. reg = <0x10023C80 0x20>;
  117. #power-domain-cells = <0>;
  118. label = "LCD0";
  119. };
  120. pd_tv: power-domain@10023c20 {
  121. compatible = "samsung,exynos4210-pd";
  122. reg = <0x10023C20 0x20>;
  123. #power-domain-cells = <0>;
  124. power-domains = <&pd_lcd0>;
  125. label = "TV";
  126. };
  127. pd_cam: power-domain@10023c00 {
  128. compatible = "samsung,exynos4210-pd";
  129. reg = <0x10023C00 0x20>;
  130. #power-domain-cells = <0>;
  131. label = "CAM";
  132. };
  133. pd_gps: power-domain@10023ce0 {
  134. compatible = "samsung,exynos4210-pd";
  135. reg = <0x10023CE0 0x20>;
  136. #power-domain-cells = <0>;
  137. label = "GPS";
  138. };
  139. pd_gps_alive: power-domain@10023d00 {
  140. compatible = "samsung,exynos4210-pd";
  141. reg = <0x10023D00 0x20>;
  142. #power-domain-cells = <0>;
  143. label = "GPS alive";
  144. };
  145. gic: interrupt-controller@10490000 {
  146. compatible = "arm,cortex-a9-gic";
  147. #interrupt-cells = <3>;
  148. interrupt-controller;
  149. reg = <0x10490000 0x10000>, <0x10480000 0x10000>;
  150. };
  151. combiner: interrupt-controller@10440000 {
  152. compatible = "samsung,exynos4210-combiner";
  153. #interrupt-cells = <2>;
  154. interrupt-controller;
  155. reg = <0x10440000 0x1000>;
  156. };
  157. sys_reg: syscon@10010000 {
  158. compatible = "samsung,exynos4-sysreg", "syscon";
  159. reg = <0x10010000 0x400>;
  160. };
  161. pmu_system_controller: system-controller@10020000 {
  162. compatible = "samsung,exynos4210-pmu", "syscon";
  163. reg = <0x10020000 0x4000>;
  164. interrupt-controller;
  165. #interrupt-cells = <3>;
  166. interrupt-parent = <&gic>;
  167. };
  168. dsi_0: dsi@11c80000 {
  169. compatible = "samsung,exynos4210-mipi-dsi";
  170. reg = <0x11C80000 0x10000>;
  171. interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
  172. power-domains = <&pd_lcd0>;
  173. phys = <&mipi_phy 1>;
  174. phy-names = "dsim";
  175. clocks = <&clock CLK_DSIM0>, <&clock CLK_SCLK_MIPI0>;
  176. clock-names = "bus_clk", "sclk_mipi";
  177. status = "disabled";
  178. #address-cells = <1>;
  179. #size-cells = <0>;
  180. };
  181. camera: camera {
  182. compatible = "samsung,fimc", "simple-bus";
  183. status = "disabled";
  184. #address-cells = <1>;
  185. #size-cells = <1>;
  186. #clock-cells = <1>;
  187. clock-output-names = "cam_a_clkout", "cam_b_clkout";
  188. ranges;
  189. fimc_0: fimc@11800000 {
  190. compatible = "samsung,exynos4210-fimc";
  191. reg = <0x11800000 0x1000>;
  192. interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>;
  193. clocks = <&clock CLK_FIMC0>,
  194. <&clock CLK_SCLK_FIMC0>;
  195. clock-names = "fimc", "sclk_fimc";
  196. power-domains = <&pd_cam>;
  197. samsung,sysreg = <&sys_reg>;
  198. iommus = <&sysmmu_fimc0>;
  199. status = "disabled";
  200. };
  201. fimc_1: fimc@11810000 {
  202. compatible = "samsung,exynos4210-fimc";
  203. reg = <0x11810000 0x1000>;
  204. interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
  205. clocks = <&clock CLK_FIMC1>,
  206. <&clock CLK_SCLK_FIMC1>;
  207. clock-names = "fimc", "sclk_fimc";
  208. power-domains = <&pd_cam>;
  209. samsung,sysreg = <&sys_reg>;
  210. iommus = <&sysmmu_fimc1>;
  211. status = "disabled";
  212. };
  213. fimc_2: fimc@11820000 {
  214. compatible = "samsung,exynos4210-fimc";
  215. reg = <0x11820000 0x1000>;
  216. interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>;
  217. clocks = <&clock CLK_FIMC2>,
  218. <&clock CLK_SCLK_FIMC2>;
  219. clock-names = "fimc", "sclk_fimc";
  220. power-domains = <&pd_cam>;
  221. samsung,sysreg = <&sys_reg>;
  222. iommus = <&sysmmu_fimc2>;
  223. status = "disabled";
  224. };
  225. fimc_3: fimc@11830000 {
  226. compatible = "samsung,exynos4210-fimc";
  227. reg = <0x11830000 0x1000>;
  228. interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
  229. clocks = <&clock CLK_FIMC3>,
  230. <&clock CLK_SCLK_FIMC3>;
  231. clock-names = "fimc", "sclk_fimc";
  232. power-domains = <&pd_cam>;
  233. samsung,sysreg = <&sys_reg>;
  234. iommus = <&sysmmu_fimc3>;
  235. status = "disabled";
  236. };
  237. csis_0: csis@11880000 {
  238. compatible = "samsung,exynos4210-csis";
  239. reg = <0x11880000 0x4000>;
  240. interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
  241. clocks = <&clock CLK_CSIS0>,
  242. <&clock CLK_SCLK_CSIS0>;
  243. clock-names = "csis", "sclk_csis";
  244. bus-width = <4>;
  245. power-domains = <&pd_cam>;
  246. phys = <&mipi_phy 0>;
  247. phy-names = "csis";
  248. status = "disabled";
  249. #address-cells = <1>;
  250. #size-cells = <0>;
  251. };
  252. csis_1: csis@11890000 {
  253. compatible = "samsung,exynos4210-csis";
  254. reg = <0x11890000 0x4000>;
  255. interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
  256. clocks = <&clock CLK_CSIS1>,
  257. <&clock CLK_SCLK_CSIS1>;
  258. clock-names = "csis", "sclk_csis";
  259. bus-width = <2>;
  260. power-domains = <&pd_cam>;
  261. phys = <&mipi_phy 2>;
  262. phy-names = "csis";
  263. status = "disabled";
  264. #address-cells = <1>;
  265. #size-cells = <0>;
  266. };
  267. };
  268. rtc: rtc@10070000 {
  269. compatible = "samsung,s3c6410-rtc";
  270. reg = <0x10070000 0x100>;
  271. interrupt-parent = <&pmu_system_controller>;
  272. interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
  273. <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
  274. clocks = <&clock CLK_RTC>;
  275. clock-names = "rtc";
  276. status = "disabled";
  277. };
  278. keypad: keypad@100a0000 {
  279. compatible = "samsung,s5pv210-keypad";
  280. reg = <0x100A0000 0x100>;
  281. interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
  282. clocks = <&clock CLK_KEYIF>;
  283. clock-names = "keypad";
  284. status = "disabled";
  285. };
  286. sdhci_0: mmc@12510000 {
  287. compatible = "samsung,exynos4210-sdhci";
  288. reg = <0x12510000 0x100>;
  289. interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
  290. clocks = <&clock CLK_SDMMC0>, <&clock CLK_SCLK_MMC0>;
  291. clock-names = "hsmmc", "mmc_busclk.2";
  292. status = "disabled";
  293. };
  294. sdhci_1: mmc@12520000 {
  295. compatible = "samsung,exynos4210-sdhci";
  296. reg = <0x12520000 0x100>;
  297. interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
  298. clocks = <&clock CLK_SDMMC1>, <&clock CLK_SCLK_MMC1>;
  299. clock-names = "hsmmc", "mmc_busclk.2";
  300. status = "disabled";
  301. };
  302. sdhci_2: mmc@12530000 {
  303. compatible = "samsung,exynos4210-sdhci";
  304. reg = <0x12530000 0x100>;
  305. interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
  306. clocks = <&clock CLK_SDMMC2>, <&clock CLK_SCLK_MMC2>;
  307. clock-names = "hsmmc", "mmc_busclk.2";
  308. status = "disabled";
  309. };
  310. sdhci_3: mmc@12540000 {
  311. compatible = "samsung,exynos4210-sdhci";
  312. reg = <0x12540000 0x100>;
  313. interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
  314. clocks = <&clock CLK_SDMMC3>, <&clock CLK_SCLK_MMC3>;
  315. clock-names = "hsmmc", "mmc_busclk.2";
  316. status = "disabled";
  317. };
  318. exynos_usbphy: exynos-usbphy@125b0000 {
  319. compatible = "samsung,exynos4210-usb2-phy";
  320. reg = <0x125B0000 0x100>;
  321. samsung,pmureg-phandle = <&pmu_system_controller>;
  322. clocks = <&clock CLK_USB_DEVICE>, <&clock CLK_XUSBXTI>;
  323. clock-names = "phy", "ref";
  324. #phy-cells = <1>;
  325. status = "disabled";
  326. };
  327. hsotg: hsotg@12480000 {
  328. compatible = "samsung,s3c6400-hsotg";
  329. reg = <0x12480000 0x20000>;
  330. interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
  331. clocks = <&clock CLK_USB_DEVICE>;
  332. clock-names = "otg";
  333. phys = <&exynos_usbphy 0>;
  334. phy-names = "usb2-phy";
  335. status = "disabled";
  336. };
  337. ehci: usb@12580000 {
  338. compatible = "samsung,exynos4210-ehci";
  339. reg = <0x12580000 0x100>;
  340. interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
  341. clocks = <&clock CLK_USB_HOST>;
  342. clock-names = "usbhost";
  343. status = "disabled";
  344. phys = <&exynos_usbphy 1>, <&exynos_usbphy 2>, <&exynos_usbphy 3>;
  345. phy-names = "host", "hsic0", "hsic1";
  346. };
  347. ohci: usb@12590000 {
  348. compatible = "samsung,exynos4210-ohci";
  349. reg = <0x12590000 0x100>;
  350. interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
  351. clocks = <&clock CLK_USB_HOST>;
  352. clock-names = "usbhost";
  353. status = "disabled";
  354. phys = <&exynos_usbphy 1>;
  355. phy-names = "host";
  356. };
  357. gpu: gpu@13000000 {
  358. compatible = "samsung,exynos4210-mali", "arm,mali-400";
  359. reg = <0x13000000 0x10000>;
  360. /*
  361. * CLK_G3D is not actually bus clock but a IP-level clock.
  362. * The bus clock is not described in hardware manual.
  363. */
  364. clocks = <&clock CLK_G3D>,
  365. <&clock CLK_SCLK_G3D>;
  366. clock-names = "bus", "core";
  367. power-domains = <&pd_g3d>;
  368. status = "disabled";
  369. };
  370. i2s1: i2s@13960000 {
  371. compatible = "samsung,s3c6410-i2s";
  372. reg = <0x13960000 0x100>;
  373. clocks = <&clock CLK_I2S1>;
  374. clock-names = "iis";
  375. #clock-cells = <1>;
  376. clock-output-names = "i2s_cdclk1";
  377. dmas = <&pdma1 12>, <&pdma1 11>;
  378. dma-names = "tx", "rx";
  379. #sound-dai-cells = <1>;
  380. status = "disabled";
  381. };
  382. i2s2: i2s@13970000 {
  383. compatible = "samsung,s3c6410-i2s";
  384. reg = <0x13970000 0x100>;
  385. clocks = <&clock CLK_I2S2>;
  386. clock-names = "iis";
  387. #clock-cells = <1>;
  388. clock-output-names = "i2s_cdclk2";
  389. dmas = <&pdma0 14>, <&pdma0 13>;
  390. dma-names = "tx", "rx";
  391. #sound-dai-cells = <1>;
  392. status = "disabled";
  393. };
  394. mfc: codec@13400000 {
  395. compatible = "samsung,mfc-v5";
  396. reg = <0x13400000 0x10000>;
  397. interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
  398. power-domains = <&pd_mfc>;
  399. clocks = <&clock CLK_MFC>, <&clock CLK_SCLK_MFC>;
  400. clock-names = "mfc", "sclk_mfc";
  401. iommus = <&sysmmu_mfc_l>, <&sysmmu_mfc_r>;
  402. iommu-names = "left", "right";
  403. };
  404. serial_0: serial@13800000 {
  405. compatible = "samsung,exynos4210-uart";
  406. reg = <0x13800000 0x100>;
  407. interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
  408. clocks = <&clock CLK_UART0>, <&clock CLK_SCLK_UART0>;
  409. clock-names = "uart", "clk_uart_baud0";
  410. dmas = <&pdma0 15>, <&pdma0 16>;
  411. dma-names = "rx", "tx";
  412. status = "disabled";
  413. };
  414. serial_1: serial@13810000 {
  415. compatible = "samsung,exynos4210-uart";
  416. reg = <0x13810000 0x100>;
  417. interrupts = <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>;
  418. clocks = <&clock CLK_UART1>, <&clock CLK_SCLK_UART1>;
  419. clock-names = "uart", "clk_uart_baud0";
  420. dmas = <&pdma1 15>, <&pdma1 16>;
  421. dma-names = "rx", "tx";
  422. status = "disabled";
  423. };
  424. serial_2: serial@13820000 {
  425. compatible = "samsung,exynos4210-uart";
  426. reg = <0x13820000 0x100>;
  427. interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
  428. clocks = <&clock CLK_UART2>, <&clock CLK_SCLK_UART2>;
  429. clock-names = "uart", "clk_uart_baud0";
  430. dmas = <&pdma0 17>, <&pdma0 18>;
  431. dma-names = "rx", "tx";
  432. status = "disabled";
  433. };
  434. serial_3: serial@13830000 {
  435. compatible = "samsung,exynos4210-uart";
  436. reg = <0x13830000 0x100>;
  437. interrupts = <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
  438. clocks = <&clock CLK_UART3>, <&clock CLK_SCLK_UART3>;
  439. clock-names = "uart", "clk_uart_baud0";
  440. dmas = <&pdma1 17>, <&pdma1 18>;
  441. dma-names = "rx", "tx";
  442. status = "disabled";
  443. };
  444. i2c_0: i2c@13860000 {
  445. #address-cells = <1>;
  446. #size-cells = <0>;
  447. compatible = "samsung,s3c2440-i2c";
  448. reg = <0x13860000 0x100>;
  449. interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
  450. clocks = <&clock CLK_I2C0>;
  451. clock-names = "i2c";
  452. pinctrl-names = "default";
  453. pinctrl-0 = <&i2c0_bus>;
  454. status = "disabled";
  455. };
  456. i2c_1: i2c@13870000 {
  457. #address-cells = <1>;
  458. #size-cells = <0>;
  459. compatible = "samsung,s3c2440-i2c";
  460. reg = <0x13870000 0x100>;
  461. interrupts = <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>;
  462. clocks = <&clock CLK_I2C1>;
  463. clock-names = "i2c";
  464. pinctrl-names = "default";
  465. pinctrl-0 = <&i2c1_bus>;
  466. status = "disabled";
  467. };
  468. i2c_2: i2c@13880000 {
  469. #address-cells = <1>;
  470. #size-cells = <0>;
  471. compatible = "samsung,s3c2440-i2c";
  472. reg = <0x13880000 0x100>;
  473. interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>;
  474. clocks = <&clock CLK_I2C2>;
  475. clock-names = "i2c";
  476. pinctrl-names = "default";
  477. pinctrl-0 = <&i2c2_bus>;
  478. status = "disabled";
  479. };
  480. i2c_3: i2c@13890000 {
  481. #address-cells = <1>;
  482. #size-cells = <0>;
  483. compatible = "samsung,s3c2440-i2c";
  484. reg = <0x13890000 0x100>;
  485. interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
  486. clocks = <&clock CLK_I2C3>;
  487. clock-names = "i2c";
  488. pinctrl-names = "default";
  489. pinctrl-0 = <&i2c3_bus>;
  490. status = "disabled";
  491. };
  492. i2c_4: i2c@138a0000 {
  493. #address-cells = <1>;
  494. #size-cells = <0>;
  495. compatible = "samsung,s3c2440-i2c";
  496. reg = <0x138A0000 0x100>;
  497. interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
  498. clocks = <&clock CLK_I2C4>;
  499. clock-names = "i2c";
  500. pinctrl-names = "default";
  501. pinctrl-0 = <&i2c4_bus>;
  502. status = "disabled";
  503. };
  504. i2c_5: i2c@138b0000 {
  505. #address-cells = <1>;
  506. #size-cells = <0>;
  507. compatible = "samsung,s3c2440-i2c";
  508. reg = <0x138B0000 0x100>;
  509. interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>;
  510. clocks = <&clock CLK_I2C5>;
  511. clock-names = "i2c";
  512. pinctrl-names = "default";
  513. pinctrl-0 = <&i2c5_bus>;
  514. status = "disabled";
  515. };
  516. i2c_6: i2c@138c0000 {
  517. #address-cells = <1>;
  518. #size-cells = <0>;
  519. compatible = "samsung,s3c2440-i2c";
  520. reg = <0x138C0000 0x100>;
  521. interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
  522. clocks = <&clock CLK_I2C6>;
  523. clock-names = "i2c";
  524. pinctrl-names = "default";
  525. pinctrl-0 = <&i2c6_bus>;
  526. status = "disabled";
  527. };
  528. i2c_7: i2c@138d0000 {
  529. #address-cells = <1>;
  530. #size-cells = <0>;
  531. compatible = "samsung,s3c2440-i2c";
  532. reg = <0x138D0000 0x100>;
  533. interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
  534. clocks = <&clock CLK_I2C7>;
  535. clock-names = "i2c";
  536. pinctrl-names = "default";
  537. pinctrl-0 = <&i2c7_bus>;
  538. status = "disabled";
  539. };
  540. i2c_8: i2c@138e0000 {
  541. #address-cells = <1>;
  542. #size-cells = <0>;
  543. compatible = "samsung,s3c2440-hdmiphy-i2c";
  544. reg = <0x138E0000 0x100>;
  545. interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
  546. clocks = <&clock CLK_I2C_HDMI>;
  547. clock-names = "i2c";
  548. status = "disabled";
  549. hdmi_i2c_phy: hdmiphy@38 {
  550. compatible = "samsung,exynos4210-hdmiphy";
  551. reg = <0x38>;
  552. };
  553. };
  554. spi_0: spi@13920000 {
  555. compatible = "samsung,exynos4210-spi";
  556. reg = <0x13920000 0x100>;
  557. interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
  558. dmas = <&pdma0 7>, <&pdma0 6>;
  559. dma-names = "tx", "rx";
  560. #address-cells = <1>;
  561. #size-cells = <0>;
  562. clocks = <&clock CLK_SPI0>, <&clock CLK_SCLK_SPI0>;
  563. clock-names = "spi", "spi_busclk0";
  564. pinctrl-names = "default";
  565. pinctrl-0 = <&spi0_bus>;
  566. status = "disabled";
  567. };
  568. spi_1: spi@13930000 {
  569. compatible = "samsung,exynos4210-spi";
  570. reg = <0x13930000 0x100>;
  571. interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
  572. dmas = <&pdma1 7>, <&pdma1 6>;
  573. dma-names = "tx", "rx";
  574. #address-cells = <1>;
  575. #size-cells = <0>;
  576. clocks = <&clock CLK_SPI1>, <&clock CLK_SCLK_SPI1>;
  577. clock-names = "spi", "spi_busclk0";
  578. pinctrl-names = "default";
  579. pinctrl-0 = <&spi1_bus>;
  580. status = "disabled";
  581. };
  582. spi_2: spi@13940000 {
  583. compatible = "samsung,exynos4210-spi";
  584. reg = <0x13940000 0x100>;
  585. interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
  586. dmas = <&pdma0 9>, <&pdma0 8>;
  587. dma-names = "tx", "rx";
  588. #address-cells = <1>;
  589. #size-cells = <0>;
  590. clocks = <&clock CLK_SPI2>, <&clock CLK_SCLK_SPI2>;
  591. clock-names = "spi", "spi_busclk0";
  592. pinctrl-names = "default";
  593. pinctrl-0 = <&spi2_bus>;
  594. status = "disabled";
  595. };
  596. pwm: pwm@139d0000 {
  597. compatible = "samsung,exynos4210-pwm";
  598. reg = <0x139D0000 0x1000>;
  599. interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
  600. <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,
  601. <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
  602. <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>,
  603. <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
  604. clocks = <&clock CLK_PWM>;
  605. clock-names = "timers";
  606. #pwm-cells = <3>;
  607. status = "disabled";
  608. };
  609. pdma0: dma-controller@12680000 {
  610. compatible = "arm,pl330", "arm,primecell";
  611. reg = <0x12680000 0x1000>;
  612. interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
  613. clocks = <&clock CLK_PDMA0>;
  614. clock-names = "apb_pclk";
  615. #dma-cells = <1>;
  616. };
  617. pdma1: dma-controller@12690000 {
  618. compatible = "arm,pl330", "arm,primecell";
  619. reg = <0x12690000 0x1000>;
  620. interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
  621. clocks = <&clock CLK_PDMA1>;
  622. clock-names = "apb_pclk";
  623. #dma-cells = <1>;
  624. };
  625. mdma1: dma-controller@12850000 {
  626. compatible = "arm,pl330", "arm,primecell";
  627. reg = <0x12850000 0x1000>;
  628. interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
  629. clocks = <&clock CLK_MDMA>;
  630. clock-names = "apb_pclk";
  631. #dma-cells = <1>;
  632. };
  633. fimd: fimd@11c00000 {
  634. compatible = "samsung,exynos4210-fimd";
  635. interrupt-parent = <&combiner>;
  636. reg = <0x11c00000 0x20000>;
  637. interrupt-names = "fifo", "vsync", "lcd_sys";
  638. interrupts = <11 0>, <11 1>, <11 2>;
  639. clocks = <&clock CLK_SCLK_FIMD0>, <&clock CLK_FIMD0>;
  640. clock-names = "sclk_fimd", "fimd";
  641. power-domains = <&pd_lcd0>;
  642. iommus = <&sysmmu_fimd0>;
  643. samsung,sysreg = <&sys_reg>;
  644. status = "disabled";
  645. };
  646. tmu: tmu@100c0000 {
  647. interrupt-parent = <&combiner>;
  648. reg = <0x100C0000 0x100>;
  649. interrupts = <2 4>;
  650. status = "disabled";
  651. #thermal-sensor-cells = <0>;
  652. };
  653. jpeg_codec: jpeg-codec@11840000 {
  654. compatible = "samsung,exynos4210-jpeg";
  655. reg = <0x11840000 0x1000>;
  656. interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
  657. clocks = <&clock CLK_JPEG>;
  658. clock-names = "jpeg";
  659. power-domains = <&pd_cam>;
  660. iommus = <&sysmmu_jpeg>;
  661. };
  662. rotator: rotator@12810000 {
  663. compatible = "samsung,exynos4210-rotator";
  664. reg = <0x12810000 0x64>;
  665. interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
  666. clocks = <&clock CLK_ROTATOR>;
  667. clock-names = "rotator";
  668. iommus = <&sysmmu_rotator>;
  669. };
  670. hdmi: hdmi@12d00000 {
  671. compatible = "samsung,exynos4210-hdmi";
  672. reg = <0x12D00000 0x70000>;
  673. interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>;
  674. clock-names = "hdmi", "sclk_hdmi", "sclk_pixel",
  675. "sclk_hdmiphy", "mout_hdmi";
  676. clocks = <&clock CLK_HDMI>, <&clock CLK_SCLK_HDMI>,
  677. <&clock CLK_SCLK_PIXEL>,
  678. <&clock CLK_SCLK_HDMIPHY>,
  679. <&clock CLK_MOUT_HDMI>;
  680. phy = <&hdmi_i2c_phy>;
  681. power-domains = <&pd_tv>;
  682. samsung,syscon-phandle = <&pmu_system_controller>;
  683. #sound-dai-cells = <0>;
  684. status = "disabled";
  685. };
  686. hdmicec: cec@100b0000 {
  687. compatible = "samsung,s5p-cec";
  688. reg = <0x100B0000 0x200>;
  689. interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
  690. clocks = <&clock CLK_HDMI_CEC>;
  691. clock-names = "hdmicec";
  692. samsung,syscon-phandle = <&pmu_system_controller>;
  693. hdmi-phandle = <&hdmi>;
  694. pinctrl-names = "default";
  695. pinctrl-0 = <&hdmi_cec>;
  696. status = "disabled";
  697. };
  698. mixer: mixer@12c10000 {
  699. compatible = "samsung,exynos4210-mixer";
  700. interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
  701. reg = <0x12C10000 0x2100>, <0x12c00000 0x300>;
  702. power-domains = <&pd_tv>;
  703. iommus = <&sysmmu_tv>;
  704. status = "disabled";
  705. };
  706. ppmu_dmc0: ppmu@106a0000 {
  707. compatible = "samsung,exynos-ppmu";
  708. reg = <0x106a0000 0x2000>;
  709. clocks = <&clock CLK_PPMUDMC0>;
  710. clock-names = "ppmu";
  711. status = "disabled";
  712. };
  713. ppmu_dmc1: ppmu@106b0000 {
  714. compatible = "samsung,exynos-ppmu";
  715. reg = <0x106b0000 0x2000>;
  716. clocks = <&clock CLK_PPMUDMC1>;
  717. clock-names = "ppmu";
  718. status = "disabled";
  719. };
  720. ppmu_cpu: ppmu@106c0000 {
  721. compatible = "samsung,exynos-ppmu";
  722. reg = <0x106c0000 0x2000>;
  723. clocks = <&clock CLK_PPMUCPU>;
  724. clock-names = "ppmu";
  725. status = "disabled";
  726. };
  727. ppmu_rightbus: ppmu@112a0000 {
  728. compatible = "samsung,exynos-ppmu";
  729. reg = <0x112a0000 0x2000>;
  730. clocks = <&clock CLK_PPMURIGHT>;
  731. clock-names = "ppmu";
  732. status = "disabled";
  733. };
  734. ppmu_leftbus: ppmu@116a0000 {
  735. compatible = "samsung,exynos-ppmu";
  736. reg = <0x116a0000 0x2000>;
  737. clocks = <&clock CLK_PPMULEFT>;
  738. clock-names = "ppmu";
  739. status = "disabled";
  740. };
  741. ppmu_camif: ppmu@11ac0000 {
  742. compatible = "samsung,exynos-ppmu";
  743. reg = <0x11ac0000 0x2000>;
  744. clocks = <&clock CLK_PPMUCAMIF>;
  745. clock-names = "ppmu";
  746. status = "disabled";
  747. };
  748. ppmu_lcd0: ppmu@11e40000 {
  749. compatible = "samsung,exynos-ppmu";
  750. reg = <0x11e40000 0x2000>;
  751. clocks = <&clock CLK_PPMULCD0>;
  752. clock-names = "ppmu";
  753. status = "disabled";
  754. };
  755. ppmu_fsys: ppmu@12630000 {
  756. compatible = "samsung,exynos-ppmu";
  757. reg = <0x12630000 0x2000>;
  758. status = "disabled";
  759. };
  760. ppmu_image: ppmu@12aa0000 {
  761. compatible = "samsung,exynos-ppmu";
  762. reg = <0x12aa0000 0x2000>;
  763. clocks = <&clock CLK_PPMUIMAGE>;
  764. clock-names = "ppmu";
  765. status = "disabled";
  766. };
  767. ppmu_tv: ppmu@12e40000 {
  768. compatible = "samsung,exynos-ppmu";
  769. reg = <0x12e40000 0x2000>;
  770. clocks = <&clock CLK_PPMUTV>;
  771. clock-names = "ppmu";
  772. status = "disabled";
  773. };
  774. ppmu_g3d: ppmu@13220000 {
  775. compatible = "samsung,exynos-ppmu";
  776. reg = <0x13220000 0x2000>;
  777. clocks = <&clock CLK_PPMUG3D>;
  778. clock-names = "ppmu";
  779. status = "disabled";
  780. };
  781. ppmu_mfc_left: ppmu@13660000 {
  782. compatible = "samsung,exynos-ppmu";
  783. reg = <0x13660000 0x2000>;
  784. clocks = <&clock CLK_PPMUMFC_L>;
  785. clock-names = "ppmu";
  786. status = "disabled";
  787. };
  788. ppmu_mfc_right: ppmu@13670000 {
  789. compatible = "samsung,exynos-ppmu";
  790. reg = <0x13670000 0x2000>;
  791. clocks = <&clock CLK_PPMUMFC_R>;
  792. clock-names = "ppmu";
  793. status = "disabled";
  794. };
  795. sysmmu_mfc_l: sysmmu@13620000 {
  796. compatible = "samsung,exynos-sysmmu";
  797. reg = <0x13620000 0x1000>;
  798. interrupt-parent = <&combiner>;
  799. interrupts = <5 5>;
  800. clock-names = "sysmmu", "master";
  801. clocks = <&clock CLK_SMMU_MFCL>, <&clock CLK_MFC>;
  802. power-domains = <&pd_mfc>;
  803. #iommu-cells = <0>;
  804. };
  805. sysmmu_mfc_r: sysmmu@13630000 {
  806. compatible = "samsung,exynos-sysmmu";
  807. reg = <0x13630000 0x1000>;
  808. interrupt-parent = <&combiner>;
  809. interrupts = <5 6>;
  810. clock-names = "sysmmu", "master";
  811. clocks = <&clock CLK_SMMU_MFCR>, <&clock CLK_MFC>;
  812. power-domains = <&pd_mfc>;
  813. #iommu-cells = <0>;
  814. };
  815. sysmmu_tv: sysmmu@12e20000 {
  816. compatible = "samsung,exynos-sysmmu";
  817. reg = <0x12E20000 0x1000>;
  818. interrupt-parent = <&combiner>;
  819. interrupts = <5 4>;
  820. clock-names = "sysmmu", "master";
  821. clocks = <&clock CLK_SMMU_TV>, <&clock CLK_MIXER>;
  822. power-domains = <&pd_tv>;
  823. #iommu-cells = <0>;
  824. };
  825. sysmmu_fimc0: sysmmu@11a20000 {
  826. compatible = "samsung,exynos-sysmmu";
  827. reg = <0x11A20000 0x1000>;
  828. interrupt-parent = <&combiner>;
  829. interrupts = <4 2>;
  830. clock-names = "sysmmu", "master";
  831. clocks = <&clock CLK_SMMU_FIMC0>, <&clock CLK_FIMC0>;
  832. power-domains = <&pd_cam>;
  833. #iommu-cells = <0>;
  834. };
  835. sysmmu_fimc1: sysmmu@11a30000 {
  836. compatible = "samsung,exynos-sysmmu";
  837. reg = <0x11A30000 0x1000>;
  838. interrupt-parent = <&combiner>;
  839. interrupts = <4 3>;
  840. clock-names = "sysmmu", "master";
  841. clocks = <&clock CLK_SMMU_FIMC1>, <&clock CLK_FIMC1>;
  842. power-domains = <&pd_cam>;
  843. #iommu-cells = <0>;
  844. };
  845. sysmmu_fimc2: sysmmu@11a40000 {
  846. compatible = "samsung,exynos-sysmmu";
  847. reg = <0x11A40000 0x1000>;
  848. interrupt-parent = <&combiner>;
  849. interrupts = <4 4>;
  850. clock-names = "sysmmu", "master";
  851. clocks = <&clock CLK_SMMU_FIMC2>, <&clock CLK_FIMC2>;
  852. power-domains = <&pd_cam>;
  853. #iommu-cells = <0>;
  854. };
  855. sysmmu_fimc3: sysmmu@11a50000 {
  856. compatible = "samsung,exynos-sysmmu";
  857. reg = <0x11A50000 0x1000>;
  858. interrupt-parent = <&combiner>;
  859. interrupts = <4 5>;
  860. clock-names = "sysmmu", "master";
  861. clocks = <&clock CLK_SMMU_FIMC3>, <&clock CLK_FIMC3>;
  862. power-domains = <&pd_cam>;
  863. #iommu-cells = <0>;
  864. };
  865. sysmmu_jpeg: sysmmu@11a60000 {
  866. compatible = "samsung,exynos-sysmmu";
  867. reg = <0x11A60000 0x1000>;
  868. interrupt-parent = <&combiner>;
  869. interrupts = <4 6>;
  870. clock-names = "sysmmu", "master";
  871. clocks = <&clock CLK_SMMU_JPEG>, <&clock CLK_JPEG>;
  872. power-domains = <&pd_cam>;
  873. #iommu-cells = <0>;
  874. };
  875. sysmmu_rotator: sysmmu@12a30000 {
  876. compatible = "samsung,exynos-sysmmu";
  877. reg = <0x12A30000 0x1000>;
  878. interrupt-parent = <&combiner>;
  879. interrupts = <5 0>;
  880. clock-names = "sysmmu", "master";
  881. clocks = <&clock CLK_SMMU_ROTATOR>,
  882. <&clock CLK_ROTATOR>;
  883. #iommu-cells = <0>;
  884. };
  885. sysmmu_fimd0: sysmmu@11e20000 {
  886. compatible = "samsung,exynos-sysmmu";
  887. reg = <0x11E20000 0x1000>;
  888. interrupt-parent = <&combiner>;
  889. interrupts = <5 2>;
  890. clock-names = "sysmmu", "master";
  891. clocks = <&clock CLK_SMMU_FIMD0>, <&clock CLK_FIMD0>;
  892. power-domains = <&pd_lcd0>;
  893. #iommu-cells = <0>;
  894. };
  895. sss: sss@10830000 {
  896. compatible = "samsung,exynos4210-secss";
  897. reg = <0x10830000 0x300>;
  898. interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
  899. clocks = <&clock CLK_SSS>;
  900. clock-names = "secss";
  901. };
  902. prng: rng@10830400 {
  903. compatible = "samsung,exynos4-rng";
  904. reg = <0x10830400 0x200>;
  905. clocks = <&clock CLK_SSS>;
  906. clock-names = "secss";
  907. };
  908. };
  909. };
  910. #include "exynos-syscon-restart.dtsi"