/* * Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd. * * SPDX-License-Identifier: Apache-2.0 */ /dts-v1/; #include "espressif/esp32s3/esp32s3_wroom_n8r8.dtsi" #include "esp32s3_eye-pinctrl.dtsi" #include #include #include #include / { model = "Espressif ESP32S3-EYE PROCPU"; compatible = "espressif,esp32s3"; aliases { i2c-0 = &i2c0; watchdog0 = &wdt0; sw0 = &button0; led0 = &green_led; }; chosen { zephyr,sram = &sram1; zephyr,console = &usb_serial; zephyr,shell-uart = &usb_serial; zephyr,flash = &flash0; zephyr,code-partition = &slot0_partition; zephyr,bt-hci = &esp32_bt_hci; zephyr,display = &st7789v; zephyr,camera = &lcd_cam; }; buttons { compatible = "gpio-keys"; button0: button_0 { gpios = <&gpio0 0 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>; label = "BOOT Button"; zephyr,code = ; }; }; adc-keys { compatible = "adc-keys"; io-channels = <&adc0 0>; keyup-threshold-mv = <3300>; sample-period-ms = <50>; menu_key { press-thresholds-mv = <2800>; zephyr,code = ; }; play_key { press-thresholds-mv = <1920>; zephyr,code = ; }; up_key { press-thresholds-mv = <350>; zephyr,code = ; }; down_key { press-thresholds-mv = <800>; zephyr,code = ; }; }; leds { compatible = "gpio-leds"; green_led: led0 { gpios = <&gpio0 3 GPIO_OPEN_DRAIN>; label = "Power LED"; }; }; mipi_dbi { compatible = "zephyr,mipi-dbi-spi"; dc-gpios = <&gpio1 11 GPIO_ACTIVE_HIGH>; spi-dev = <&spi3>; write-only; #address-cells = <1>; #size-cells = <0>; st7789v: st7789v@0 { compatible = "sitronix,st7789v"; mipi-max-frequency = <20000000>; reg = <0>; width = <240>; height = <240>; x-offset = <0>; y-offset = <0>; vcom = <0x19>; gctrl = <0x35>; vrhs = <0x12>; vdvs = <0x20>; mdac = <0x00>; gamma = <0x01>; colmod = <0x55>; lcm = <0x2c>; porch-param = [0c 0c 00 33 33]; cmd2en-param = [5a 69 02 01]; pwctrl1-param = [a4 a1]; pvgam-param = [D0 04 0D 11 13 2B 3F 54 4C 18 0D 0B 1F 23]; nvgam-param = [D0 04 0C 11 13 2C 3F 44 51 2F 1F 1F 20 23]; ram-param = [00 F0]; rgb-param = [CD 08 14]; mipi-mode = "MIPI_DBI_MODE_SPI_4WIRE"; }; }; }; &dma { status = "okay"; }; &i2c1 { status = "okay"; clock-frequency = ; pinctrl-0 = <&i2c1_default>; pinctrl-names = "default"; ov2640: ov2640@30 { compatible = "ovti,ov2640"; reg = <0x30>; status = "okay"; clock-rate-control = <0x80>; port { ov2640_ep_out: endpoint { remote-endpoint = <&dvp_ep_in>; }; }; }; }; &lcd_cam { status = "okay"; cam-clk = < 10000000 >; pinctrl-0 = <&lcd_cam_default>; pinctrl-names = "default"; source = <&ov2640>; dmas = <&dma 2>; dma-names = "rx"; port { dvp_ep_in: endpoint { remote-endpoint = <&ov2640_ep_out>; }; }; }; &usb_serial { status = "okay"; }; &timer0 { status = "okay"; }; &timer1 { status = "okay"; }; &gpio0 { status = "okay"; }; &gpio1 { status = "okay"; }; &adc0 { status = "okay"; #address-cells = <1>; #size-cells = <0>; channel@0 { reg = <0>; zephyr,gain = "ADC_GAIN_1_4"; zephyr,reference = "ADC_REF_INTERNAL"; zephyr,acquisition-time = ; zephyr,resolution = <12>; }; }; &spi3 { #address-cells = <1>; #size-cells = <0>; status = "okay"; pinctrl-0 = <&spim3_default>; pinctrl-names = "default"; }; &wdt0 { status = "okay"; }; &trng0 { status = "okay"; }; &esp32_bt_hci { status = "okay"; };