d896657bf9
Device migrations: - cyd-4848S040c - guition-jc1060p470ciwy - guition-jc2432w328c - guition-jc3248w535c (known issue with display and touch, Shadowtrance will look into it) - guition-jc8048w550c - heltec-wifi-lora-32-v3 - lilygo-tdeck-max (excluding graphics) - lilygo-tdisplay - lilygo-tdisplay-s3 - lilygo-tdongle-s3 - lilygo-tlora-pager Driver migrations: - Implemented haptic driver interface in kernel - AXS15231b - BQ25896 - BQ27220 - CST328 - CST6xx - DRV2605 - JD9165 - Custom LilyGO driver for T-Lora Pager - SSD1306 - ST7701 - ST7735 - SY6970 - TCA8418 Fixes/improvements: - Boot app: support for multiple power devices, improved UI - lvgl_devices and related code: fixes for mapping - Support for arrays in dts parser
36 lines
1.1 KiB
C++
36 lines
1.1 KiB
C++
#include "devices/Display.h"
|
|
|
|
#include <Tactility/hal/Configuration.h>
|
|
#include <tactility/check.h>
|
|
#include <tactility/device.h>
|
|
#include <tactility/drivers/esp32_spi.h>
|
|
|
|
using namespace tt::hal;
|
|
|
|
static bool initBoot() {
|
|
// The LoRa and SD chip-selects share the EPD's SPI bus but aren't wired up
|
|
// yet. spi0's start() already drives every cs-gpio high during kernel init;
|
|
// re-assert deselection before the EPD driver first transacts, as a cheap
|
|
// guard against either chip latching stray EPD command bytes (same pattern
|
|
// as the esp32_sdspi mount path).
|
|
auto* spi0 = device_find_by_name("spi0");
|
|
check(spi0 != nullptr);
|
|
esp32_spi_deselect_all_cs(spi0);
|
|
|
|
return true;
|
|
}
|
|
|
|
static DeviceVector createDevices() {
|
|
// Touch, keyboard and battery/charging are kernel drivers (cst66xx, tca8418, sy6970,
|
|
// bq27220 - see the .dts), started independently of this HAL layer. Only the EPD
|
|
// display remains on the deprecated HAL.
|
|
return DeviceVector {
|
|
createDisplay()
|
|
};
|
|
}
|
|
|
|
extern const Configuration hardwareConfiguration = {
|
|
.initBoot = initBoot,
|
|
.createDevices = createDevices
|
|
};
|