mirror of
https://github.com/ByteWelder/Tactility.git
synced 2026-10-20 20:35:08 +00:00
175 lines
4.6 KiB
Plaintext
175 lines
4.6 KiB
Plaintext
/dts-v1/;
|
|
#include <tactility/bindings/root.h>
|
|
#include <tactility/bindings/esp32_ble.h>
|
|
#include <tactility/bindings/esp32_gpio.h>
|
|
#include <tactility/bindings/esp32_i2c_master.h>
|
|
#include <tactility/bindings/esp32_i2s.h>
|
|
#include <tactility/bindings/esp32_sdmmc.h>
|
|
#include <tactility/bindings/esp32_wifi.h>
|
|
#include <tactility/bindings/esp32_pwm_ledc.h>
|
|
#include <tactility/bindings/pwm_backlight.h>
|
|
#include <tactility/bindings/gpio_hog.h>
|
|
|
|
#include <bindings/st7701_dsi.h>
|
|
#include <bindings/gt911.h>
|
|
#include <bindings/es8311.h>
|
|
#include <bindings/es7243e.h>
|
|
|
|
/ {
|
|
compatible = "root";
|
|
model = "Guition JC4880P443C-I-W";
|
|
|
|
wifi0 {
|
|
compatible = "espressif,esp32-wifi";
|
|
};
|
|
|
|
ble0 {
|
|
compatible = "espressif,esp32-ble";
|
|
};
|
|
|
|
gpio0 {
|
|
compatible = "espressif,esp32-gpio";
|
|
gpio-count = <55>;
|
|
};
|
|
|
|
// Speaker and microphone (ES8311)
|
|
i2s0 {
|
|
compatible = "espressif,esp32-i2s";
|
|
port = <I2S_NUM_0>;
|
|
pin-bclk = <&gpio0 12 GPIO_FLAG_NONE>;
|
|
pin-ws = <&gpio0 10 GPIO_FLAG_NONE>;
|
|
pin-data-out = <&gpio0 9 GPIO_FLAG_NONE>;
|
|
pin-data-in = <&gpio0 48 GPIO_FLAG_NONE>;
|
|
pin-mclk = <&gpio0 13 GPIO_FLAG_NONE>;
|
|
};
|
|
|
|
i2c_internal: i2c0 {
|
|
compatible = "espressif,esp32-i2c-master";
|
|
port = <I2C_NUM_0>;
|
|
clock-frequency = <400000>;
|
|
pin-sda = <&gpio0 7 GPIO_FLAG_NONE>;
|
|
pin-scl = <&gpio0 8 GPIO_FLAG_NONE>;
|
|
|
|
touch0: gt911@5D {
|
|
compatible = "goodix,gt911";
|
|
reg = <0x5D>;
|
|
x-max = <480>;
|
|
y-max = <800>;
|
|
status = "okay";
|
|
};
|
|
|
|
es8311: es8311@18 {
|
|
compatible = "everest,es8311";
|
|
reg = <0x18>;
|
|
i2s = <&i2s0>;
|
|
};
|
|
es7243e: es7243e@14 {
|
|
compatible = "everest,es7243e";
|
|
reg = <0x14>;
|
|
i2s = <&i2s0>;
|
|
};
|
|
};
|
|
|
|
sdcard0: sdcard0 {
|
|
compatible = "espressif,esp32-sdmmc";
|
|
slot = <0>;
|
|
bus-width = <4>;
|
|
pin-clk = <&gpio0 43 GPIO_FLAG_NONE>;
|
|
pin-cmd = <&gpio0 44 GPIO_FLAG_NONE>;
|
|
pin-d0 = <&gpio0 39 GPIO_FLAG_NONE>;
|
|
pin-d1 = <&gpio0 40 GPIO_FLAG_NONE>;
|
|
pin-d2 = <&gpio0 41 GPIO_FLAG_NONE>;
|
|
pin-d3 = <&gpio0 42 GPIO_FLAG_NONE>;
|
|
on-chip-ldo-chan = <4>;
|
|
};
|
|
|
|
display_backlight_pwm {
|
|
compatible = "espressif,esp32-pwm-ledc";
|
|
pin = <&gpio0 23 GPIO_FLAG_NONE>;
|
|
period-ns = <200000>;
|
|
ledc-timer = <0>;
|
|
ledc-channel = <0>;
|
|
status = "okay";
|
|
};
|
|
|
|
display_backlight {
|
|
compatible = "pwm-backlight";
|
|
pwm = <&display_backlight_pwm>;
|
|
status = "okay";
|
|
};
|
|
|
|
// Speaker PA enable (GPIO11 active high)
|
|
pa_enable {
|
|
compatible = "gpio-hog";
|
|
pin = <&gpio0 11 GPIO_FLAG_NONE>;
|
|
mode = <GPIO_HOG_MODE_OUTPUT_HIGH>;
|
|
status = "okay";
|
|
};
|
|
|
|
display0: st7701-dsi@0 {
|
|
compatible = "sitronix,st7701-dsi";
|
|
horizontal-resolution = <480>;
|
|
vertical-resolution = <800>;
|
|
bits-per-pixel = <16>;
|
|
pin-reset = <&gpio0 5 GPIO_FLAG_NONE>;
|
|
ldo-channel = <3>;
|
|
ldo-voltage-mv = <2500>;
|
|
dsi-bus-id = <0>;
|
|
num-data-lanes = <2>;
|
|
lane-bit-rate-mbps = <500>;
|
|
dpi-clock-freq-mhz = <34>;
|
|
hsync-pulse-width = <12>;
|
|
hsync-back-porch = <42>;
|
|
hsync-front-porch = <42>;
|
|
vsync-pulse-width = <2>;
|
|
vsync-back-porch = <8>;
|
|
vsync-front-porch = <166>;
|
|
num-fbs = <2>;
|
|
use-dma2d;
|
|
allow-tearing;
|
|
backlight = <&display_backlight>;
|
|
init-sequence = [
|
|
0xFF 0x05 0x00 0x77 0x01 0x00 0x00 0x13
|
|
0xEF 0x01 0x00 0x08
|
|
0xFF 0x05 0x00 0x77 0x01 0x00 0x00 0x10
|
|
0xC0 0x02 0x00 0x63 0x00
|
|
0xC1 0x02 0x00 0x0D 0x02
|
|
0xC2 0x02 0x00 0x10 0x08
|
|
0xCC 0x01 0x00 0x10
|
|
0xB0 0x10 0x00 0x80 0x09 0x53 0x0C 0xD0 0x07 0x0C 0x09 0x09 0x28 0x06 0xD4 0x13 0x69 0x2B 0x71
|
|
0xB1 0x10 0x00 0x80 0x94 0x5A 0x10 0xD3 0x06 0x0A 0x08 0x08 0x25 0x03 0xD3 0x12 0x66 0x6A 0x0D
|
|
0xFF 0x05 0x00 0x77 0x01 0x00 0x00 0x11
|
|
0xB0 0x01 0x00 0x5D
|
|
0xB1 0x01 0x00 0x58
|
|
0xB2 0x01 0x00 0x87
|
|
0xB3 0x01 0x00 0x80
|
|
0xB5 0x01 0x00 0x4E
|
|
0xB7 0x01 0x00 0x85
|
|
0xB8 0x01 0x00 0x21
|
|
0xB9 0x02 0x00 0x10 0x1F
|
|
0xBB 0x01 0x00 0x03
|
|
0xBC 0x01 0x00 0x00
|
|
0xC1 0x01 0x00 0x78
|
|
0xC2 0x01 0x00 0x78
|
|
0xD0 0x01 0x00 0x88
|
|
0xE0 0x03 0x00 0x00 0x3A 0x02
|
|
0xE1 0x0B 0x00 0x04 0xA0 0x00 0xA0 0x05 0xA0 0x00 0xA0 0x00 0x40 0x40
|
|
0xE2 0x0D 0x00 0x30 0x00 0x40 0x40 0x32 0xA0 0x00 0xA0 0x00 0xA0 0x00 0xA0 0x00
|
|
0xE3 0x04 0x00 0x00 0x00 0x33 0x33
|
|
0xE4 0x02 0x00 0x44 0x44
|
|
0xE5 0x10 0x00 0x09 0x2E 0xA0 0xA0 0x0B 0x30 0xA0 0xA0 0x05 0x2A 0xA0 0xA0 0x07 0x2C 0xA0 0xA0
|
|
0xE6 0x04 0x00 0x00 0x00 0x33 0x33
|
|
0xE7 0x02 0x00 0x44 0x44
|
|
0xE8 0x10 0x00 0x08 0x2D 0xA0 0xA0 0x0A 0x2F 0xA0 0xA0 0x04 0x29 0xA0 0xA0 0x06 0x2B 0xA0 0xA0
|
|
0xEB 0x07 0x00 0x00 0x00 0x4E 0x4E 0x00 0x00 0x00
|
|
0xEC 0x02 0x00 0x08 0x01
|
|
0xED 0x10 0x00 0xB0 0x2B 0x98 0xA4 0x56 0x7F 0xFF 0xFF 0xFF 0xFF 0xF7 0x65 0x4A 0x89 0xB2 0x0B
|
|
0xEF 0x06 0x00 0x08 0x08 0x08 0x45 0x3F 0x54
|
|
0xFF 0x05 0x00 0x77 0x01 0x00 0x00 0x00
|
|
0x11 0x01 0x78 0x00
|
|
0x29 0x01 0x14 0x00
|
|
];
|
|
status = "okay";
|
|
};
|
|
};
|