blob: 3bd5555088985fc67f6edcb5fee74a6d1795fc8f [file] [log] [blame]
/*
* Copyright (c) 2019 Jan Van Winkel (jan.van_winkel@dxplore.eu)
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <posix/posix.dtsi>
#include <zephyr/dt-bindings/i2c/i2c.h>
#include <zephyr/dt-bindings/gpio/gpio.h>
/ {
model = "Native POSIX Board";
compatible = "zephyr,posix";
chosen {
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
zephyr,uart-mcumgr = &uart0;
zephyr,flash = &flash0;
zephyr,entropy = &rng;
zephyr,flash-controller = &flashcontroller0;
zephyr,ec-host-interface = &hcp;
zephyr,display = &sdl_dc;
zephyr,canbus = &can_loopback0;
zephyr,keyboard-scan = &sdl_kscan;
};
aliases {
eeprom-0 = &eeprom0;
i2c-0 = &i2c0;
spi-0 = &spi0;
led0 = &led0;
kscan0 = &sdl_kscan;
};
leds {
compatible = "gpio-leds";
led0: led_0 {
gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>;
label = "Green LED";
};
};
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu0: cpu@0 {
compatible = "zephyr,native-posix-cpu";
reg = <0>;
};
};
flashcontroller0: flash-controller@0 {
compatible = "zephyr,sim-flash";
reg = <0x00000000 DT_SIZE_K(2048)>;
#address-cells = <1>;
#size-cells = <1>;
erase-value = <0xff>;
flash0: flash@0 {
status = "okay";
compatible = "soc-nv-flash";
erase-block-size = <4096>;
write-block-size = <1>;
reg = <0x00000000 DT_SIZE_K(2048)>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x00000000 0x0000C000>;
};
slot0_partition: partition@c000 {
label = "image-0";
reg = <0x0000C000 0x00069000>;
};
slot1_partition: partition@75000 {
label = "image-1";
reg = <0x00075000 0x00069000>;
};
scratch_partition: partition@de000 {
label = "image-scratch";
reg = <0x000de000 0x0001e000>;
};
storage_partition: partition@fc000 {
label = "storage";
reg = <0x000fc000 0x00004000>;
};
};
};
};
eeprom0: eeprom {
status = "okay";
compatible = "zephyr,sim-eeprom";
size = <DT_SIZE_K(32)>;
};
i2c0: i2c@100 {
status = "okay";
compatible = "zephyr,i2c-emul-controller";
clock-frequency = <I2C_BITRATE_STANDARD>;
#address-cells = <1>;
#size-cells = <0>;
reg = <0x100 4>;
};
spi0: spi@200 {
status = "okay";
compatible = "zephyr,spi-emul-controller";
clock-frequency = <50000000>;
#address-cells = <1>;
#size-cells = <0>;
reg = <0x200 4>;
};
espi0: espi@300 {
status = "okay";
compatible = "zephyr,espi-emul-controller";
reg = <0x300 4>;
#address-cells = <1>;
#size-cells = <0>;
};
uart0: uart {
status = "okay";
compatible = "zephyr,native-posix-uart";
/* Dummy current-speed entry to comply with serial
* DTS binding
*/
current-speed = <0>;
};
uart1: uart_1 {
status = "okay";
compatible = "zephyr,native-posix-uart";
/* Dummy current-speed entry to comply with serial
* DTS binding
*/
current-speed = <0>;
};
rng: rng {
status = "okay";
compatible = "zephyr,native-posix-rng";
};
counter0: counter {
status = "okay";
compatible = "zephyr,native-posix-counter";
};
hcp: ec-host-cmd-periph {
status = "okay";
compatible = "zephyr,sim-ec-host-cmd-periph";
};
gpio0: gpio@800 {
status = "okay";
compatible = "zephyr,gpio-emul";
reg = <0x800 0x4>;
rising-edge;
falling-edge;
high-level;
low-level;
gpio-controller;
#gpio-cells = <2>;
};
zephyr_udc0: udc0 {
compatible = "zephyr,native-posix-udc";
};
sdl_dc: sdl_dc {
compatible = "zephyr,sdl-dc";
height = <240>;
width = <320>;
};
sdl_kscan: sdl_kscan {
compatible = "zephyr,sdl-kscan";
};
can_loopback0: can_loopback0 {
status = "disabled";
compatible = "zephyr,can-loopback";
sjw = <1>;
sample-point = <875>;
bus-speed = <125000>;
};
can0: can {
status = "disabled";
compatible = "zephyr,native-posix-linux-can";
/* adjust zcan0 to desired host interface or create an alternative
* name, e.g.: sudo ip link property add dev vcan0 altname zcan0
*/
host-interface = "zcan0";
sjw = <1>;
sample-point = <875>;
bus-speed = <125000>;
};
};