r7s72100.dtsi 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733
  1. // SPDX-License-Identifier: GPL-2.0
  2. /*
  3. * Device Tree Source for the r7s72100 SoC
  4. *
  5. * Copyright (C) 2013-14 Renesas Solutions Corp.
  6. * Copyright (C) 2014 Wolfram Sang, Sang Engineering <[email protected]>
  7. */
  8. #include <dt-bindings/clock/r7s72100-clock.h>
  9. #include <dt-bindings/interrupt-controller/arm-gic.h>
  10. #include <dt-bindings/interrupt-controller/irq.h>
  11. / {
  12. compatible = "renesas,r7s72100";
  13. #address-cells = <1>;
  14. #size-cells = <1>;
  15. aliases {
  16. i2c0 = &i2c0;
  17. i2c1 = &i2c1;
  18. i2c2 = &i2c2;
  19. i2c3 = &i2c3;
  20. spi0 = &spi0;
  21. spi1 = &spi1;
  22. spi2 = &spi2;
  23. spi3 = &spi3;
  24. spi4 = &spi4;
  25. };
  26. /* Fixed factor clocks */
  27. b_clk: b {
  28. #clock-cells = <0>;
  29. compatible = "fixed-factor-clock";
  30. clocks = <&cpg_clocks R7S72100_CLK_PLL>;
  31. clock-mult = <1>;
  32. clock-div = <3>;
  33. };
  34. cpus {
  35. #address-cells = <1>;
  36. #size-cells = <0>;
  37. cpu@0 {
  38. device_type = "cpu";
  39. compatible = "arm,cortex-a9";
  40. reg = <0>;
  41. clock-frequency = <400000000>;
  42. clocks = <&cpg_clocks R7S72100_CLK_I>;
  43. next-level-cache = <&L2>;
  44. };
  45. };
  46. /* External clocks */
  47. extal_clk: extal {
  48. #clock-cells = <0>;
  49. compatible = "fixed-clock";
  50. /* If clk present, value must be set by board */
  51. clock-frequency = <0>;
  52. };
  53. p0_clk: p0 {
  54. #clock-cells = <0>;
  55. compatible = "fixed-factor-clock";
  56. clocks = <&cpg_clocks R7S72100_CLK_PLL>;
  57. clock-mult = <1>;
  58. clock-div = <12>;
  59. };
  60. p1_clk: p1 {
  61. #clock-cells = <0>;
  62. compatible = "fixed-factor-clock";
  63. clocks = <&cpg_clocks R7S72100_CLK_PLL>;
  64. clock-mult = <1>;
  65. clock-div = <6>;
  66. };
  67. pmu {
  68. compatible = "arm,cortex-a9-pmu";
  69. interrupts-extended = <&gic GIC_PPI 0 IRQ_TYPE_LEVEL_HIGH>;
  70. };
  71. rtc_x1_clk: rtc_x1 {
  72. #clock-cells = <0>;
  73. compatible = "fixed-clock";
  74. /* If clk present, value must be set by board to 32678 */
  75. clock-frequency = <0>;
  76. };
  77. rtc_x3_clk: rtc_x3 {
  78. #clock-cells = <0>;
  79. compatible = "fixed-clock";
  80. /* If clk present, value must be set by board to 4000000 */
  81. clock-frequency = <0>;
  82. };
  83. soc {
  84. compatible = "simple-bus";
  85. interrupt-parent = <&gic>;
  86. #address-cells = <1>;
  87. #size-cells = <1>;
  88. ranges;
  89. L2: cache-controller@3ffff000 {
  90. compatible = "arm,pl310-cache";
  91. reg = <0x3ffff000 0x1000>;
  92. interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
  93. arm,early-bresp-disable;
  94. arm,full-line-zero-disable;
  95. cache-unified;
  96. cache-level = <2>;
  97. };
  98. scif0: serial@e8007000 {
  99. compatible = "renesas,scif-r7s72100", "renesas,scif";
  100. reg = <0xe8007000 64>;
  101. interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
  102. <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
  103. <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
  104. <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
  105. clocks = <&mstp4_clks R7S72100_CLK_SCIF0>;
  106. clock-names = "fck";
  107. power-domains = <&cpg_clocks>;
  108. status = "disabled";
  109. };
  110. scif1: serial@e8007800 {
  111. compatible = "renesas,scif-r7s72100", "renesas,scif";
  112. reg = <0xe8007800 64>;
  113. interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>,
  114. <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>,
  115. <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
  116. <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
  117. clocks = <&mstp4_clks R7S72100_CLK_SCIF1>;
  118. clock-names = "fck";
  119. power-domains = <&cpg_clocks>;
  120. status = "disabled";
  121. };
  122. scif2: serial@e8008000 {
  123. compatible = "renesas,scif-r7s72100", "renesas,scif";
  124. reg = <0xe8008000 64>;
  125. interrupts = <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
  126. <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
  127. <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
  128. <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>;
  129. clocks = <&mstp4_clks R7S72100_CLK_SCIF2>;
  130. clock-names = "fck";
  131. power-domains = <&cpg_clocks>;
  132. status = "disabled";
  133. };
  134. scif3: serial@e8008800 {
  135. compatible = "renesas,scif-r7s72100", "renesas,scif";
  136. reg = <0xe8008800 64>;
  137. interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>,
  138. <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
  139. <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
  140. <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
  141. clocks = <&mstp4_clks R7S72100_CLK_SCIF3>;
  142. clock-names = "fck";
  143. power-domains = <&cpg_clocks>;
  144. status = "disabled";
  145. };
  146. scif4: serial@e8009000 {
  147. compatible = "renesas,scif-r7s72100", "renesas,scif";
  148. reg = <0xe8009000 64>;
  149. interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>,
  150. <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
  151. <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>,
  152. <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>;
  153. clocks = <&mstp4_clks R7S72100_CLK_SCIF4>;
  154. clock-names = "fck";
  155. power-domains = <&cpg_clocks>;
  156. status = "disabled";
  157. };
  158. scif5: serial@e8009800 {
  159. compatible = "renesas,scif-r7s72100", "renesas,scif";
  160. reg = <0xe8009800 64>;
  161. interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,
  162. <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>,
  163. <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
  164. <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
  165. clocks = <&mstp4_clks R7S72100_CLK_SCIF5>;
  166. clock-names = "fck";
  167. power-domains = <&cpg_clocks>;
  168. status = "disabled";
  169. };
  170. scif6: serial@e800a000 {
  171. compatible = "renesas,scif-r7s72100", "renesas,scif";
  172. reg = <0xe800a000 64>;
  173. interrupts = <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>,
  174. <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>,
  175. <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
  176. <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>;
  177. clocks = <&mstp4_clks R7S72100_CLK_SCIF6>;
  178. clock-names = "fck";
  179. power-domains = <&cpg_clocks>;
  180. status = "disabled";
  181. };
  182. scif7: serial@e800a800 {
  183. compatible = "renesas,scif-r7s72100", "renesas,scif";
  184. reg = <0xe800a800 64>;
  185. interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
  186. <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
  187. <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>,
  188. <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
  189. clocks = <&mstp4_clks R7S72100_CLK_SCIF7>;
  190. clock-names = "fck";
  191. power-domains = <&cpg_clocks>;
  192. status = "disabled";
  193. };
  194. spi0: spi@e800c800 {
  195. compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
  196. reg = <0xe800c800 0x24>;
  197. interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>,
  198. <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>,
  199. <GIC_SPI 240 IRQ_TYPE_LEVEL_HIGH>;
  200. interrupt-names = "error", "rx", "tx";
  201. clocks = <&mstp10_clks R7S72100_CLK_SPI0>;
  202. power-domains = <&cpg_clocks>;
  203. num-cs = <1>;
  204. #address-cells = <1>;
  205. #size-cells = <0>;
  206. status = "disabled";
  207. };
  208. spi1: spi@e800d000 {
  209. compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
  210. reg = <0xe800d000 0x24>;
  211. interrupts = <GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>,
  212. <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>,
  213. <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
  214. interrupt-names = "error", "rx", "tx";
  215. clocks = <&mstp10_clks R7S72100_CLK_SPI1>;
  216. power-domains = <&cpg_clocks>;
  217. num-cs = <1>;
  218. #address-cells = <1>;
  219. #size-cells = <0>;
  220. status = "disabled";
  221. };
  222. spi2: spi@e800d800 {
  223. compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
  224. reg = <0xe800d800 0x24>;
  225. interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
  226. <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
  227. <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>;
  228. interrupt-names = "error", "rx", "tx";
  229. clocks = <&mstp10_clks R7S72100_CLK_SPI2>;
  230. power-domains = <&cpg_clocks>;
  231. num-cs = <1>;
  232. #address-cells = <1>;
  233. #size-cells = <0>;
  234. status = "disabled";
  235. };
  236. spi3: spi@e800e000 {
  237. compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
  238. reg = <0xe800e000 0x24>;
  239. interrupts = <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
  240. <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
  241. <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>;
  242. interrupt-names = "error", "rx", "tx";
  243. clocks = <&mstp10_clks R7S72100_CLK_SPI3>;
  244. power-domains = <&cpg_clocks>;
  245. num-cs = <1>;
  246. #address-cells = <1>;
  247. #size-cells = <0>;
  248. status = "disabled";
  249. };
  250. spi4: spi@e800e800 {
  251. compatible = "renesas,rspi-r7s72100", "renesas,rspi-rz";
  252. reg = <0xe800e800 0x24>;
  253. interrupts = <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
  254. <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
  255. <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>;
  256. interrupt-names = "error", "rx", "tx";
  257. clocks = <&mstp10_clks R7S72100_CLK_SPI4>;
  258. power-domains = <&cpg_clocks>;
  259. num-cs = <1>;
  260. #address-cells = <1>;
  261. #size-cells = <0>;
  262. status = "disabled";
  263. };
  264. usbhs0: usb@e8010000 {
  265. compatible = "renesas,usbhs-r7s72100", "renesas,rza1-usbhs";
  266. reg = <0xe8010000 0x1a0>;
  267. interrupts = <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>;
  268. clocks = <&mstp7_clks R7S72100_CLK_USB0>;
  269. renesas,buswait = <4>;
  270. power-domains = <&cpg_clocks>;
  271. status = "disabled";
  272. };
  273. usbhs1: usb@e8207000 {
  274. compatible = "renesas,usbhs-r7s72100", "renesas,rza1-usbhs";
  275. reg = <0xe8207000 0x1a0>;
  276. interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>;
  277. clocks = <&mstp7_clks R7S72100_CLK_USB1>;
  278. renesas,buswait = <4>;
  279. power-domains = <&cpg_clocks>;
  280. status = "disabled";
  281. };
  282. mmcif: mmc@e804c800 {
  283. compatible = "renesas,mmcif-r7s72100", "renesas,sh-mmcif";
  284. reg = <0xe804c800 0x80>;
  285. interrupts = <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
  286. <GIC_SPI 269 IRQ_TYPE_LEVEL_HIGH>,
  287. <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>;
  288. clocks = <&mstp8_clks R7S72100_CLK_MMCIF>;
  289. power-domains = <&cpg_clocks>;
  290. reg-io-width = <4>;
  291. bus-width = <8>;
  292. status = "disabled";
  293. };
  294. sdhi0: mmc@e804e000 {
  295. compatible = "renesas,sdhi-r7s72100";
  296. reg = <0xe804e000 0x100>;
  297. interrupts = <GIC_SPI 270 IRQ_TYPE_LEVEL_HIGH>,
  298. <GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>,
  299. <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
  300. clocks = <&mstp12_clks R7S72100_CLK_SDHI00>,
  301. <&mstp12_clks R7S72100_CLK_SDHI01>;
  302. clock-names = "core", "cd";
  303. power-domains = <&cpg_clocks>;
  304. cap-sd-highspeed;
  305. cap-sdio-irq;
  306. status = "disabled";
  307. };
  308. sdhi1: mmc@e804e800 {
  309. compatible = "renesas,sdhi-r7s72100";
  310. reg = <0xe804e800 0x100>;
  311. interrupts = <GIC_SPI 273 IRQ_TYPE_LEVEL_HIGH>,
  312. <GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH>,
  313. <GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>;
  314. clocks = <&mstp12_clks R7S72100_CLK_SDHI10>,
  315. <&mstp12_clks R7S72100_CLK_SDHI11>;
  316. clock-names = "core", "cd";
  317. power-domains = <&cpg_clocks>;
  318. cap-sd-highspeed;
  319. cap-sdio-irq;
  320. status = "disabled";
  321. };
  322. gic: interrupt-controller@e8201000 {
  323. compatible = "arm,pl390";
  324. #interrupt-cells = <3>;
  325. #address-cells = <0>;
  326. interrupt-controller;
  327. reg = <0xe8201000 0x1000>,
  328. <0xe8202000 0x1000>;
  329. };
  330. ether: ethernet@e8203000 {
  331. compatible = "renesas,ether-r7s72100";
  332. reg = <0xe8203000 0x800>,
  333. <0xe8204800 0x200>;
  334. interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
  335. clocks = <&mstp7_clks R7S72100_CLK_ETHER>;
  336. power-domains = <&cpg_clocks>;
  337. phy-mode = "mii";
  338. #address-cells = <1>;
  339. #size-cells = <0>;
  340. status = "disabled";
  341. };
  342. ceu: camera@e8210000 {
  343. reg = <0xe8210000 0x3000>;
  344. compatible = "renesas,r7s72100-ceu";
  345. interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
  346. clocks = <&mstp6_clks R7S72100_CLK_CEU>;
  347. power-domains = <&cpg_clocks>;
  348. status = "disabled";
  349. };
  350. wdt: watchdog@fcfe0000 {
  351. compatible = "renesas,r7s72100-wdt", "renesas,rza-wdt";
  352. reg = <0xfcfe0000 0x6>;
  353. interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
  354. clocks = <&p0_clk>;
  355. };
  356. /* Special CPG clocks */
  357. cpg_clocks: cpg_clocks@fcfe0000 {
  358. #clock-cells = <1>;
  359. compatible = "renesas,r7s72100-cpg-clocks",
  360. "renesas,rz-cpg-clocks";
  361. reg = <0xfcfe0000 0x18>;
  362. clocks = <&extal_clk>, <&usb_x1_clk>;
  363. clock-output-names = "pll", "i", "g";
  364. #power-domain-cells = <0>;
  365. };
  366. /* MSTP clocks */
  367. mstp3_clks: mstp3_clks@fcfe0420 {
  368. #clock-cells = <1>;
  369. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  370. reg = <0xfcfe0420 4>;
  371. clocks = <&p0_clk>;
  372. clock-indices = <R7S72100_CLK_MTU2>;
  373. clock-output-names = "mtu2";
  374. };
  375. mstp4_clks: mstp4_clks@fcfe0424 {
  376. #clock-cells = <1>;
  377. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  378. reg = <0xfcfe0424 4>;
  379. clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>,
  380. <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>;
  381. clock-indices = <
  382. R7S72100_CLK_SCIF0 R7S72100_CLK_SCIF1 R7S72100_CLK_SCIF2 R7S72100_CLK_SCIF3
  383. R7S72100_CLK_SCIF4 R7S72100_CLK_SCIF5 R7S72100_CLK_SCIF6 R7S72100_CLK_SCIF7
  384. >;
  385. clock-output-names = "scif0", "scif1", "scif2", "scif3", "scif4", "scif5", "scif6", "scif7";
  386. };
  387. mstp5_clks: mstp5_clks@fcfe0428 {
  388. #clock-cells = <1>;
  389. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  390. reg = <0xfcfe0428 4>;
  391. clocks = <&p0_clk>, <&p0_clk>;
  392. clock-indices = <R7S72100_CLK_OSTM0 R7S72100_CLK_OSTM1>;
  393. clock-output-names = "ostm0", "ostm1";
  394. };
  395. mstp6_clks: mstp6_clks@fcfe042c {
  396. #clock-cells = <1>;
  397. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  398. reg = <0xfcfe042c 4>;
  399. clocks = <&b_clk>, <&p0_clk>;
  400. clock-indices = <R7S72100_CLK_CEU R7S72100_CLK_RTC>;
  401. clock-output-names = "ceu", "rtc";
  402. };
  403. mstp7_clks: mstp7_clks@fcfe0430 {
  404. #clock-cells = <1>;
  405. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  406. reg = <0xfcfe0430 4>;
  407. clocks = <&b_clk>, <&p1_clk>, <&p1_clk>;
  408. clock-indices = <R7S72100_CLK_ETHER R7S72100_CLK_USB0 R7S72100_CLK_USB1>;
  409. clock-output-names = "ether", "usb0", "usb1";
  410. };
  411. mstp8_clks: mstp8_clks@fcfe0434 {
  412. #clock-cells = <1>;
  413. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  414. reg = <0xfcfe0434 4>;
  415. clocks = <&p1_clk>;
  416. clock-indices = <R7S72100_CLK_MMCIF>;
  417. clock-output-names = "mmcif";
  418. };
  419. mstp9_clks: mstp9_clks@fcfe0438 {
  420. #clock-cells = <1>;
  421. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  422. reg = <0xfcfe0438 4>;
  423. clocks = <&p0_clk>, <&p0_clk>, <&p0_clk>, <&p0_clk>, <&b_clk>, <&b_clk>;
  424. clock-indices = <
  425. R7S72100_CLK_I2C0 R7S72100_CLK_I2C1 R7S72100_CLK_I2C2 R7S72100_CLK_I2C3
  426. R7S72100_CLK_SPIBSC0 R7S72100_CLK_SPIBSC1
  427. >;
  428. clock-output-names = "i2c0", "i2c1", "i2c2", "i2c3", "spibsc0", "spibsc1";
  429. };
  430. mstp10_clks: mstp10_clks@fcfe043c {
  431. #clock-cells = <1>;
  432. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  433. reg = <0xfcfe043c 4>;
  434. clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>,
  435. <&p1_clk>;
  436. clock-indices = <
  437. R7S72100_CLK_SPI0 R7S72100_CLK_SPI1 R7S72100_CLK_SPI2 R7S72100_CLK_SPI3
  438. R7S72100_CLK_SPI4
  439. >;
  440. clock-output-names = "spi0", "spi1", "spi2", "spi3", "spi4";
  441. };
  442. mstp12_clks: mstp12_clks@fcfe0444 {
  443. #clock-cells = <1>;
  444. compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks";
  445. reg = <0xfcfe0444 4>;
  446. clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>;
  447. clock-indices = <
  448. R7S72100_CLK_SDHI00 R7S72100_CLK_SDHI01
  449. R7S72100_CLK_SDHI10 R7S72100_CLK_SDHI11
  450. >;
  451. clock-output-names = "sdhi00", "sdhi01", "sdhi10", "sdhi11";
  452. };
  453. pinctrl: pinctrl@fcfe3000 {
  454. compatible = "renesas,r7s72100-ports";
  455. reg = <0xfcfe3000 0x4230>;
  456. port0: gpio-0 {
  457. gpio-controller;
  458. #gpio-cells = <2>;
  459. gpio-ranges = <&pinctrl 0 0 6>;
  460. };
  461. port1: gpio-1 {
  462. gpio-controller;
  463. #gpio-cells = <2>;
  464. gpio-ranges = <&pinctrl 0 16 16>;
  465. };
  466. port2: gpio-2 {
  467. gpio-controller;
  468. #gpio-cells = <2>;
  469. gpio-ranges = <&pinctrl 0 32 16>;
  470. };
  471. port3: gpio-3 {
  472. gpio-controller;
  473. #gpio-cells = <2>;
  474. gpio-ranges = <&pinctrl 0 48 16>;
  475. };
  476. port4: gpio-4 {
  477. gpio-controller;
  478. #gpio-cells = <2>;
  479. gpio-ranges = <&pinctrl 0 64 16>;
  480. };
  481. port5: gpio-5 {
  482. gpio-controller;
  483. #gpio-cells = <2>;
  484. gpio-ranges = <&pinctrl 0 80 11>;
  485. };
  486. port6: gpio-6 {
  487. gpio-controller;
  488. #gpio-cells = <2>;
  489. gpio-ranges = <&pinctrl 0 96 16>;
  490. };
  491. port7: gpio-7 {
  492. gpio-controller;
  493. #gpio-cells = <2>;
  494. gpio-ranges = <&pinctrl 0 112 16>;
  495. };
  496. port8: gpio-8 {
  497. gpio-controller;
  498. #gpio-cells = <2>;
  499. gpio-ranges = <&pinctrl 0 128 16>;
  500. };
  501. port9: gpio-9 {
  502. gpio-controller;
  503. #gpio-cells = <2>;
  504. gpio-ranges = <&pinctrl 0 144 8>;
  505. };
  506. port10: gpio-10 {
  507. gpio-controller;
  508. #gpio-cells = <2>;
  509. gpio-ranges = <&pinctrl 0 160 16>;
  510. };
  511. port11: gpio-11 {
  512. gpio-controller;
  513. #gpio-cells = <2>;
  514. gpio-ranges = <&pinctrl 0 176 16>;
  515. };
  516. };
  517. ostm0: timer@fcfec000 {
  518. compatible = "renesas,r7s72100-ostm", "renesas,ostm";
  519. reg = <0xfcfec000 0x30>;
  520. interrupts = <GIC_SPI 102 IRQ_TYPE_EDGE_RISING>;
  521. clocks = <&mstp5_clks R7S72100_CLK_OSTM0>;
  522. power-domains = <&cpg_clocks>;
  523. status = "disabled";
  524. };
  525. ostm1: timer@fcfec400 {
  526. compatible = "renesas,r7s72100-ostm", "renesas,ostm";
  527. reg = <0xfcfec400 0x30>;
  528. interrupts = <GIC_SPI 103 IRQ_TYPE_EDGE_RISING>;
  529. clocks = <&mstp5_clks R7S72100_CLK_OSTM1>;
  530. power-domains = <&cpg_clocks>;
  531. status = "disabled";
  532. };
  533. i2c0: i2c@fcfee000 {
  534. #address-cells = <1>;
  535. #size-cells = <0>;
  536. compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
  537. reg = <0xfcfee000 0x44>;
  538. interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>,
  539. <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>,
  540. <GIC_SPI 159 IRQ_TYPE_EDGE_RISING>,
  541. <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
  542. <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>,
  543. <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>,
  544. <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
  545. <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
  546. interrupt-names = "tei", "ri", "ti", "spi", "sti",
  547. "naki", "ali", "tmoi";
  548. clocks = <&mstp9_clks R7S72100_CLK_I2C0>;
  549. clock-frequency = <100000>;
  550. power-domains = <&cpg_clocks>;
  551. status = "disabled";
  552. };
  553. i2c1: i2c@fcfee400 {
  554. #address-cells = <1>;
  555. #size-cells = <0>;
  556. compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
  557. reg = <0xfcfee400 0x44>;
  558. interrupts = <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>,
  559. <GIC_SPI 166 IRQ_TYPE_EDGE_RISING>,
  560. <GIC_SPI 167 IRQ_TYPE_EDGE_RISING>,
  561. <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>,
  562. <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>,
  563. <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>,
  564. <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>,
  565. <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
  566. interrupt-names = "tei", "ri", "ti", "spi", "sti",
  567. "naki", "ali", "tmoi";
  568. clocks = <&mstp9_clks R7S72100_CLK_I2C1>;
  569. clock-frequency = <100000>;
  570. power-domains = <&cpg_clocks>;
  571. status = "disabled";
  572. };
  573. i2c2: i2c@fcfee800 {
  574. #address-cells = <1>;
  575. #size-cells = <0>;
  576. compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
  577. reg = <0xfcfee800 0x44>;
  578. interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>,
  579. <GIC_SPI 174 IRQ_TYPE_EDGE_RISING>,
  580. <GIC_SPI 175 IRQ_TYPE_EDGE_RISING>,
  581. <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>,
  582. <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>,
  583. <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>,
  584. <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>,
  585. <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>;
  586. interrupt-names = "tei", "ri", "ti", "spi", "sti",
  587. "naki", "ali", "tmoi";
  588. clocks = <&mstp9_clks R7S72100_CLK_I2C2>;
  589. clock-frequency = <100000>;
  590. power-domains = <&cpg_clocks>;
  591. status = "disabled";
  592. };
  593. i2c3: i2c@fcfeec00 {
  594. #address-cells = <1>;
  595. #size-cells = <0>;
  596. compatible = "renesas,riic-r7s72100", "renesas,riic-rz";
  597. reg = <0xfcfeec00 0x44>;
  598. interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
  599. <GIC_SPI 182 IRQ_TYPE_EDGE_RISING>,
  600. <GIC_SPI 183 IRQ_TYPE_EDGE_RISING>,
  601. <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
  602. <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
  603. <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
  604. <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
  605. <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
  606. interrupt-names = "tei", "ri", "ti", "spi", "sti",
  607. "naki", "ali", "tmoi";
  608. clocks = <&mstp9_clks R7S72100_CLK_I2C3>;
  609. clock-frequency = <100000>;
  610. power-domains = <&cpg_clocks>;
  611. status = "disabled";
  612. };
  613. irqc: interrupt-controller@fcfef800 {
  614. compatible = "renesas,r7s72100-irqc",
  615. "renesas,rza1-irqc";
  616. #interrupt-cells = <2>;
  617. #address-cells = <0>;
  618. interrupt-controller;
  619. reg = <0xfcfef800 0x6>;
  620. interrupt-map =
  621. <0 0 &gic GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
  622. <1 0 &gic GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
  623. <2 0 &gic GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
  624. <3 0 &gic GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
  625. <4 0 &gic GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
  626. <5 0 &gic GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>,
  627. <6 0 &gic GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
  628. <7 0 &gic GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
  629. interrupt-map-mask = <7 0>;
  630. };
  631. mtu2: timer@fcff0000 {
  632. compatible = "renesas,mtu2-r7s72100", "renesas,mtu2";
  633. reg = <0xfcff0000 0x400>;
  634. interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
  635. interrupt-names = "tgi0a";
  636. clocks = <&mstp3_clks R7S72100_CLK_MTU2>;
  637. clock-names = "fck";
  638. power-domains = <&cpg_clocks>;
  639. status = "disabled";
  640. };
  641. rtc: rtc@fcff1000 {
  642. compatible = "renesas,r7s72100-rtc", "renesas,sh-rtc";
  643. reg = <0xfcff1000 0x2e>;
  644. interrupts = <GIC_SPI 276 IRQ_TYPE_LEVEL_HIGH>,
  645. <GIC_SPI 277 IRQ_TYPE_LEVEL_HIGH>,
  646. <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>;
  647. interrupt-names = "alarm", "period", "carry";
  648. clocks = <&mstp6_clks R7S72100_CLK_RTC>, <&rtc_x1_clk>,
  649. <&rtc_x3_clk>, <&extal_clk>;
  650. clock-names = "fck", "rtc_x1", "rtc_x3", "extal";
  651. power-domains = <&cpg_clocks>;
  652. status = "disabled";
  653. };
  654. };
  655. usb_x1_clk: usb_x1 {
  656. #clock-cells = <0>;
  657. compatible = "fixed-clock";
  658. /* If clk present, value must be set by board */
  659. clock-frequency = <0>;
  660. };
  661. };