r8a7792.dtsi 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859
  1. /*
  2. * Device Tree Source for the r8a7792 SoC
  3. *
  4. * Copyright (C) 2016 Cogent Embedded Inc.
  5. *
  6. * This file is licensed under the terms of the GNU General Public License
  7. * version 2. This program is licensed "as is" without any warranty of any
  8. * kind, whether express or implied.
  9. */
  10. #include <dt-bindings/clock/r8a7792-cpg-mssr.h>
  11. #include <dt-bindings/interrupt-controller/irq.h>
  12. #include <dt-bindings/interrupt-controller/arm-gic.h>
  13. #include <dt-bindings/power/r8a7792-sysc.h>
  14. / {
  15. compatible = "renesas,r8a7792";
  16. #address-cells = <2>;
  17. #size-cells = <2>;
  18. aliases {
  19. i2c0 = &i2c0;
  20. i2c1 = &i2c1;
  21. i2c2 = &i2c2;
  22. i2c3 = &i2c3;
  23. i2c4 = &i2c4;
  24. i2c5 = &i2c5;
  25. spi0 = &qspi;
  26. spi1 = &msiof0;
  27. spi2 = &msiof1;
  28. vin0 = &vin0;
  29. vin1 = &vin1;
  30. vin2 = &vin2;
  31. vin3 = &vin3;
  32. vin4 = &vin4;
  33. vin5 = &vin5;
  34. };
  35. cpus {
  36. #address-cells = <1>;
  37. #size-cells = <0>;
  38. enable-method = "renesas,apmu";
  39. cpu0: cpu@0 {
  40. device_type = "cpu";
  41. compatible = "arm,cortex-a15";
  42. reg = <0>;
  43. clock-frequency = <1000000000>;
  44. clocks = <&cpg CPG_CORE R8A7792_CLK_Z>;
  45. power-domains = <&sysc R8A7792_PD_CA15_CPU0>;
  46. next-level-cache = <&L2_CA15>;
  47. };
  48. cpu1: cpu@1 {
  49. device_type = "cpu";
  50. compatible = "arm,cortex-a15";
  51. reg = <1>;
  52. clock-frequency = <1000000000>;
  53. clocks = <&cpg CPG_CORE R8A7792_CLK_Z>;
  54. power-domains = <&sysc R8A7792_PD_CA15_CPU1>;
  55. next-level-cache = <&L2_CA15>;
  56. };
  57. L2_CA15: cache-controller-0 {
  58. compatible = "cache";
  59. cache-unified;
  60. cache-level = <2>;
  61. power-domains = <&sysc R8A7792_PD_CA15_SCU>;
  62. };
  63. };
  64. soc {
  65. compatible = "simple-bus";
  66. interrupt-parent = <&gic>;
  67. #address-cells = <2>;
  68. #size-cells = <2>;
  69. ranges;
  70. apmu@e6152000 {
  71. compatible = "renesas,r8a7792-apmu", "renesas,apmu";
  72. reg = <0 0xe6152000 0 0x188>;
  73. cpus = <&cpu0 &cpu1>;
  74. };
  75. gic: interrupt-controller@f1001000 {
  76. compatible = "arm,gic-400";
  77. #interrupt-cells = <3>;
  78. interrupt-controller;
  79. reg = <0 0xf1001000 0 0x1000>,
  80. <0 0xf1002000 0 0x2000>,
  81. <0 0xf1004000 0 0x2000>,
  82. <0 0xf1006000 0 0x2000>;
  83. interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) |
  84. IRQ_TYPE_LEVEL_HIGH)>;
  85. clocks = <&cpg CPG_MOD 408>;
  86. clock-names = "clk";
  87. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  88. resets = <&cpg 408>;
  89. };
  90. irqc: interrupt-controller@e61c0000 {
  91. compatible = "renesas,irqc-r8a7792", "renesas,irqc";
  92. #interrupt-cells = <2>;
  93. interrupt-controller;
  94. reg = <0 0xe61c0000 0 0x200>;
  95. interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
  96. <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
  97. <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
  98. <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
  99. clocks = <&cpg CPG_MOD 407>;
  100. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  101. resets = <&cpg 407>;
  102. };
  103. timer {
  104. compatible = "arm,armv7-timer";
  105. interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) |
  106. IRQ_TYPE_LEVEL_LOW)>,
  107. <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) |
  108. IRQ_TYPE_LEVEL_LOW)>,
  109. <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) |
  110. IRQ_TYPE_LEVEL_LOW)>,
  111. <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(2) |
  112. IRQ_TYPE_LEVEL_LOW)>;
  113. };
  114. rst: reset-controller@e6160000 {
  115. compatible = "renesas,r8a7792-rst";
  116. reg = <0 0xe6160000 0 0x0100>;
  117. };
  118. prr: chipid@ff000044 {
  119. compatible = "renesas,prr";
  120. reg = <0 0xff000044 0 4>;
  121. };
  122. sysc: system-controller@e6180000 {
  123. compatible = "renesas,r8a7792-sysc";
  124. reg = <0 0xe6180000 0 0x0200>;
  125. #power-domain-cells = <1>;
  126. };
  127. pfc: pin-controller@e6060000 {
  128. compatible = "renesas,pfc-r8a7792";
  129. reg = <0 0xe6060000 0 0x144>;
  130. };
  131. gpio0: gpio@e6050000 {
  132. compatible = "renesas,gpio-r8a7792",
  133. "renesas,rcar-gen2-gpio";
  134. reg = <0 0xe6050000 0 0x50>;
  135. interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
  136. #gpio-cells = <2>;
  137. gpio-controller;
  138. gpio-ranges = <&pfc 0 0 29>;
  139. #interrupt-cells = <2>;
  140. interrupt-controller;
  141. clocks = <&cpg CPG_MOD 912>;
  142. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  143. resets = <&cpg 912>;
  144. };
  145. gpio1: gpio@e6051000 {
  146. compatible = "renesas,gpio-r8a7792",
  147. "renesas,rcar-gen2-gpio";
  148. reg = <0 0xe6051000 0 0x50>;
  149. interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
  150. #gpio-cells = <2>;
  151. gpio-controller;
  152. gpio-ranges = <&pfc 0 32 23>;
  153. #interrupt-cells = <2>;
  154. interrupt-controller;
  155. clocks = <&cpg CPG_MOD 911>;
  156. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  157. resets = <&cpg 911>;
  158. };
  159. gpio2: gpio@e6052000 {
  160. compatible = "renesas,gpio-r8a7792",
  161. "renesas,rcar-gen2-gpio";
  162. reg = <0 0xe6052000 0 0x50>;
  163. interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
  164. #gpio-cells = <2>;
  165. gpio-controller;
  166. gpio-ranges = <&pfc 0 64 32>;
  167. #interrupt-cells = <2>;
  168. interrupt-controller;
  169. clocks = <&cpg CPG_MOD 910>;
  170. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  171. resets = <&cpg 910>;
  172. };
  173. gpio3: gpio@e6053000 {
  174. compatible = "renesas,gpio-r8a7792",
  175. "renesas,rcar-gen2-gpio";
  176. reg = <0 0xe6053000 0 0x50>;
  177. interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
  178. #gpio-cells = <2>;
  179. gpio-controller;
  180. gpio-ranges = <&pfc 0 96 28>;
  181. #interrupt-cells = <2>;
  182. interrupt-controller;
  183. clocks = <&cpg CPG_MOD 909>;
  184. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  185. resets = <&cpg 909>;
  186. };
  187. gpio4: gpio@e6054000 {
  188. compatible = "renesas,gpio-r8a7792",
  189. "renesas,rcar-gen2-gpio";
  190. reg = <0 0xe6054000 0 0x50>;
  191. interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
  192. #gpio-cells = <2>;
  193. gpio-controller;
  194. gpio-ranges = <&pfc 0 128 17>;
  195. #interrupt-cells = <2>;
  196. interrupt-controller;
  197. clocks = <&cpg CPG_MOD 908>;
  198. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  199. resets = <&cpg 908>;
  200. };
  201. gpio5: gpio@e6055000 {
  202. compatible = "renesas,gpio-r8a7792",
  203. "renesas,rcar-gen2-gpio";
  204. reg = <0 0xe6055000 0 0x50>;
  205. interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
  206. #gpio-cells = <2>;
  207. gpio-controller;
  208. gpio-ranges = <&pfc 0 160 17>;
  209. #interrupt-cells = <2>;
  210. interrupt-controller;
  211. clocks = <&cpg CPG_MOD 907>;
  212. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  213. resets = <&cpg 907>;
  214. };
  215. gpio6: gpio@e6055100 {
  216. compatible = "renesas,gpio-r8a7792",
  217. "renesas,rcar-gen2-gpio";
  218. reg = <0 0xe6055100 0 0x50>;
  219. interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
  220. #gpio-cells = <2>;
  221. gpio-controller;
  222. gpio-ranges = <&pfc 0 192 17>;
  223. #interrupt-cells = <2>;
  224. interrupt-controller;
  225. clocks = <&cpg CPG_MOD 905>;
  226. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  227. resets = <&cpg 905>;
  228. };
  229. gpio7: gpio@e6055200 {
  230. compatible = "renesas,gpio-r8a7792",
  231. "renesas,rcar-gen2-gpio";
  232. reg = <0 0xe6055200 0 0x50>;
  233. interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
  234. #gpio-cells = <2>;
  235. gpio-controller;
  236. gpio-ranges = <&pfc 0 224 17>;
  237. #interrupt-cells = <2>;
  238. interrupt-controller;
  239. clocks = <&cpg CPG_MOD 904>;
  240. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  241. resets = <&cpg 904>;
  242. };
  243. gpio8: gpio@e6055300 {
  244. compatible = "renesas,gpio-r8a7792",
  245. "renesas,rcar-gen2-gpio";
  246. reg = <0 0xe6055300 0 0x50>;
  247. interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
  248. #gpio-cells = <2>;
  249. gpio-controller;
  250. gpio-ranges = <&pfc 0 256 17>;
  251. #interrupt-cells = <2>;
  252. interrupt-controller;
  253. clocks = <&cpg CPG_MOD 921>;
  254. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  255. resets = <&cpg 921>;
  256. };
  257. gpio9: gpio@e6055400 {
  258. compatible = "renesas,gpio-r8a7792",
  259. "renesas,rcar-gen2-gpio";
  260. reg = <0 0xe6055400 0 0x50>;
  261. interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
  262. #gpio-cells = <2>;
  263. gpio-controller;
  264. gpio-ranges = <&pfc 0 288 17>;
  265. #interrupt-cells = <2>;
  266. interrupt-controller;
  267. clocks = <&cpg CPG_MOD 919>;
  268. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  269. resets = <&cpg 919>;
  270. };
  271. gpio10: gpio@e6055500 {
  272. compatible = "renesas,gpio-r8a7792",
  273. "renesas,rcar-gen2-gpio";
  274. reg = <0 0xe6055500 0 0x50>;
  275. interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
  276. #gpio-cells = <2>;
  277. gpio-controller;
  278. gpio-ranges = <&pfc 0 320 32>;
  279. #interrupt-cells = <2>;
  280. interrupt-controller;
  281. clocks = <&cpg CPG_MOD 914>;
  282. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  283. resets = <&cpg 914>;
  284. };
  285. gpio11: gpio@e6055600 {
  286. compatible = "renesas,gpio-r8a7792",
  287. "renesas,rcar-gen2-gpio";
  288. reg = <0 0xe6055600 0 0x50>;
  289. interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
  290. #gpio-cells = <2>;
  291. gpio-controller;
  292. gpio-ranges = <&pfc 0 352 30>;
  293. #interrupt-cells = <2>;
  294. interrupt-controller;
  295. clocks = <&cpg CPG_MOD 913>;
  296. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  297. resets = <&cpg 913>;
  298. };
  299. dmac0: dma-controller@e6700000 {
  300. compatible = "renesas,dmac-r8a7792",
  301. "renesas,rcar-dmac";
  302. reg = <0 0xe6700000 0 0x20000>;
  303. interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH
  304. GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH
  305. GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH
  306. GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH
  307. GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH
  308. GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH
  309. GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH
  310. GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH
  311. GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH
  312. GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH
  313. GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH
  314. GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH
  315. GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH
  316. GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH
  317. GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH
  318. GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>;
  319. interrupt-names = "error",
  320. "ch0", "ch1", "ch2", "ch3",
  321. "ch4", "ch5", "ch6", "ch7",
  322. "ch8", "ch9", "ch10", "ch11",
  323. "ch12", "ch13", "ch14";
  324. clocks = <&cpg CPG_MOD 219>;
  325. clock-names = "fck";
  326. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  327. resets = <&cpg 219>;
  328. #dma-cells = <1>;
  329. dma-channels = <15>;
  330. };
  331. dmac1: dma-controller@e6720000 {
  332. compatible = "renesas,dmac-r8a7792",
  333. "renesas,rcar-dmac";
  334. reg = <0 0xe6720000 0 0x20000>;
  335. interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH
  336. GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH
  337. GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH
  338. GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH
  339. GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH
  340. GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH
  341. GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH
  342. GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH
  343. GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH
  344. GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH
  345. GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH
  346. GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH
  347. GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH
  348. GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH
  349. GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH
  350. GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>;
  351. interrupt-names = "error",
  352. "ch0", "ch1", "ch2", "ch3",
  353. "ch4", "ch5", "ch6", "ch7",
  354. "ch8", "ch9", "ch10", "ch11",
  355. "ch12", "ch13", "ch14";
  356. clocks = <&cpg CPG_MOD 218>;
  357. clock-names = "fck";
  358. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  359. resets = <&cpg 218>;
  360. #dma-cells = <1>;
  361. dma-channels = <15>;
  362. };
  363. scif0: serial@e6e60000 {
  364. compatible = "renesas,scif-r8a7792",
  365. "renesas,rcar-gen2-scif", "renesas,scif";
  366. reg = <0 0xe6e60000 0 64>;
  367. interrupts = <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>;
  368. clocks = <&cpg CPG_MOD 721>,
  369. <&cpg CPG_CORE R8A7792_CLK_ZS>, <&scif_clk>;
  370. clock-names = "fck", "brg_int", "scif_clk";
  371. dmas = <&dmac0 0x29>, <&dmac0 0x2a>,
  372. <&dmac1 0x29>, <&dmac1 0x2a>;
  373. dma-names = "tx", "rx", "tx", "rx";
  374. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  375. resets = <&cpg 721>;
  376. status = "disabled";
  377. };
  378. scif1: serial@e6e68000 {
  379. compatible = "renesas,scif-r8a7792",
  380. "renesas,rcar-gen2-scif", "renesas,scif";
  381. reg = <0 0xe6e68000 0 64>;
  382. interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
  383. clocks = <&cpg CPG_MOD 720>,
  384. <&cpg CPG_CORE R8A7792_CLK_ZS>, <&scif_clk>;
  385. clock-names = "fck", "brg_int", "scif_clk";
  386. dmas = <&dmac0 0x2d>, <&dmac0 0x2e>,
  387. <&dmac1 0x2d>, <&dmac1 0x2e>;
  388. dma-names = "tx", "rx", "tx", "rx";
  389. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  390. resets = <&cpg 720>;
  391. status = "disabled";
  392. };
  393. scif2: serial@e6e58000 {
  394. compatible = "renesas,scif-r8a7792",
  395. "renesas,rcar-gen2-scif", "renesas,scif";
  396. reg = <0 0xe6e58000 0 64>;
  397. interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
  398. clocks = <&cpg CPG_MOD 719>,
  399. <&cpg CPG_CORE R8A7792_CLK_ZS>, <&scif_clk>;
  400. clock-names = "fck", "brg_int", "scif_clk";
  401. dmas = <&dmac0 0x2b>, <&dmac0 0x2c>,
  402. <&dmac1 0x2b>, <&dmac1 0x2c>;
  403. dma-names = "tx", "rx", "tx", "rx";
  404. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  405. resets = <&cpg 719>;
  406. status = "disabled";
  407. };
  408. scif3: serial@e6ea8000 {
  409. compatible = "renesas,scif-r8a7792",
  410. "renesas,rcar-gen2-scif", "renesas,scif";
  411. reg = <0 0xe6ea8000 0 64>;
  412. interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
  413. clocks = <&cpg CPG_MOD 718>,
  414. <&cpg CPG_CORE R8A7792_CLK_ZS>, <&scif_clk>;
  415. clock-names = "fck", "brg_int", "scif_clk";
  416. dmas = <&dmac0 0x2f>, <&dmac0 0x30>,
  417. <&dmac1 0x2f>, <&dmac1 0x30>;
  418. dma-names = "tx", "rx", "tx", "rx";
  419. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  420. resets = <&cpg 718>;
  421. status = "disabled";
  422. };
  423. hscif0: serial@e62c0000 {
  424. compatible = "renesas,hscif-r8a7792",
  425. "renesas,rcar-gen2-hscif", "renesas,hscif";
  426. reg = <0 0xe62c0000 0 96>;
  427. interrupts = <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
  428. clocks = <&cpg CPG_MOD 717>,
  429. <&cpg CPG_CORE R8A7792_CLK_ZS>, <&scif_clk>;
  430. clock-names = "fck", "brg_int", "scif_clk";
  431. dmas = <&dmac0 0x39>, <&dmac0 0x3a>,
  432. <&dmac1 0x39>, <&dmac1 0x3a>;
  433. dma-names = "tx", "rx", "tx", "rx";
  434. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  435. resets = <&cpg 717>;
  436. status = "disabled";
  437. };
  438. hscif1: serial@e62c8000 {
  439. compatible = "renesas,hscif-r8a7792",
  440. "renesas,rcar-gen2-hscif", "renesas,hscif";
  441. reg = <0 0xe62c8000 0 96>;
  442. interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
  443. clocks = <&cpg CPG_MOD 716>,
  444. <&cpg CPG_CORE R8A7792_CLK_ZS>, <&scif_clk>;
  445. clock-names = "fck", "brg_int", "scif_clk";
  446. dmas = <&dmac0 0x4d>, <&dmac0 0x4e>,
  447. <&dmac1 0x4d>, <&dmac1 0x4e>;
  448. dma-names = "tx", "rx", "tx", "rx";
  449. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  450. resets = <&cpg 716>;
  451. status = "disabled";
  452. };
  453. icram0: sram@e63a0000 {
  454. compatible = "mmio-sram";
  455. reg = <0 0xe63a0000 0 0x12000>;
  456. };
  457. icram1: sram@e63c0000 {
  458. compatible = "mmio-sram";
  459. reg = <0 0xe63c0000 0 0x1000>;
  460. #address-cells = <1>;
  461. #size-cells = <1>;
  462. ranges = <0 0 0xe63c0000 0x1000>;
  463. smp-sram@0 {
  464. compatible = "renesas,smp-sram";
  465. reg = <0 0x10>;
  466. };
  467. };
  468. sdhi0: sd@ee100000 {
  469. compatible = "renesas,sdhi-r8a7792";
  470. reg = <0 0xee100000 0 0x328>;
  471. interrupts = <0 165 IRQ_TYPE_LEVEL_HIGH>;
  472. dmas = <&dmac0 0xcd>, <&dmac0 0xce>,
  473. <&dmac1 0xcd>, <&dmac1 0xce>;
  474. dma-names = "tx", "rx", "tx", "rx";
  475. clocks = <&cpg CPG_MOD 314>;
  476. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  477. resets = <&cpg 314>;
  478. status = "disabled";
  479. };
  480. jpu: jpeg-codec@fe980000 {
  481. compatible = "renesas,jpu-r8a7792",
  482. "renesas,rcar-gen2-jpu";
  483. reg = <0 0xfe980000 0 0x10300>;
  484. interrupts = <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
  485. clocks = <&cpg CPG_MOD 106>;
  486. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  487. resets = <&cpg 106>;
  488. };
  489. avb: ethernet@e6800000 {
  490. compatible = "renesas,etheravb-r8a7792",
  491. "renesas,etheravb-rcar-gen2";
  492. reg = <0 0xe6800000 0 0x800>, <0 0xee0e8000 0 0x4000>;
  493. interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
  494. clocks = <&cpg CPG_MOD 812>;
  495. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  496. resets = <&cpg 812>;
  497. #address-cells = <1>;
  498. #size-cells = <0>;
  499. status = "disabled";
  500. };
  501. /* I2C doesn't need pinmux */
  502. i2c0: i2c@e6508000 {
  503. compatible = "renesas,i2c-r8a7792",
  504. "renesas,rcar-gen2-i2c";
  505. reg = <0 0xe6508000 0 0x40>;
  506. interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>;
  507. clocks = <&cpg CPG_MOD 931>;
  508. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  509. resets = <&cpg 931>;
  510. i2c-scl-internal-delay-ns = <6>;
  511. #address-cells = <1>;
  512. #size-cells = <0>;
  513. status = "disabled";
  514. };
  515. i2c1: i2c@e6518000 {
  516. compatible = "renesas,i2c-r8a7792",
  517. "renesas,rcar-gen2-i2c";
  518. reg = <0 0xe6518000 0 0x40>;
  519. interrupts = <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>;
  520. clocks = <&cpg CPG_MOD 930>;
  521. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  522. resets = <&cpg 930>;
  523. i2c-scl-internal-delay-ns = <6>;
  524. #address-cells = <1>;
  525. #size-cells = <0>;
  526. status = "disabled";
  527. };
  528. i2c2: i2c@e6530000 {
  529. compatible = "renesas,i2c-r8a7792",
  530. "renesas,rcar-gen2-i2c";
  531. reg = <0 0xe6530000 0 0x40>;
  532. interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>;
  533. clocks = <&cpg CPG_MOD 929>;
  534. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  535. resets = <&cpg 929>;
  536. i2c-scl-internal-delay-ns = <6>;
  537. #address-cells = <1>;
  538. #size-cells = <0>;
  539. status = "disabled";
  540. };
  541. i2c3: i2c@e6540000 {
  542. compatible = "renesas,i2c-r8a7792",
  543. "renesas,rcar-gen2-i2c";
  544. reg = <0 0xe6540000 0 0x40>;
  545. interrupts = <GIC_SPI 290 IRQ_TYPE_LEVEL_HIGH>;
  546. clocks = <&cpg CPG_MOD 928>;
  547. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  548. resets = <&cpg 928>;
  549. i2c-scl-internal-delay-ns = <6>;
  550. #address-cells = <1>;
  551. #size-cells = <0>;
  552. status = "disabled";
  553. };
  554. i2c4: i2c@e6520000 {
  555. compatible = "renesas,i2c-r8a7792",
  556. "renesas,rcar-gen2-i2c";
  557. reg = <0 0xe6520000 0 0x40>;
  558. interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
  559. clocks = <&cpg CPG_MOD 927>;
  560. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  561. resets = <&cpg 927>;
  562. i2c-scl-internal-delay-ns = <6>;
  563. #address-cells = <1>;
  564. #size-cells = <0>;
  565. status = "disabled";
  566. };
  567. i2c5: i2c@e6528000 {
  568. compatible = "renesas,i2c-r8a7792",
  569. "renesas,rcar-gen2-i2c";
  570. reg = <0 0xe6528000 0 0x40>;
  571. interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
  572. clocks = <&cpg CPG_MOD 925>;
  573. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  574. resets = <&cpg 925>;
  575. i2c-scl-internal-delay-ns = <110>;
  576. #address-cells = <1>;
  577. #size-cells = <0>;
  578. status = "disabled";
  579. };
  580. qspi: spi@e6b10000 {
  581. compatible = "renesas,qspi-r8a7792", "renesas,qspi";
  582. reg = <0 0xe6b10000 0 0x2c>;
  583. interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
  584. clocks = <&cpg CPG_MOD 917>;
  585. dmas = <&dmac0 0x17>, <&dmac0 0x18>,
  586. <&dmac1 0x17>, <&dmac1 0x18>;
  587. dma-names = "tx", "rx", "tx", "rx";
  588. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  589. resets = <&cpg 917>;
  590. num-cs = <1>;
  591. #address-cells = <1>;
  592. #size-cells = <0>;
  593. status = "disabled";
  594. };
  595. msiof0: spi@e6e20000 {
  596. compatible = "renesas,msiof-r8a7792",
  597. "renesas,rcar-gen2-msiof";
  598. reg = <0 0xe6e20000 0 0x0064>;
  599. interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
  600. clocks = <&cpg CPG_MOD 000>;
  601. dmas = <&dmac0 0x51>, <&dmac0 0x52>,
  602. <&dmac1 0x51>, <&dmac1 0x52>;
  603. dma-names = "tx", "rx", "tx", "rx";
  604. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  605. resets = <&cpg 000>;
  606. #address-cells = <1>;
  607. #size-cells = <0>;
  608. status = "disabled";
  609. };
  610. msiof1: spi@e6e10000 {
  611. compatible = "renesas,msiof-r8a7792",
  612. "renesas,rcar-gen2-msiof";
  613. reg = <0 0xe6e10000 0 0x0064>;
  614. interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
  615. clocks = <&cpg CPG_MOD 208>;
  616. dmas = <&dmac0 0x55>, <&dmac0 0x56>,
  617. <&dmac1 0x55>, <&dmac1 0x56>;
  618. dma-names = "tx", "rx", "tx", "rx";
  619. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  620. resets = <&cpg 208>;
  621. #address-cells = <1>;
  622. #size-cells = <0>;
  623. status = "disabled";
  624. };
  625. du: display@feb00000 {
  626. compatible = "renesas,du-r8a7792";
  627. reg = <0 0xfeb00000 0 0x40000>;
  628. reg-names = "du";
  629. interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
  630. <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>;
  631. clocks = <&cpg CPG_MOD 724>,
  632. <&cpg CPG_MOD 723>;
  633. clock-names = "du.0", "du.1";
  634. status = "disabled";
  635. ports {
  636. #address-cells = <1>;
  637. #size-cells = <0>;
  638. port@0 {
  639. reg = <0>;
  640. du_out_rgb0: endpoint {
  641. };
  642. };
  643. port@1 {
  644. reg = <1>;
  645. du_out_rgb1: endpoint {
  646. };
  647. };
  648. };
  649. };
  650. can0: can@e6e80000 {
  651. compatible = "renesas,can-r8a7792",
  652. "renesas,rcar-gen2-can";
  653. reg = <0 0xe6e80000 0 0x1000>;
  654. interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>;
  655. clocks = <&cpg CPG_MOD 916>,
  656. <&cpg CPG_CORE R8A7792_CLK_RCAN>, <&can_clk>;
  657. clock-names = "clkp1", "clkp2", "can_clk";
  658. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  659. resets = <&cpg 916>;
  660. status = "disabled";
  661. };
  662. can1: can@e6e88000 {
  663. compatible = "renesas,can-r8a7792",
  664. "renesas,rcar-gen2-can";
  665. reg = <0 0xe6e88000 0 0x1000>;
  666. interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
  667. clocks = <&cpg CPG_MOD 915>,
  668. <&cpg CPG_CORE R8A7792_CLK_RCAN>, <&can_clk>;
  669. clock-names = "clkp1", "clkp2", "can_clk";
  670. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  671. resets = <&cpg 915>;
  672. status = "disabled";
  673. };
  674. vin0: video@e6ef0000 {
  675. compatible = "renesas,vin-r8a7792",
  676. "renesas,rcar-gen2-vin";
  677. reg = <0 0xe6ef0000 0 0x1000>;
  678. interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
  679. clocks = <&cpg CPG_MOD 811>;
  680. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  681. resets = <&cpg 811>;
  682. status = "disabled";
  683. };
  684. vin1: video@e6ef1000 {
  685. compatible = "renesas,vin-r8a7792",
  686. "renesas,rcar-gen2-vin";
  687. reg = <0 0xe6ef1000 0 0x1000>;
  688. interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
  689. clocks = <&cpg CPG_MOD 810>;
  690. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  691. resets = <&cpg 810>;
  692. status = "disabled";
  693. };
  694. vin2: video@e6ef2000 {
  695. compatible = "renesas,vin-r8a7792",
  696. "renesas,rcar-gen2-vin";
  697. reg = <0 0xe6ef2000 0 0x1000>;
  698. interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
  699. clocks = <&cpg CPG_MOD 809>;
  700. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  701. resets = <&cpg 809>;
  702. status = "disabled";
  703. };
  704. vin3: video@e6ef3000 {
  705. compatible = "renesas,vin-r8a7792",
  706. "renesas,rcar-gen2-vin";
  707. reg = <0 0xe6ef3000 0 0x1000>;
  708. interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
  709. clocks = <&cpg CPG_MOD 808>;
  710. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  711. resets = <&cpg 808>;
  712. status = "disabled";
  713. };
  714. vin4: video@e6ef4000 {
  715. compatible = "renesas,vin-r8a7792",
  716. "renesas,rcar-gen2-vin";
  717. reg = <0 0xe6ef4000 0 0x1000>;
  718. interrupts = <GIC_SPI 144 IRQ_TYPE_LEVEL_HIGH>;
  719. clocks = <&cpg CPG_MOD 805>;
  720. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  721. resets = <&cpg 805>;
  722. status = "disabled";
  723. };
  724. vin5: video@e6ef5000 {
  725. compatible = "renesas,vin-r8a7792",
  726. "renesas,rcar-gen2-vin";
  727. reg = <0 0xe6ef5000 0 0x1000>;
  728. interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>;
  729. clocks = <&cpg CPG_MOD 804>;
  730. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  731. resets = <&cpg 804>;
  732. status = "disabled";
  733. };
  734. vsp@fe928000 {
  735. compatible = "renesas,vsp1";
  736. reg = <0 0xfe928000 0 0x8000>;
  737. interrupts = <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>;
  738. clocks = <&cpg CPG_MOD 131>;
  739. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  740. resets = <&cpg 131>;
  741. };
  742. vsp@fe930000 {
  743. compatible = "renesas,vsp1";
  744. reg = <0 0xfe930000 0 0x8000>;
  745. interrupts = <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
  746. clocks = <&cpg CPG_MOD 128>;
  747. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  748. resets = <&cpg 128>;
  749. };
  750. vsp@fe938000 {
  751. compatible = "renesas,vsp1";
  752. reg = <0 0xfe938000 0 0x8000>;
  753. interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>;
  754. clocks = <&cpg CPG_MOD 127>;
  755. power-domains = <&sysc R8A7792_PD_ALWAYS_ON>;
  756. resets = <&cpg 127>;
  757. };
  758. cpg: clock-controller@e6150000 {
  759. compatible = "renesas,r8a7792-cpg-mssr";
  760. reg = <0 0xe6150000 0 0x1000>;
  761. clocks = <&extal_clk>;
  762. clock-names = "extal";
  763. #clock-cells = <2>;
  764. #power-domain-cells = <0>;
  765. #reset-cells = <1>;
  766. };
  767. };
  768. /* External root clock */
  769. extal_clk: extal {
  770. compatible = "fixed-clock";
  771. #clock-cells = <0>;
  772. /* This value must be overridden by the board. */
  773. clock-frequency = <0>;
  774. };
  775. /* External SCIF clock */
  776. scif_clk: scif {
  777. compatible = "fixed-clock";
  778. #clock-cells = <0>;
  779. /* This value must be overridden by the board. */
  780. clock-frequency = <0>;
  781. };
  782. /* External CAN clock */
  783. can_clk: can {
  784. compatible = "fixed-clock";
  785. #clock-cells = <0>;
  786. /* This value must be overridden by the board. */
  787. clock-frequency = <0>;
  788. };
  789. };