/*
 * Copyright (c) 2018 Nordic Semiconductor ASA
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/ {
	model = "Nordic PCA10090 Dev Kit";
	compatible = "nordic,pca10090-dk", "nordic,nrf9160-sica",
		     "nordic,nrf9160";

	chosen {
		zephyr,console = &uart0;
		zephyr,shell-uart = &uart0;
		zephyr,uart-mcumgr = &uart0;
	};

	leds {
		compatible = "gpio-leds";
		led0: led_0 {
			gpios = <&gpio0 2 GPIO_INT_ACTIVE_HIGH>;
			label = "Green LED 0";
		};
		led1: led_1 {
			gpios = <&gpio0 3 GPIO_INT_ACTIVE_HIGH>;
			label = "Green LED 1";
		};
		led2: led_2 {
			gpios = <&gpio0 4 GPIO_INT_ACTIVE_HIGH>;
			label = "Green LED 2";
		};
		led3: led_3 {
			gpios = <&gpio0 5 GPIO_INT_ACTIVE_HIGH>;
			label = "Green LED 3";
		};
	};

	buttons {
		compatible = "gpio-keys";
		button0: button_0 {
			gpios = <&gpio0 8 GPIO_PUD_PULL_UP>;
			label = "Switch 1";
		};
		button1: button_1 {
			gpios = <&gpio0 9 GPIO_PUD_PULL_UP>;
			label = "Switch 2";
		};
		button2: button_2 {
			gpios = <&gpio0 6 GPIO_PUD_PULL_UP>;
			label = "Push button 1";
		};
		button3: button_3 {
			gpios = <&gpio0 7 GPIO_PUD_PULL_UP>;
			label = "Push button 2";
		};
	};

	/* These aliases are provided for compatibility with samples */
	aliases {
		led0 = &led0;
		led1 = &led1;
		led2 = &led2;
		led3 = &led3;
		sw0 = &button2;
		sw1 = &button3;
		sw2 = &button0;
		sw3 = &button1;
	};
};

&adc {
	status = "okay";
};

&gpiote {
	status = "okay";
};

&gpio0 {
	status = "okay";
};

&uart0 {
	status = "okay";
	current-speed = <115200>;
	tx-pin = <29>;
	rx-pin = <28>;
	rts-pin = <27>;
	cts-pin = <26>;
};

&uart1 {
	status = "okay";
	current-speed = <115200>;
	tx-pin = <1>;
	rx-pin = <0>;
	rts-pin = <14>;
	cts-pin = <15>;
};

&uart2 {
	tx-pin = <24>;
	rx-pin = <23>;
};

&i2c2 {
	status = "okay";
	sda-pin = <30>;
	scl-pin = <31>;
};

&pwm0 {
	status = "okay";
	ch0-pin = <2>;
};

&spi3 {
	status = "okay";
	sck-pin = <19>;
	mosi-pin = <18>;
	miso-pin = <17>;
};

&timer0 {
	status = "okay";
};

&timer1 {
	status = "okay";
};

&timer2 {
	status = "okay";
};

&flash0 {
	/*
	 * For more information, see:
	 * http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions
	 */
	partitions {
		compatible = "fixed-partitions";
		#address-cells = <1>;
		#size-cells = <1>;

		boot_partition: partition@0 {
			label = "mcuboot";
			reg = <0x00000000 0x10000>;
		};
		slot0_partition: partition@10000 {
			label = "image-0";
		};
		slot0_ns_partition: partition@40000 {
			label = "image-0-nonsecure";
		};
		slot1_partition: partition@80000 {
			label = "image-1";
		};
		slot1_ns_partition: partition@b0000 {
			label = "image-1-nonsecure";
		};
		scratch_partition: partition@f0000 {
			label = "image-scratch";
			reg = <0x000f0000 0xa000>;
		};
		storage_partition: partition@fa000 {
			label = "storage";
			reg = <0x000fa000 0x00006000>;
		};
	};
};

/ {
	/* SRAM allocated and used by the BSD library */
	sram0_bsd: memory@20010000 {
		compatible = "mmio-sram";
	};

	/* SRAM allocated to the Non-Secure image */
	sram0_ns: memory@20020000 {
		compatible = "mmio-sram";
	};
};

/* Include partition configuration file */
#include "nrf9160_pca10090_partition_conf.dts"
