nuvoton-common-npcm7xx.dtsi 25 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123
  1. // SPDX-License-Identifier: GPL-2.0
  2. // Copyright (c) 2018 Nuvoton Technology [email protected]
  3. // Copyright 2018 Google, Inc.
  4. #include <dt-bindings/interrupt-controller/arm-gic.h>
  5. #include <dt-bindings/clock/nuvoton,npcm7xx-clock.h>
  6. #include <dt-bindings/reset/nuvoton,npcm7xx-reset.h>
  7. / {
  8. #address-cells = <1>;
  9. #size-cells = <1>;
  10. interrupt-parent = <&gic>;
  11. /* external reference clock */
  12. clk_refclk: clk_refclk {
  13. compatible = "fixed-clock";
  14. #clock-cells = <0>;
  15. clock-frequency = <25000000>;
  16. clock-output-names = "refclk";
  17. };
  18. /* external reference clock for cpu. float in normal operation */
  19. clk_sysbypck: clk_sysbypck {
  20. compatible = "fixed-clock";
  21. #clock-cells = <0>;
  22. clock-frequency = <800000000>;
  23. clock-output-names = "sysbypck";
  24. };
  25. /* external reference clock for MC. float in normal operation */
  26. clk_mcbypck: clk_mcbypck {
  27. compatible = "fixed-clock";
  28. #clock-cells = <0>;
  29. clock-frequency = <800000000>;
  30. clock-output-names = "mcbypck";
  31. };
  32. /* external clock signal rg1refck, supplied by the phy */
  33. clk_rg1refck: clk_rg1refck {
  34. compatible = "fixed-clock";
  35. #clock-cells = <0>;
  36. clock-frequency = <125000000>;
  37. clock-output-names = "clk_rg1refck";
  38. };
  39. /* external clock signal rg2refck, supplied by the phy */
  40. clk_rg2refck: clk_rg2refck {
  41. compatible = "fixed-clock";
  42. #clock-cells = <0>;
  43. clock-frequency = <125000000>;
  44. clock-output-names = "clk_rg2refck";
  45. };
  46. clk_xin: clk_xin {
  47. compatible = "fixed-clock";
  48. #clock-cells = <0>;
  49. clock-frequency = <50000000>;
  50. clock-output-names = "clk_xin";
  51. };
  52. soc {
  53. #address-cells = <1>;
  54. #size-cells = <1>;
  55. compatible = "simple-bus";
  56. interrupt-parent = <&gic>;
  57. ranges = <0x0 0xf0000000 0x00900000>;
  58. scu: scu@3fe000 {
  59. compatible = "arm,cortex-a9-scu";
  60. reg = <0x3fe000 0x1000>;
  61. };
  62. l2: cache-controller@3fc000 {
  63. compatible = "arm,pl310-cache";
  64. reg = <0x3fc000 0x1000>;
  65. interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
  66. cache-unified;
  67. cache-level = <2>;
  68. clocks = <&clk NPCM7XX_CLK_AXI>;
  69. arm,shared-override;
  70. };
  71. gic: interrupt-controller@3ff000 {
  72. compatible = "arm,cortex-a9-gic";
  73. interrupt-controller;
  74. #interrupt-cells = <3>;
  75. reg = <0x3ff000 0x1000>,
  76. <0x3fe100 0x100>;
  77. };
  78. gcr: gcr@800000 {
  79. compatible = "nuvoton,npcm750-gcr", "syscon", "simple-mfd";
  80. reg = <0x800000 0x1000>;
  81. };
  82. rst: rst@801000 {
  83. compatible = "nuvoton,npcm750-rst", "syscon", "simple-mfd";
  84. reg = <0x801000 0x6C>;
  85. };
  86. };
  87. ahb {
  88. #address-cells = <1>;
  89. #size-cells = <1>;
  90. compatible = "simple-bus";
  91. interrupt-parent = <&gic>;
  92. ranges;
  93. rstc: rstc@f0801000 {
  94. compatible = "nuvoton,npcm750-reset";
  95. reg = <0xf0801000 0x70>;
  96. #reset-cells = <2>;
  97. nuvoton,sysgcr = <&gcr>;
  98. };
  99. clk: clock-controller@f0801000 {
  100. compatible = "nuvoton,npcm750-clk", "syscon";
  101. #clock-cells = <1>;
  102. clock-controller;
  103. reg = <0xf0801000 0x1000>;
  104. clock-names = "refclk", "sysbypck", "mcbypck";
  105. clocks = <&clk_refclk>, <&clk_sysbypck>, <&clk_mcbypck>;
  106. };
  107. gmac0: eth@f0802000 {
  108. device_type = "network";
  109. compatible = "snps,dwmac";
  110. reg = <0xf0802000 0x2000>;
  111. interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
  112. interrupt-names = "macirq";
  113. ethernet = <0>;
  114. clocks = <&clk_rg1refck>, <&clk NPCM7XX_CLK_AHB>;
  115. clock-names = "stmmaceth", "clk_gmac";
  116. pinctrl-names = "default";
  117. pinctrl-0 = <&rg1_pins
  118. &rg1mdio_pins>;
  119. status = "disabled";
  120. };
  121. ehci1: usb@f0806000 {
  122. compatible = "nuvoton,npcm750-ehci";
  123. reg = <0xf0806000 0x1000>;
  124. interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>;
  125. status = "disabled";
  126. };
  127. fiu0: spi@fb000000 {
  128. compatible = "nuvoton,npcm750-fiu";
  129. #address-cells = <1>;
  130. #size-cells = <0>;
  131. reg = <0xfb000000 0x1000>;
  132. reg-names = "control", "memory";
  133. clocks = <&clk NPCM7XX_CLK_SPI0>;
  134. clock-names = "clk_spi0";
  135. status = "disabled";
  136. };
  137. fiu3: spi@c0000000 {
  138. compatible = "nuvoton,npcm750-fiu";
  139. #address-cells = <1>;
  140. #size-cells = <0>;
  141. reg = <0xc0000000 0x1000>;
  142. reg-names = "control", "memory";
  143. clocks = <&clk NPCM7XX_CLK_SPI3>;
  144. clock-names = "clk_spi3";
  145. pinctrl-names = "default";
  146. pinctrl-0 = <&spi3_pins>;
  147. status = "disabled";
  148. };
  149. fiux: spi@fb001000 {
  150. compatible = "nuvoton,npcm750-fiu";
  151. #address-cells = <1>;
  152. #size-cells = <0>;
  153. reg = <0xfb001000 0x1000>;
  154. reg-names = "control", "memory";
  155. clocks = <&clk NPCM7XX_CLK_SPIX>;
  156. clock-names = "clk_spix";
  157. status = "disabled";
  158. };
  159. apb {
  160. #address-cells = <1>;
  161. #size-cells = <1>;
  162. compatible = "simple-bus";
  163. interrupt-parent = <&gic>;
  164. ranges = <0x0 0xf0000000 0x00300000>;
  165. lpc_kcs: lpc_kcs@7000 {
  166. compatible = "nuvoton,npcm750-lpc-kcs", "simple-mfd", "syscon";
  167. reg = <0x7000 0x40>;
  168. reg-io-width = <1>;
  169. #address-cells = <1>;
  170. #size-cells = <1>;
  171. ranges = <0x0 0x7000 0x40>;
  172. kcs1: kcs1@0 {
  173. compatible = "nuvoton,npcm750-kcs-bmc";
  174. reg = <0x0 0x40>;
  175. interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
  176. kcs_chan = <1>;
  177. status = "disabled";
  178. };
  179. kcs2: kcs2@0 {
  180. compatible = "nuvoton,npcm750-kcs-bmc";
  181. reg = <0x0 0x40>;
  182. interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
  183. kcs_chan = <2>;
  184. status = "disabled";
  185. };
  186. kcs3: kcs3@0 {
  187. compatible = "nuvoton,npcm750-kcs-bmc";
  188. reg = <0x0 0x40>;
  189. interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
  190. kcs_chan = <3>;
  191. status = "disabled";
  192. };
  193. };
  194. spi0: spi@200000 {
  195. compatible = "nuvoton,npcm750-pspi";
  196. reg = <0x200000 0x1000>;
  197. pinctrl-names = "default";
  198. pinctrl-0 = <&pspi1_pins>;
  199. #address-cells = <1>;
  200. #size-cells = <0>;
  201. interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
  202. clocks = <&clk NPCM7XX_CLK_APB5>;
  203. clock-names = "clk_apb5";
  204. resets = <&rstc NPCM7XX_RESET_IPSRST2 NPCM7XX_RESET_PSPI1>;
  205. status = "disabled";
  206. };
  207. spi1: spi@201000 {
  208. compatible = "nuvoton,npcm750-pspi";
  209. reg = <0x201000 0x1000>;
  210. pinctrl-names = "default";
  211. pinctrl-0 = <&pspi2_pins>;
  212. #address-cells = <1>;
  213. #size-cells = <0>;
  214. interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
  215. clocks = <&clk NPCM7XX_CLK_APB5>;
  216. clock-names = "clk_apb5";
  217. resets = <&rstc NPCM7XX_RESET_IPSRST2 NPCM7XX_RESET_PSPI2>;
  218. status = "disabled";
  219. };
  220. timer0: timer@8000 {
  221. compatible = "nuvoton,npcm750-timer";
  222. interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
  223. reg = <0x8000 0x1C>;
  224. clocks = <&clk NPCM7XX_CLK_TIMER>;
  225. };
  226. watchdog0: watchdog@801C {
  227. compatible = "nuvoton,npcm750-wdt";
  228. interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
  229. reg = <0x801C 0x4>;
  230. status = "disabled";
  231. clocks = <&clk NPCM7XX_CLK_TIMER>;
  232. };
  233. watchdog1: watchdog@901C {
  234. compatible = "nuvoton,npcm750-wdt";
  235. interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
  236. reg = <0x901C 0x4>;
  237. status = "disabled";
  238. clocks = <&clk NPCM7XX_CLK_TIMER>;
  239. };
  240. watchdog2: watchdog@a01C {
  241. compatible = "nuvoton,npcm750-wdt";
  242. interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
  243. reg = <0xa01C 0x4>;
  244. status = "disabled";
  245. clocks = <&clk NPCM7XX_CLK_TIMER>;
  246. };
  247. serial0: serial@1000 {
  248. compatible = "nuvoton,npcm750-uart";
  249. reg = <0x1000 0x1000>;
  250. clocks = <&clk NPCM7XX_CLK_UART>;
  251. interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
  252. reg-shift = <2>;
  253. status = "disabled";
  254. };
  255. serial1: serial@2000 {
  256. compatible = "nuvoton,npcm750-uart";
  257. reg = <0x2000 0x1000>;
  258. clocks = <&clk NPCM7XX_CLK_UART>;
  259. interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
  260. reg-shift = <2>;
  261. status = "disabled";
  262. };
  263. serial2: serial@3000 {
  264. compatible = "nuvoton,npcm750-uart";
  265. reg = <0x3000 0x1000>;
  266. clocks = <&clk NPCM7XX_CLK_UART>;
  267. interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>;
  268. reg-shift = <2>;
  269. status = "disabled";
  270. };
  271. serial3: serial@4000 {
  272. compatible = "nuvoton,npcm750-uart";
  273. reg = <0x4000 0x1000>;
  274. clocks = <&clk NPCM7XX_CLK_UART>;
  275. interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
  276. reg-shift = <2>;
  277. status = "disabled";
  278. };
  279. rng: rng@b000 {
  280. compatible = "nuvoton,npcm750-rng";
  281. reg = <0xb000 0x8>;
  282. status = "disabled";
  283. };
  284. adc: adc@c000 {
  285. compatible = "nuvoton,npcm750-adc";
  286. reg = <0xc000 0x8>;
  287. interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
  288. clocks = <&clk NPCM7XX_CLK_ADC>;
  289. resets = <&rstc NPCM7XX_RESET_IPSRST1 NPCM7XX_RESET_ADC>;
  290. status = "disabled";
  291. };
  292. pwm_fan: pwm-fan-controller@103000 {
  293. #address-cells = <1>;
  294. #size-cells = <0>;
  295. compatible = "nuvoton,npcm750-pwm-fan";
  296. reg = <0x103000 0x2000>, <0x180000 0x8000>;
  297. reg-names = "pwm", "fan";
  298. clocks = <&clk NPCM7XX_CLK_APB3>,
  299. <&clk NPCM7XX_CLK_APB4>;
  300. clock-names = "pwm","fan";
  301. interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,
  302. <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
  303. <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
  304. <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
  305. <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
  306. <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
  307. <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
  308. <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
  309. pinctrl-names = "default";
  310. pinctrl-0 = <&pwm0_pins &pwm1_pins
  311. &pwm2_pins &pwm3_pins
  312. &pwm4_pins &pwm5_pins
  313. &pwm6_pins &pwm7_pins
  314. &fanin0_pins &fanin1_pins
  315. &fanin2_pins &fanin3_pins
  316. &fanin4_pins &fanin5_pins
  317. &fanin6_pins &fanin7_pins
  318. &fanin8_pins &fanin9_pins
  319. &fanin10_pins &fanin11_pins
  320. &fanin12_pins &fanin13_pins
  321. &fanin14_pins &fanin15_pins>;
  322. status = "disabled";
  323. };
  324. i2c0: i2c@80000 {
  325. reg = <0x80000 0x1000>;
  326. compatible = "nuvoton,npcm750-i2c";
  327. #address-cells = <1>;
  328. #size-cells = <0>;
  329. clocks = <&clk NPCM7XX_CLK_APB2>;
  330. interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
  331. pinctrl-names = "default";
  332. pinctrl-0 = <&smb0_pins>;
  333. status = "disabled";
  334. };
  335. i2c1: i2c@81000 {
  336. reg = <0x81000 0x1000>;
  337. compatible = "nuvoton,npcm750-i2c";
  338. #address-cells = <1>;
  339. #size-cells = <0>;
  340. clocks = <&clk NPCM7XX_CLK_APB2>;
  341. interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
  342. pinctrl-names = "default";
  343. pinctrl-0 = <&smb1_pins>;
  344. status = "disabled";
  345. };
  346. i2c2: i2c@82000 {
  347. reg = <0x82000 0x1000>;
  348. compatible = "nuvoton,npcm750-i2c";
  349. #address-cells = <1>;
  350. #size-cells = <0>;
  351. clocks = <&clk NPCM7XX_CLK_APB2>;
  352. interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
  353. pinctrl-names = "default";
  354. pinctrl-0 = <&smb2_pins>;
  355. status = "disabled";
  356. };
  357. i2c3: i2c@83000 {
  358. reg = <0x83000 0x1000>;
  359. compatible = "nuvoton,npcm750-i2c";
  360. #address-cells = <1>;
  361. #size-cells = <0>;
  362. clocks = <&clk NPCM7XX_CLK_APB2>;
  363. interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
  364. pinctrl-names = "default";
  365. pinctrl-0 = <&smb3_pins>;
  366. status = "disabled";
  367. };
  368. i2c4: i2c@84000 {
  369. reg = <0x84000 0x1000>;
  370. compatible = "nuvoton,npcm750-i2c";
  371. #address-cells = <1>;
  372. #size-cells = <0>;
  373. clocks = <&clk NPCM7XX_CLK_APB2>;
  374. interrupts = <GIC_SPI 68 IRQ_TYPE_LEVEL_HIGH>;
  375. pinctrl-names = "default";
  376. pinctrl-0 = <&smb4_pins>;
  377. status = "disabled";
  378. };
  379. i2c5: i2c@85000 {
  380. reg = <0x85000 0x1000>;
  381. compatible = "nuvoton,npcm750-i2c";
  382. #address-cells = <1>;
  383. #size-cells = <0>;
  384. clocks = <&clk NPCM7XX_CLK_APB2>;
  385. interrupts = <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>;
  386. pinctrl-names = "default";
  387. pinctrl-0 = <&smb5_pins>;
  388. status = "disabled";
  389. };
  390. i2c6: i2c@86000 {
  391. reg = <0x86000 0x1000>;
  392. compatible = "nuvoton,npcm750-i2c";
  393. #address-cells = <1>;
  394. #size-cells = <0>;
  395. clocks = <&clk NPCM7XX_CLK_APB2>;
  396. interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
  397. pinctrl-names = "default";
  398. pinctrl-0 = <&smb6_pins>;
  399. status = "disabled";
  400. };
  401. i2c7: i2c@87000 {
  402. reg = <0x87000 0x1000>;
  403. compatible = "nuvoton,npcm750-i2c";
  404. #address-cells = <1>;
  405. #size-cells = <0>;
  406. clocks = <&clk NPCM7XX_CLK_APB2>;
  407. interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
  408. pinctrl-names = "default";
  409. pinctrl-0 = <&smb7_pins>;
  410. status = "disabled";
  411. };
  412. i2c8: i2c@88000 {
  413. reg = <0x88000 0x1000>;
  414. compatible = "nuvoton,npcm750-i2c";
  415. #address-cells = <1>;
  416. #size-cells = <0>;
  417. clocks = <&clk NPCM7XX_CLK_APB2>;
  418. interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
  419. pinctrl-names = "default";
  420. pinctrl-0 = <&smb8_pins>;
  421. status = "disabled";
  422. };
  423. i2c9: i2c@89000 {
  424. reg = <0x89000 0x1000>;
  425. compatible = "nuvoton,npcm750-i2c";
  426. #address-cells = <1>;
  427. #size-cells = <0>;
  428. clocks = <&clk NPCM7XX_CLK_APB2>;
  429. interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
  430. pinctrl-names = "default";
  431. pinctrl-0 = <&smb9_pins>;
  432. status = "disabled";
  433. };
  434. i2c10: i2c@8a000 {
  435. reg = <0x8a000 0x1000>;
  436. compatible = "nuvoton,npcm750-i2c";
  437. #address-cells = <1>;
  438. #size-cells = <0>;
  439. clocks = <&clk NPCM7XX_CLK_APB2>;
  440. interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
  441. pinctrl-names = "default";
  442. pinctrl-0 = <&smb10_pins>;
  443. status = "disabled";
  444. };
  445. i2c11: i2c@8b000 {
  446. reg = <0x8b000 0x1000>;
  447. compatible = "nuvoton,npcm750-i2c";
  448. #address-cells = <1>;
  449. #size-cells = <0>;
  450. clocks = <&clk NPCM7XX_CLK_APB2>;
  451. interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
  452. pinctrl-names = "default";
  453. pinctrl-0 = <&smb11_pins>;
  454. status = "disabled";
  455. };
  456. i2c12: i2c@8c000 {
  457. reg = <0x8c000 0x1000>;
  458. compatible = "nuvoton,npcm750-i2c";
  459. #address-cells = <1>;
  460. #size-cells = <0>;
  461. clocks = <&clk NPCM7XX_CLK_APB2>;
  462. interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
  463. pinctrl-names = "default";
  464. pinctrl-0 = <&smb12_pins>;
  465. status = "disabled";
  466. };
  467. i2c13: i2c@8d000 {
  468. reg = <0x8d000 0x1000>;
  469. compatible = "nuvoton,npcm750-i2c";
  470. #address-cells = <1>;
  471. #size-cells = <0>;
  472. clocks = <&clk NPCM7XX_CLK_APB2>;
  473. interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
  474. pinctrl-names = "default";
  475. pinctrl-0 = <&smb13_pins>;
  476. status = "disabled";
  477. };
  478. i2c14: i2c@8e000 {
  479. reg = <0x8e000 0x1000>;
  480. compatible = "nuvoton,npcm750-i2c";
  481. #address-cells = <1>;
  482. #size-cells = <0>;
  483. clocks = <&clk NPCM7XX_CLK_APB2>;
  484. interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>;
  485. pinctrl-names = "default";
  486. pinctrl-0 = <&smb14_pins>;
  487. status = "disabled";
  488. };
  489. i2c15: i2c@8f000 {
  490. reg = <0x8f000 0x1000>;
  491. compatible = "nuvoton,npcm750-i2c";
  492. #address-cells = <1>;
  493. #size-cells = <0>;
  494. clocks = <&clk NPCM7XX_CLK_APB2>;
  495. interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
  496. pinctrl-names = "default";
  497. pinctrl-0 = <&smb15_pins>;
  498. status = "disabled";
  499. };
  500. };
  501. };
  502. pinctrl: pinctrl@f0800000 {
  503. #address-cells = <1>;
  504. #size-cells = <1>;
  505. compatible = "nuvoton,npcm750-pinctrl", "syscon", "simple-mfd";
  506. ranges = <0 0xf0010000 0x8000>;
  507. gpio0: gpio@f0010000 {
  508. gpio-controller;
  509. #gpio-cells = <2>;
  510. reg = <0x0 0x80>;
  511. interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
  512. gpio-ranges = <&pinctrl 0 0 32>;
  513. };
  514. gpio1: gpio@f0011000 {
  515. gpio-controller;
  516. #gpio-cells = <2>;
  517. reg = <0x1000 0x80>;
  518. interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
  519. gpio-ranges = <&pinctrl 0 32 32>;
  520. };
  521. gpio2: gpio@f0012000 {
  522. gpio-controller;
  523. #gpio-cells = <2>;
  524. reg = <0x2000 0x80>;
  525. interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
  526. gpio-ranges = <&pinctrl 0 64 32>;
  527. };
  528. gpio3: gpio@f0013000 {
  529. gpio-controller;
  530. #gpio-cells = <2>;
  531. reg = <0x3000 0x80>;
  532. interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>;
  533. gpio-ranges = <&pinctrl 0 96 32>;
  534. };
  535. gpio4: gpio@f0014000 {
  536. gpio-controller;
  537. #gpio-cells = <2>;
  538. reg = <0x4000 0x80>;
  539. interrupts = <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>;
  540. gpio-ranges = <&pinctrl 0 128 32>;
  541. };
  542. gpio5: gpio@f0015000 {
  543. gpio-controller;
  544. #gpio-cells = <2>;
  545. reg = <0x5000 0x80>;
  546. interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
  547. gpio-ranges = <&pinctrl 0 160 32>;
  548. };
  549. gpio6: gpio@f0016000 {
  550. gpio-controller;
  551. #gpio-cells = <2>;
  552. reg = <0x6000 0x80>;
  553. interrupts = <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
  554. gpio-ranges = <&pinctrl 0 192 32>;
  555. };
  556. gpio7: gpio@f0017000 {
  557. gpio-controller;
  558. #gpio-cells = <2>;
  559. reg = <0x7000 0x80>;
  560. interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
  561. gpio-ranges = <&pinctrl 0 224 32>;
  562. };
  563. iox1_pins: iox1-pins {
  564. groups = "iox1";
  565. function = "iox1";
  566. };
  567. iox2_pins: iox2-pins {
  568. groups = "iox2";
  569. function = "iox2";
  570. };
  571. smb1d_pins: smb1d-pins {
  572. groups = "smb1d";
  573. function = "smb1d";
  574. };
  575. smb2d_pins: smb2d-pins {
  576. groups = "smb2d";
  577. function = "smb2d";
  578. };
  579. lkgpo1_pins: lkgpo1-pins {
  580. groups = "lkgpo1";
  581. function = "lkgpo1";
  582. };
  583. lkgpo2_pins: lkgpo2-pins {
  584. groups = "lkgpo2";
  585. function = "lkgpo2";
  586. };
  587. ioxh_pins: ioxh-pins {
  588. groups = "ioxh";
  589. function = "ioxh";
  590. };
  591. gspi_pins: gspi-pins {
  592. groups = "gspi";
  593. function = "gspi";
  594. };
  595. smb5b_pins: smb5b-pins {
  596. groups = "smb5b";
  597. function = "smb5b";
  598. };
  599. smb5c_pins: smb5c-pins {
  600. groups = "smb5c";
  601. function = "smb5c";
  602. };
  603. lkgpo0_pins: lkgpo0-pins {
  604. groups = "lkgpo0";
  605. function = "lkgpo0";
  606. };
  607. pspi2_pins: pspi2-pins {
  608. groups = "pspi2";
  609. function = "pspi2";
  610. };
  611. smb4den_pins: smb4den-pins {
  612. groups = "smb4den";
  613. function = "smb4den";
  614. };
  615. smb4b_pins: smb4b-pins {
  616. groups = "smb4b";
  617. function = "smb4b";
  618. };
  619. smb4c_pins: smb4c-pins {
  620. groups = "smb4c";
  621. function = "smb4c";
  622. };
  623. smb15_pins: smb15-pins {
  624. groups = "smb15";
  625. function = "smb15";
  626. };
  627. smb4d_pins: smb4d-pins {
  628. groups = "smb4d";
  629. function = "smb4d";
  630. };
  631. smb14_pins: smb14-pins {
  632. groups = "smb14";
  633. function = "smb14";
  634. };
  635. smb5_pins: smb5-pins {
  636. groups = "smb5";
  637. function = "smb5";
  638. };
  639. smb4_pins: smb4-pins {
  640. groups = "smb4";
  641. function = "smb4";
  642. };
  643. smb3_pins: smb3-pins {
  644. groups = "smb3";
  645. function = "smb3";
  646. };
  647. spi0cs1_pins: spi0cs1-pins {
  648. groups = "spi0cs1";
  649. function = "spi0cs1";
  650. };
  651. spi0cs2_pins: spi0cs2-pins {
  652. groups = "spi0cs2";
  653. function = "spi0cs2";
  654. };
  655. spi0cs3_pins: spi0cs3-pins {
  656. groups = "spi0cs3";
  657. function = "spi0cs3";
  658. };
  659. smb3c_pins: smb3c-pins {
  660. groups = "smb3c";
  661. function = "smb3c";
  662. };
  663. smb3b_pins: smb3b-pins {
  664. groups = "smb3b";
  665. function = "smb3b";
  666. };
  667. bmcuart0a_pins: bmcuart0a-pins {
  668. groups = "bmcuart0a";
  669. function = "bmcuart0a";
  670. };
  671. uart1_pins: uart1-pins {
  672. groups = "uart1";
  673. function = "uart1";
  674. };
  675. jtag2_pins: jtag2-pins {
  676. groups = "jtag2";
  677. function = "jtag2";
  678. };
  679. bmcuart1_pins: bmcuart1-pins {
  680. groups = "bmcuart1";
  681. function = "bmcuart1";
  682. };
  683. uart2_pins: uart2-pins {
  684. groups = "uart2";
  685. function = "uart2";
  686. };
  687. bmcuart0b_pins: bmcuart0b-pins {
  688. groups = "bmcuart0b";
  689. function = "bmcuart0b";
  690. };
  691. r1err_pins: r1err-pins {
  692. groups = "r1err";
  693. function = "r1err";
  694. };
  695. r1md_pins: r1md-pins {
  696. groups = "r1md";
  697. function = "r1md";
  698. };
  699. smb3d_pins: smb3d-pins {
  700. groups = "smb3d";
  701. function = "smb3d";
  702. };
  703. fanin0_pins: fanin0-pins {
  704. groups = "fanin0";
  705. function = "fanin0";
  706. };
  707. fanin1_pins: fanin1-pins {
  708. groups = "fanin1";
  709. function = "fanin1";
  710. };
  711. fanin2_pins: fanin2-pins {
  712. groups = "fanin2";
  713. function = "fanin2";
  714. };
  715. fanin3_pins: fanin3-pins {
  716. groups = "fanin3";
  717. function = "fanin3";
  718. };
  719. fanin4_pins: fanin4-pins {
  720. groups = "fanin4";
  721. function = "fanin4";
  722. };
  723. fanin5_pins: fanin5-pins {
  724. groups = "fanin5";
  725. function = "fanin5";
  726. };
  727. fanin6_pins: fanin6-pins {
  728. groups = "fanin6";
  729. function = "fanin6";
  730. };
  731. fanin7_pins: fanin7-pins {
  732. groups = "fanin7";
  733. function = "fanin7";
  734. };
  735. fanin8_pins: fanin8-pins {
  736. groups = "fanin8";
  737. function = "fanin8";
  738. };
  739. fanin9_pins: fanin9-pins {
  740. groups = "fanin9";
  741. function = "fanin9";
  742. };
  743. fanin10_pins: fanin10-pins {
  744. groups = "fanin10";
  745. function = "fanin10";
  746. };
  747. fanin11_pins: fanin11-pins {
  748. groups = "fanin11";
  749. function = "fanin11";
  750. };
  751. fanin12_pins: fanin12-pins {
  752. groups = "fanin12";
  753. function = "fanin12";
  754. };
  755. fanin13_pins: fanin13-pins {
  756. groups = "fanin13";
  757. function = "fanin13";
  758. };
  759. fanin14_pins: fanin14-pins {
  760. groups = "fanin14";
  761. function = "fanin14";
  762. };
  763. fanin15_pins: fanin15-pins {
  764. groups = "fanin15";
  765. function = "fanin15";
  766. };
  767. pwm0_pins: pwm0-pins {
  768. groups = "pwm0";
  769. function = "pwm0";
  770. };
  771. pwm1_pins: pwm1-pins {
  772. groups = "pwm1";
  773. function = "pwm1";
  774. };
  775. pwm2_pins: pwm2-pins {
  776. groups = "pwm2";
  777. function = "pwm2";
  778. };
  779. pwm3_pins: pwm3-pins {
  780. groups = "pwm3";
  781. function = "pwm3";
  782. };
  783. r2_pins: r2-pins {
  784. groups = "r2";
  785. function = "r2";
  786. };
  787. r2err_pins: r2err-pins {
  788. groups = "r2err";
  789. function = "r2err";
  790. };
  791. r2md_pins: r2md-pins {
  792. groups = "r2md";
  793. function = "r2md";
  794. };
  795. ga20kbc_pins: ga20kbc-pins {
  796. groups = "ga20kbc";
  797. function = "ga20kbc";
  798. };
  799. smb5d_pins: smb5d-pins {
  800. groups = "smb5d";
  801. function = "smb5d";
  802. };
  803. lpc_pins: lpc-pins {
  804. groups = "lpc";
  805. function = "lpc";
  806. };
  807. espi_pins: espi-pins {
  808. groups = "espi";
  809. function = "espi";
  810. };
  811. rg1_pins: rg1-pins {
  812. groups = "rg1";
  813. function = "rg1";
  814. };
  815. rg1mdio_pins: rg1mdio-pins {
  816. groups = "rg1mdio";
  817. function = "rg1mdio";
  818. };
  819. rg2_pins: rg2-pins {
  820. groups = "rg2";
  821. function = "rg2";
  822. };
  823. ddr_pins: ddr-pins {
  824. groups = "ddr";
  825. function = "ddr";
  826. };
  827. smb0_pins: smb0-pins {
  828. groups = "smb0";
  829. function = "smb0";
  830. };
  831. smb1_pins: smb1-pins {
  832. groups = "smb1";
  833. function = "smb1";
  834. };
  835. smb2_pins: smb2-pins {
  836. groups = "smb2";
  837. function = "smb2";
  838. };
  839. smb2c_pins: smb2c-pins {
  840. groups = "smb2c";
  841. function = "smb2c";
  842. };
  843. smb2b_pins: smb2b-pins {
  844. groups = "smb2b";
  845. function = "smb2b";
  846. };
  847. smb1c_pins: smb1c-pins {
  848. groups = "smb1c";
  849. function = "smb1c";
  850. };
  851. smb1b_pins: smb1b-pins {
  852. groups = "smb1b";
  853. function = "smb1b";
  854. };
  855. smb8_pins: smb8-pins {
  856. groups = "smb8";
  857. function = "smb8";
  858. };
  859. smb9_pins: smb9-pins {
  860. groups = "smb9";
  861. function = "smb9";
  862. };
  863. smb10_pins: smb10-pins {
  864. groups = "smb10";
  865. function = "smb10";
  866. };
  867. smb11_pins: smb11-pins {
  868. groups = "smb11";
  869. function = "smb11";
  870. };
  871. sd1_pins: sd1-pins {
  872. groups = "sd1";
  873. function = "sd1";
  874. };
  875. sd1pwr_pins: sd1pwr-pins {
  876. groups = "sd1pwr";
  877. function = "sd1pwr";
  878. };
  879. pwm4_pins: pwm4-pins {
  880. groups = "pwm4";
  881. function = "pwm4";
  882. };
  883. pwm5_pins: pwm5-pins {
  884. groups = "pwm5";
  885. function = "pwm5";
  886. };
  887. pwm6_pins: pwm6-pins {
  888. groups = "pwm6";
  889. function = "pwm6";
  890. };
  891. pwm7_pins: pwm7-pins {
  892. groups = "pwm7";
  893. function = "pwm7";
  894. };
  895. mmc8_pins: mmc8-pins {
  896. groups = "mmc8";
  897. function = "mmc8";
  898. };
  899. mmc_pins: mmc-pins {
  900. groups = "mmc";
  901. function = "mmc";
  902. };
  903. mmcwp_pins: mmcwp-pins {
  904. groups = "mmcwp";
  905. function = "mmcwp";
  906. };
  907. mmccd_pins: mmccd-pins {
  908. groups = "mmccd";
  909. function = "mmccd";
  910. };
  911. mmcrst_pins: mmcrst-pins {
  912. groups = "mmcrst";
  913. function = "mmcrst";
  914. };
  915. clkout_pins: clkout-pins {
  916. groups = "clkout";
  917. function = "clkout";
  918. };
  919. serirq_pins: serirq-pins {
  920. groups = "serirq";
  921. function = "serirq";
  922. };
  923. lpcclk_pins: lpcclk-pins {
  924. groups = "lpcclk";
  925. function = "lpcclk";
  926. };
  927. scipme_pins: scipme-pins {
  928. groups = "scipme";
  929. function = "scipme";
  930. };
  931. sci_pins: sci-pins {
  932. groups = "sci";
  933. function = "sci";
  934. };
  935. smb6_pins: smb6-pins {
  936. groups = "smb6";
  937. function = "smb6";
  938. };
  939. smb7_pins: smb7-pins {
  940. groups = "smb7";
  941. function = "smb7";
  942. };
  943. pspi1_pins: pspi1-pins {
  944. groups = "pspi1";
  945. function = "pspi1";
  946. };
  947. faninx_pins: faninx-pins {
  948. groups = "faninx";
  949. function = "faninx";
  950. };
  951. r1_pins: r1-pins {
  952. groups = "r1";
  953. function = "r1";
  954. };
  955. spi3_pins: spi3-pins {
  956. groups = "spi3";
  957. function = "spi3";
  958. };
  959. spi3cs1_pins: spi3cs1-pins {
  960. groups = "spi3cs1";
  961. function = "spi3cs1";
  962. };
  963. spi3quad_pins: spi3quad-pins {
  964. groups = "spi3quad";
  965. function = "spi3quad";
  966. };
  967. spi3cs2_pins: spi3cs2-pins {
  968. groups = "spi3cs2";
  969. function = "spi3cs2";
  970. };
  971. spi3cs3_pins: spi3cs3-pins {
  972. groups = "spi3cs3";
  973. function = "spi3cs3";
  974. };
  975. nprd_smi_pins: nprd-smi-pins {
  976. groups = "nprd_smi";
  977. function = "nprd_smi";
  978. };
  979. smb0b_pins: smb0b-pins {
  980. groups = "smb0b";
  981. function = "smb0b";
  982. };
  983. smb0c_pins: smb0c-pins {
  984. groups = "smb0c";
  985. function = "smb0c";
  986. };
  987. smb0den_pins: smb0den-pins {
  988. groups = "smb0den";
  989. function = "smb0den";
  990. };
  991. smb0d_pins: smb0d-pins {
  992. groups = "smb0d";
  993. function = "smb0d";
  994. };
  995. ddc_pins: ddc-pins {
  996. groups = "ddc";
  997. function = "ddc";
  998. };
  999. rg2mdio_pins: rg2mdio-pins {
  1000. groups = "rg2mdio";
  1001. function = "rg2mdio";
  1002. };
  1003. wdog1_pins: wdog1-pins {
  1004. groups = "wdog1";
  1005. function = "wdog1";
  1006. };
  1007. wdog2_pins: wdog2-pins {
  1008. groups = "wdog2";
  1009. function = "wdog2";
  1010. };
  1011. smb12_pins: smb12-pins {
  1012. groups = "smb12";
  1013. function = "smb12";
  1014. };
  1015. smb13_pins: smb13-pins {
  1016. groups = "smb13";
  1017. function = "smb13";
  1018. };
  1019. spix_pins: spix-pins {
  1020. groups = "spix";
  1021. function = "spix";
  1022. };
  1023. spixcs1_pins: spixcs1-pins {
  1024. groups = "spixcs1";
  1025. function = "spixcs1";
  1026. };
  1027. clkreq_pins: clkreq-pins {
  1028. groups = "clkreq";
  1029. function = "clkreq";
  1030. };
  1031. hgpio0_pins: hgpio0-pins {
  1032. groups = "hgpio0";
  1033. function = "hgpio0";
  1034. };
  1035. hgpio1_pins: hgpio1-pins {
  1036. groups = "hgpio1";
  1037. function = "hgpio1";
  1038. };
  1039. hgpio2_pins: hgpio2-pins {
  1040. groups = "hgpio2";
  1041. function = "hgpio2";
  1042. };
  1043. hgpio3_pins: hgpio3-pins {
  1044. groups = "hgpio3";
  1045. function = "hgpio3";
  1046. };
  1047. hgpio4_pins: hgpio4-pins {
  1048. groups = "hgpio4";
  1049. function = "hgpio4";
  1050. };
  1051. hgpio5_pins: hgpio5-pins {
  1052. groups = "hgpio5";
  1053. function = "hgpio5";
  1054. };
  1055. hgpio6_pins: hgpio6-pins {
  1056. groups = "hgpio6";
  1057. function = "hgpio6";
  1058. };
  1059. hgpio7_pins: hgpio7-pins {
  1060. groups = "hgpio7";
  1061. function = "hgpio7";
  1062. };
  1063. };
  1064. };