/* * Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd. * * SPDX-License-Identifier: Apache-2.0 */ /dts-v1/; #include #include "esp32c3_rust-pinctrl.dtsi" #include #include / { model = "Espressif ESP32C3-RUST"; compatible = "espressif,esp32c3_rust"; chosen { zephyr,sram = &sram0; zephyr,console = &usb_serial; zephyr,shell-uart = &usb_serial; zephyr,flash = &flash0; zephyr,code-partition = &slot0_partition; }; aliases { led0 = &red_led_0; sw0 = &user_button1; i2c-0 = &i2c0; watchdog0 = &wdt0; led-strip = &led_strip; }; gpio_keys { compatible = "gpio-keys"; user_button1: button_1 { label = "User SW1"; gpios = <&gpio0 9 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; zephyr,code = ; }; }; leds { compatible = "gpio-leds"; red_led_0: led_0 { gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; label = "User LD0"; }; }; }; &spi2 { #address-cells = <1>; #size-cells = <0>; status = "okay"; pinctrl-0 = <&spim2_default>; pinctrl-names = "default"; /* Workaround to support WS2812 driver */ line-idle-low; status = "okay"; led_strip: ws2812@0 { compatible = "worldsemi,ws2812-spi"; /* SPI */ reg = <0>; /* ignored, but necessary for SPI bindings */ spi-max-frequency = <6400000>; /* WS2812 */ chain-length = <1>; /* arbitrary; change at will */ spi-cpha; spi-one-frame = <0xf0>; /* 11110000: 625 ns high and 625 ns low */ spi-zero-frame = <0xc0>; /* 11000000: 312.5 ns high and 937.5 ns low */ color-mapping = ; }; }; &usb_serial { status = "okay"; }; &i2c0 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c0_default>; pinctrl-names = "default"; icm42670@68 { compatible = "invensense,icm42670"; reg = <0x68>; status = "okay"; accel-hz = <800>; accel-fs = <16>; gyro-hz = <800>; gyro-fs = <2000>; }; shtc3@70 { compatible = "sensirion,shtc3", "sensirion,shtcx"; reg = <0x70>; measure-mode = "normal"; clock-stretching; }; }; &trng0 { status = "okay"; }; &gpio0 { status = "okay"; }; &wdt0 { status = "okay"; }; &uart0 { status = "disabled"; }; &flash0 { status = "okay"; partitions { compatible = "fixed-partitions"; #address-cells = <1>; #size-cells = <1>; /* Reserve 60kB for the bootloader */ boot_partition: partition@0 { label = "mcuboot"; reg = <0x00000000 0x0000F000>; read-only; }; /* Reserve 1024kB for the application in slot 0 */ slot0_partition: partition@10000 { label = "image-0"; reg = <0x00010000 0x00100000>; }; /* Reserve 1024kB for the application in slot 1 */ slot1_partition: partition@110000 { label = "image-1"; reg = <0x00110000 0x00100000>; }; /* Reserve 256kB for the scratch partition */ scratch_partition: partition@210000 { label = "image-scratch"; reg = <0x00210000 0x00040000>; }; storage_partition: partition@250000 { label = "storage"; reg = <0x00250000 0x00006000>; }; }; };