/* Copyright (c) 2018 SiFive, Inc. */
/* SPDX-License-Identifier: Apache-2.0 */

/dts-v1/;

#include <sifive/riscv32-fe310.dtsi>
#include "hifive1-pinctrl.dtsi"

/ {
	model = "SiFive HiFive 1";
	compatible = "sifive,hifive1";
	aliases {
		pwm-led0 = &led0;
		pwm-led1 = &led1;
		pwm-led2 = &led2;
	};

	chosen {
		zephyr,console = &uart0;
		zephyr,shell-uart = &uart0;
		zephyr,sram = &dtim;
		zephyr,flash = &flash0;
	};

	leds {
		compatible = "pwm-leds";
		led0: led_0 {
			pwms = <&pwm1 1 PWM_MSEC(20)>;
			label = "Green LED";
		};
		led1: led_1 {
			pwms = <&pwm1 2 PWM_MSEC(20)>;
			label = "Blue LED";
		};
		led2: led_2 {
			pwms = <&pwm1 3 PWM_MSEC(20)>;
			label = "Red LED";
		};
	};
};

&gpio0 {
	status = "okay";
};

&uart0 {
	status = "okay";
	current-speed = <115200>;
	pinctrl-0 = <&uart0_rx_default &uart0_tx_default>;
	pinctrl-names = "default";
};

&spi0 {
	status = "okay";

	reg = <0x10014000 0x1000 0x20400000 0xc00000>;
	flash0: flash@0 {
		compatible = "issi,is25lp128", "jedec,spi-nor";
		size = <134217728>;
		label = "FLASH0";
		jedec-id = [96 60 18];
		reg = <0>;
		spi-max-frequency = <133000000>;
	};
};

&spi1 {
	status = "okay";
	pinctrl-0 = <&spi1_cs0_default &spi1_cs2_default &spi1_cs3_default
		     &spi1_mosi_default &spi1_miso_default &spi1_sck_default>;
	pinctrl-names = "default";
};

&spi2 {
	status = "okay";
};

&pwm0 {
	status = "okay";
};

&pwm1 {
	status = "okay";
	pinctrl-0 = <&pwm1_1_default &pwm1_2_default &pwm1_3_default>;
	pinctrl-names = "default";
};

&pwm2 {
	status = "okay";
	pinctrl-0 = <&pwm2_1_default &pwm2_2_default &pwm2_3_default>;
	pinctrl-names = "default";
};
