Linux Audio

Check our new training course

Loading...
/*
 * 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/adc/adc.h>
#include <zephyr/dt-bindings/i2c/i2c.h>
#include <zephyr/dt-bindings/gpio/gpio.h>

/ {
	model = "Native Sim 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,display = &sdl_dc;
		zephyr,canbus = &can_loopback0;
		zephyr,code-partition = &slot0_partition;
	};

	aliases {
		eeprom-0 = &eeprom0;
		i2c-0 = &i2c0;
		spi-0 = &spi0;
		led0 = &led0;
		rtc = &rtc;
	};

	leds {
		compatible = "gpio-leds";
		led0: led_0 {
			gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>;
			label = "Green LED";
		};
	};

	lvgl_pointer {
		compatible = "zephyr,lvgl-pointer-input";
		input = <&input_sdl_touch>;
	};

	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";
	};

	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>;
	};

	input_sdl_touch: input-sdl-touch {
		compatible = "zephyr,input-sdl-touch";
	};

	can_loopback0: can_loopback0 {
		status = "okay";
		compatible = "zephyr,can-loopback";
		sample-point = <875>;
		bus-speed = <125000>;
	};

	can0: can {
		status = "disabled";
		compatible = "zephyr,native-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";
		sample-point = <875>;
		bus-speed = <125000>;
	};

	rtc: rtc {
		status = "okay";
		compatible = "zephyr,rtc-emul";
		alarms-count = <2>;
	};

	adc0: adc {
		compatible = "zephyr,adc-emul";
		nchannels = <2>;
		#io-channel-cells = <1>;
		status = "okay";
	};

	dma: dma {
		compatible = "zephyr,dma-emul";
		#dma-cells = <1>;
		stack-size = <4096>;
	};
};