/*
 * Copyright (c) 2021 Nuvoton Technology Corporation.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;

#include <nuvoton/npcx9m6f.dtsi>

/ {
	model = "Nuvoton NPCX9M6F evaluation board";

	chosen {
		zephyr,sram = &sram0;
		zephyr,console = &uart1;
		zephyr,flash = &flash0;
	};

	aliases {
		/* For samples/basic/blinky_pwm */
		pwm-led0 = &pwm_led0_green;
		/* For gpio test suites */
		led0 = &gpio_led_red;
		/* For pwm test suites */
		pwm-0 = &pwm6;
		/* For i2c test suites */
		i2c-0 = &i2c0_0;
		/* For watchdog sample */
		watchdog0 = &twd0;
	};

	leds-pwm {
		compatible = "pwm-leds";
		pwm_led0_green: pwm_led_0 {
			pwms = <&pwm6 0 PWM_MSEC(20) PWM_POLARITY_INVERTED>;
			label = "User D7 green";
		};
	};

	leds-gpio {
		compatible = "gpio-leds";
		gpio_led_red: led_0 {
			gpios = <&gpio6 0 GPIO_ACTIVE_LOW>;
			label = "User D8 red";
		};
	};

	power-states {
		suspend_to_idle0: suspend-to-idle0 {
			compatible = "zephyr,power-state";
			power-state-name = "suspend-to-idle";
			substate-id = <0>;
			min-residency-us = <1000>;
		};

		suspend_to_idle1: suspend-to-idle1 {
			compatible = "zephyr,power-state";
			power-state-name = "suspend-to-idle";
			substate-id = <1>;
			min-residency-us = <201000>;
		};
	};

	vsby-psl-in-list {
		psl-in-pads = <&psl_in1>; /* Use PSL_IN1 as detection pins */
		status = "okay";
	};
};

&cpu0 {
	cpu-power-states = <&suspend_to_idle0 &suspend_to_idle1>;
};

&psl_in1 {
	/* A falling edge detection type for PSL_IN1 */
	flag = <NPCX_PSL_FALLING_EDGE>;
};

/* Overwrite default device properties with overlays in board dt file here. */
&uart1 {
	status = "okay";
	current-speed = <115200>;
	/* Use UART1_SL2 ie. PIN64.65 */
	pinctrl-0 = <&altj_cr_sin1_sl2 &altj_cr_sout1_sl2>;
};

&pwm6 {
	drive-open-drain;
	status = "okay";
};

&adc0 {
	/* ADC pinmux is changed only if related channel is configured. */
	status = "okay";
};

&espi0 {
	status = "okay";
};

&i2c0_0 {
	status = "okay";
	clock-frequency = <I2C_BITRATE_FAST>;
};

&i2c_ctrl0 {
	status = "okay";
};

&tach1 {
	status = "okay";
	pinctrl-0 = <&alt3_ta1_sl1>; /* Use TA1_SL1 (PIN40) as input pin */
	port = <NPCX_TACH_PORT_A>; /* port-A is selected */
	sample-clk = <NPCX_TACH_FREQ_LFCLK>; /* Use LFCLK as sampling clock */
	pulses-per-round = <1>; /* number of pulses per round of encoder */
};
