Lines Matching +full:reg +full:- +full:io +full:- +full:width

4  * SPDX-License-Identifier: Apache-2.0
7 #include <arm/armv7-m.dtsi>
10 #include <zephyr/dt-bindings/adc/adc.h>
11 #include <zephyr/dt-bindings/clock/npcx_clock.h>
12 #include <zephyr/dt-bindings/flash_controller/npcx_fiu_qspi.h>
13 #include <zephyr/dt-bindings/gpio/gpio.h>
14 #include <zephyr/dt-bindings/i2c/i2c.h>
15 #include <zephyr/dt-bindings/pinctrl/npcx-pinctrl.h>
16 #include <zephyr/dt-bindings/pwm/pwm.h>
17 #include <zephyr/dt-bindings/sensor/npcx_tach.h>
22 #address-cells = <1>;
23 #size-cells = <0>;
27 compatible = "arm,cortex-m4f";
28 reg = <0>;
32 def-io-conf-list {
33 compatible = "nuvoton,npcx-pinctrl-def";
35 * no_spip - PIN95.97.A1.A3
36 * no_fpip - PIN96.A0.A2.A4 - Internal flash only
37 * no_pwrgd - PIN72
38 * no_lpc_espi - PIN46.47.51.52.53.54.55.57
39 * no_peci_en - PIN81
40 * npsl_in1_sl - PIND2
41 * npsl_in2_sl - PIN00
42 * no_ksi0-7 - PIN31.30.27.26.25.24.23.22
43 * no_ks000-17 - PIN21.20.17.16.15.14.13.12.11.10.07.06.05.04.
53 compatible = "nuvoton,npcx-pinctrl";
58 * 'leak-gpios' prop. at board DT file to save more power consumption.
60 power_leakage_io: power-leakage-io {
61 compatible = "nuvoton,npcx-leakage-io";
66 pcc: clock-controller@4000d000 {
67 compatible = "nuvoton,npcx-pcc";
68 /* Cells for bus type, clock control reg and bit */
69 #clock-cells = <3>;
70 /* First reg region is Power Management Controller */
71 /* Second reg region is Core Domain Clock Generator */
72 reg = <0x4000d000 0x2000
74 reg-names = "pmc", "cdcg";
78 compatible = "nuvoton,npcx-scfg";
79 /* First reg region is System Configuration Device */
80 /* Second reg region is Debugger Interface Device */
81 /* Third reg region is System Glue Device */
82 reg = <0x400c3000 0x70
85 reg-names = "scfg", "dbg", "glue";
86 #alt-cells = <3>;
87 #lvol-cells = <2>;
92 reg = <0x4000c000 0xa>;
93 reg-io-width = <1>;
98 reg = <0x4000c00a 0x4>;
99 reg-io-width = <2>;
103 compatible = "nuvoton,npcx-miwu";
104 reg = <0x400bb000 0x2000>;
106 #miwu-cells = <2>;
110 compatible = "nuvoton,npcx-miwu";
111 reg = <0x400bd000 0x2000>;
113 #miwu-cells = <2>;
117 compatible = "nuvoton,npcx-miwu";
118 reg = <0x400bf000 0x2000>;
120 #miwu-cells = <2>;
124 compatible = "nuvoton,npcx-gpio";
125 reg = <0x40081000 0x2000>;
126 gpio-controller;
128 #gpio-cells=<2>;
132 compatible = "nuvoton,npcx-gpio";
133 reg = <0x40083000 0x2000>;
134 gpio-controller;
136 #gpio-cells=<2>;
140 compatible = "nuvoton,npcx-gpio";
141 reg = <0x40085000 0x2000>;
142 gpio-controller;
144 #gpio-cells=<2>;
148 compatible = "nuvoton,npcx-gpio";
149 reg = <0x40087000 0x2000>;
150 gpio-controller;
152 #gpio-cells=<2>;
156 compatible = "nuvoton,npcx-gpio";
157 reg = <0x40089000 0x2000>;
158 gpio-controller;
160 #gpio-cells=<2>;
164 compatible = "nuvoton,npcx-gpio";
165 reg = <0x4008b000 0x2000>;
166 gpio-controller;
168 #gpio-cells=<2>;
172 compatible = "nuvoton,npcx-gpio";
173 reg = <0x4008d000 0x2000>;
174 gpio-controller;
176 #gpio-cells=<2>;
180 compatible = "nuvoton,npcx-gpio";
181 reg = <0x4008f000 0x2000>;
182 gpio-controller;
184 #gpio-cells=<2>;
188 compatible = "nuvoton,npcx-gpio";
189 reg = <0x40091000 0x2000>;
190 gpio-controller;
192 #gpio-cells=<2>;
196 compatible = "nuvoton,npcx-gpio";
197 reg = <0x40093000 0x2000>;
198 gpio-controller;
200 #gpio-cells=<2>;
204 compatible = "nuvoton,npcx-gpio";
205 reg = <0x40095000 0x2000>;
206 gpio-controller;
208 #gpio-cells=<2>;
212 compatible = "nuvoton,npcx-gpio";
213 reg = <0x40097000 0x2000>;
214 gpio-controller;
216 #gpio-cells=<2>;
220 compatible = "nuvoton,npcx-gpio";
221 reg = <0x40099000 0x2000>;
222 gpio-controller;
224 #gpio-cells=<2>;
228 compatible = "nuvoton,npcx-gpio";
229 reg = <0x4009b000 0x2000>;
230 gpio-controller;
232 #gpio-cells=<2>;
236 compatible = "nuvoton,npcx-gpio";
237 reg = <0x4009d000 0x2000>;
238 gpio-controller;
240 #gpio-cells=<2>;
244 compatible = "nuvoton,npcx-gpio";
245 reg = <0x4009f000 0x2000>;
246 gpio-controller;
248 #gpio-cells=<2>;
252 compatible = "nuvoton,npcx-pwm";
253 reg = <0x40080000 0x2000>;
254 pwm-channel = <0>;
256 #pwm-cells = <3>;
261 compatible = "nuvoton,npcx-pwm";
262 reg = <0x40082000 0x2000>;
263 pwm-channel = <1>;
265 #pwm-cells = <3>;
270 compatible = "nuvoton,npcx-pwm";
271 reg = <0x40084000 0x2000>;
272 pwm-channel = <2>;
274 #pwm-cells = <3>;
279 compatible = "nuvoton,npcx-pwm";
280 reg = <0x40086000 0x2000>;
281 pwm-channel = <3>;
283 #pwm-cells = <3>;
288 compatible = "nuvoton,npcx-pwm";
289 reg = <0x40088000 0x2000>;
290 pwm-channel = <4>;
292 #pwm-cells = <3>;
297 compatible = "nuvoton,npcx-pwm";
298 reg = <0x4008a000 0x2000>;
299 pwm-channel = <5>;
301 #pwm-cells = <3>;
306 compatible = "nuvoton,npcx-pwm";
307 reg = <0x4008c000 0x2000>;
308 pwm-channel = <6>;
310 #pwm-cells = <3>;
315 compatible = "nuvoton,npcx-pwm";
316 reg = <0x4008e000 0x2000>;
317 pwm-channel = <7>;
319 #pwm-cells = <3>;
324 compatible = "nuvoton,npcx-adc";
325 #io-channel-cells = <1>;
326 reg = <0x400d1000 0x2000>;
329 vref-mv = <2816>;
334 compatible = "nuvoton,npcx-watchdog";
335 reg = <0x400d8000 0x2000>;
336 t0-out = <&wui_t0out>;
340 compatible = "nuvoton,npcx-espi";
341 reg = <0x4000a000 0x2000>;
347 espi-rst-wui = <&wui_espi_rst>;
349 #address-cells = <1>;
350 #size-cells = <0>;
351 #vw-cells = <3>;
356 compatible = "nuvoton,npcx-host-sub";
357 /* host sub-module register address & size */
358 reg = <0x400c1000 0x2000
364 reg-names = "mswc", "shm", "c2h", "kbc", "pm_acpi",
367 /* host sub-module IRQ and priority */
368 interrupts = <25 3>, /* KBC Input-Buf-Full (IBF) */
369 <56 3>, /* KBC Output-Buf-Empty (OBE) */
370 <26 3>, /* PMCH Input-Buf-Full (IBF) */
371 <3 3>, /* PMCH Output-Buf-Empty (OBE) */
373 interrupt-names = "kbc_ibf", "kbc_obe", "pmch_ibf",
376 /* WUI map for accessing host sub-modules */
377 host-acc-wui = <&wui_host_acc>;
379 /* clocks for host sub-modules */
387 /* I2c Controllers - Do not use them as i2c node directly */
389 compatible = "nuvoton,npcx-i2c-ctrl";
390 reg = <0x40009000 0x1000>;
397 compatible = "nuvoton,npcx-i2c-ctrl";
398 reg = <0x4000b000 0x1000>;
405 compatible = "nuvoton,npcx-i2c-ctrl";
406 reg = <0x400c0000 0x1000>;
413 compatible = "nuvoton,npcx-i2c-ctrl";
414 reg = <0x400c2000 0x1000>;
421 compatible = "nuvoton,npcx-i2c-ctrl";
422 reg = <0x40008000 0x1000>;
429 compatible = "nuvoton,npcx-i2c-ctrl";
430 reg = <0x40017000 0x1000>;
437 compatible = "nuvoton,npcx-i2c-ctrl";
438 reg = <0x40018000 0x1000>;
445 compatible = "nuvoton,npcx-i2c-ctrl";
446 reg = <0x40019000 0x1000>;
453 compatible = "nuvoton,npcx-tach";
454 reg = <0x400e1000 0x2000>;
460 compatible = "nuvoton,npcx-tach";
461 reg = <0x400e3000 0x2000>;
467 compatible = "nuvoton,npcx-ps2-ctrl";
468 reg = <0x400b1000 0x1000>;
472 /* PS2 Channels - Please use them as PS2 node */
474 compatible = "nuvoton,npcx-ps2-channel";
480 compatible = "nuvoton,npcx-ps2-channel";
486 compatible = "nuvoton,npcx-ps2-channel";
492 compatible = "nuvoton,npcx-ps2-channel";
498 /* Dedicated Quad-SPI interface to access SPI flashes */
500 compatible = "nuvoton,npcx-fiu-qspi";
501 #address-cells = <1>;
502 #size-cells = <0>;
503 reg = <0x40020000 0x2000>;
507 compatible = "nuvoton,npcx-peci";
508 reg = <0x400d4000 0x1000>;
509 #address-cells = <1>;
510 #size-cells = <0>;
517 compatible = "nuvoton,npcx-kbd";
518 reg = <0x400a3000 0x2000>;
521 wui-maps = <&wui_io31 &wui_io30 &wui_io27 &wui_io26
527 compatible = "nuvoton,npcx-spip";
528 reg = <0x400d2000 0x1000>;
529 #address-cells = <1>;
530 #size-cells = <0>;
538 soc-if {
540 * 'reg' prop. Please overwrite 'status' prop. to 'okay' if you
541 * want to switch the interface from io to specific peripheral.
544 compatible = "nuvoton,npcx-host-uart";
549 compatible = "nuvoton,npcx-i2c-port";
550 #address-cells = <1>;
551 #size-cells = <0>;
558 compatible = "nuvoton,npcx-i2c-port";
559 #address-cells = <1>;
560 #size-cells = <0>;
567 compatible = "nuvoton,npcx-i2c-port";
568 #address-cells = <1>;
569 #size-cells = <0>;
576 compatible = "nuvoton,npcx-i2c-port";
577 #address-cells = <1>;
578 #size-cells = <0>;
585 compatible = "nuvoton,npcx-i2c-port";
586 #address-cells = <1>;
587 #size-cells = <0>;
594 compatible = "nuvoton,npcx-i2c-port";
595 #address-cells = <1>;
596 #size-cells = <0>;
603 compatible = "nuvoton,npcx-i2c-port";
604 #address-cells = <1>;
605 #size-cells = <0>;
612 compatible = "nuvoton,npcx-i2c-port";
613 #address-cells = <1>;
614 #size-cells = <0>;
621 compatible = "nuvoton,npcx-i2c-port";
622 #address-cells = <1>;
623 #size-cells = <0>;
630 compatible = "nuvoton,npcx-i2c-port";
631 #address-cells = <1>;
632 #size-cells = <0>;
638 power_ctrl_psl: power-ctrl-psl {
639 compatible = "nuvoton,npcx-power-psl";
644 soc-id {
645 compatible = "nuvoton,npcx-soc-id";
646 family-id = <0x20>;
649 booter-variant {
650 compatible = "nuvoton,npcx-booter-variant";
655 arm,num-irq-priority-bits = <3>;