3b5a401594
* **New Features** * Added native display support for ST7796, ILI9341, and ST7789 panels across supported boards. * Added FT5x06 and FT6x36 touchscreen support. * Generic PWM driver * ESP32 PWM driver * Generic RGB LED driver * RGB PWM LED driver * RGB GPIO LED driver * Implementation of RGB LED for various boards * **Improvements** * Updated board hardware descriptions to use explicit display/touch/backlight device-tree bindings and disabled deprecated HAL usage. * Improved display and touch-driver cleanup to prevent stale resources and improve shutdown reliability. * Pinned esp-hosted library to a fixed version * **Deletions** * Obsolete placeholder display * Legacy ILI9488 support. * ESP32-specific LEDC PWM implementation
39 lines
878 B
C
39 lines
878 B
C
// SPDX-License-Identifier: Apache-2.0
|
|
#pragma once
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <stdint.h>
|
|
#include <stdbool.h>
|
|
|
|
#include <tactility/device.h>
|
|
#include <tactility/drivers/gpio.h>
|
|
|
|
struct St7796Config {
|
|
uint16_t horizontal_resolution;
|
|
uint16_t vertical_resolution;
|
|
int32_t gap_x;
|
|
int32_t gap_y;
|
|
bool swap_xy;
|
|
bool mirror_x;
|
|
bool mirror_y;
|
|
bool invert_color;
|
|
bool bgr_order;
|
|
uint32_t bits_per_pixel;
|
|
uint32_t pixel_clock_hz;
|
|
uint8_t transaction_queue_depth;
|
|
// Gamma curve preset index [0,3], sent via the MIPI DCS GAMSET (0x26) command at bring-up.
|
|
uint8_t gamma_curve;
|
|
struct GpioPinSpec pin_dc;
|
|
struct GpioPinSpec pin_reset;
|
|
bool reset_active_high;
|
|
// Optional reference to this display's backlight device, NULL if none.
|
|
struct Device* backlight;
|
|
};
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|