1/*
2 * Copyright (c) 2023 Nuvoton Technology Corporation.
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7/dts-v1/;
8
9#include <nuvoton/npcx4m8f.dtsi>
10#include "npcx4m8f_evb-pinctrl.dtsi"
11
12/ {
13	model = "Nuvoton NPCX4M8F evaluation board";
14
15	chosen {
16		zephyr,sram = &sram0;
17		zephyr,console = &uart1;
18		zephyr,flash = &flash0;
19		zephyr,keyboard-scan = &kscan_input;
20	};
21
22	aliases {
23		pwm-led0 = &pwm_led0_green;
24		led0 = &gpio_led_red;
25		pwm-0 = &pwm6;
26		i2c-0 = &i2c0_0;
27		watchdog0 = &twd0;
28		peci-0 = &peci0;
29		spi-flash0 = &int_flash;
30		kscan0 = &kscan_input;
31	};
32
33	leds-pwm {
34		compatible = "pwm-leds";
35		pwm_led0_green: pwm_led_0 {
36			pwms = <&pwm6 0 PWM_MSEC(20) PWM_POLARITY_INVERTED>;
37			label = "User D7 green";
38		};
39	};
40
41	leds-gpio {
42		compatible = "gpio-leds";
43		gpio_led_red: led_0 {
44			gpios = <&gpio6 0 GPIO_ACTIVE_LOW>;
45			label = "User D8 red";
46		};
47	};
48};
49
50/* Overwrite default device properties with overlays in board dt file here. */
51&uart1 {
52	status = "okay";
53	current-speed = <115200>;
54	/* Use UART1_SL2 ie. PIN64.65 */
55	pinctrl-0 = <&uart1_2_sin_gp64 &uart1_2_sout_gp65>;
56	pinctrl-names = "default";
57};
58
59&pwm6 {
60	status = "okay";
61	pinctrl-0 = <&pwm6_gpc0>;
62	pinctrl-names = "default";
63};
64
65&adc0 {
66	status = "okay";
67	/* Use adc0 channel 0 and 2 for 'adc_api' driver tests */
68	pinctrl-0 = <&adc0_chan0_gp45 &adc0_chan2_gp43>;
69	pinctrl-names = "default";
70};
71
72&espi0 {
73	status = "okay";
74	pinctrl-0 = <&espi_lpc_gp46_47_51_52_53_54_55_57>;
75	pinctrl-names = "default";
76};
77
78&i2c0_0 {
79	status = "okay";
80	pinctrl-0 = <&i2c0_0_sda_scl_gpb4_b5>;
81	pinctrl-names = "default";
82	clock-frequency = <I2C_BITRATE_FAST>;
83};
84
85&i2c_ctrl0 {
86	status = "okay";
87};
88
89&tach1 {
90	status = "okay";
91	pinctrl-0 = <&ta1_1_in_gp40>;
92	pinctrl-names = "default";
93	port = <NPCX_TACH_PORT_A>;
94	sample-clk = <NPCX_TACH_FREQ_LFCLK>;
95	pulses-per-round = <1>;
96};
97
98&peci0 {
99	status = "okay";
100	pinctrl-0 = <&peci_dat_gp81>;
101	pinctrl-names = "default";
102};
103
104&kbd {
105	/* Demonstrate a 13 x 8 keyboard matrix on evb */
106	pinctrl-0 = <&ksi0_gp31 &ksi1_gp30 &ksi2_gp27 &ksi3_gp26
107		     &ksi4_gp25 &ksi5_gp24 &ksi6_gp23 &ksi7_gp22
108		     &kso00_gp21 &kso01_gp20 &kso02_gp17 &kso03_gp16
109		     &kso04_gp15 &kso05_gp14 &kso06_gp13 &kso07_gp12
110		     &kso08_gp11 &kso09_gp10 &kso10_gp07 &kso11_gp06
111		     &kso12_gp05>;
112	pinctrl-names = "default";
113	row-size = <8>;
114	col-size = <13>;
115	status = "okay";
116
117	kscan_input: kscan-input {
118		compatible = "zephyr,kscan-input";
119	};
120};
121