Files
patriandClaude Opus 5.5 6e7206b821 LVGL 9 tuning: CPU 86% -> 53% at full GIF speed (display_gif_embedded)
- render in RGB565_SWAPPED (ST77916 byte order), no swap pass in flush;
  flush swaps only if the display format is plain RGB565 (runtime check,
  the previous #if compared enum values and was always true)
- QSPI clock 50 -> 80 MHz
- LV_ATTRIBUTE_FAST_MEM / FLUSH_READY in IRAM (lv_attr_jc3636w518.h)
- display_gif_embedded: GIF decoded in the display's color format (no alpha)
- tested without gain: LV_GIF_CACHE_DECODE_DATA (unused in 9.6), 120-row buffers

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 01:29:25 +02:00

16 lines
496 B
C

/* LVGL attribute overrides for the JC3636W518 (ESP32-S3), included via LV_ATTRIBUTE_CUSTOM_INCLUDE in lv_conf.h */
#ifndef LV_ATTR_JC3636W518_H
#define LV_ATTR_JC3636W518_H
#if !defined(__ASSEMBLY__)
#include <esp_attr.h>
#endif
/* hot drawing/blending functions in internal RAM instead of flash (via cache) */
#define LV_ATTRIBUTE_FAST_MEM IRAM_ATTR
/* lv_display_flush_ready() is called from the LCD DMA-done interrupt: keep it in IRAM */
#define LV_ATTRIBUTE_FLUSH_READY IRAM_ATTR
#endif