Frame rate: full-width PSRAM draw band (6 bands a frame instead of 14 on the T-Deck), the still aurora drawn once and copied, LVGL at -O2 with its blend and label loops in IRAM (scripts/build/perf_lvgl.py, 1 KB more loop stack), circle and gradient caches, newlib memcpy. Rolled out to the M9, Attaky, RAK, Wio, CrowPanel and V4-R8; the Pager gets the band only, the V4 the caches only. Frame benchmark tour (DOC_PERF_BENCH) for measuring it. Fixes: hop counts read from the packed path length (#621); Arabic shaping rows patched in LVGL (patch_lvgl_arabic.py), Arabic 101 shift layer, kaf, symbols, text sent as standard letters (#582); info popup colour runs that never wrap (#602); keypad nav reaches the chat header (#623); the browser opens the changelog (#622, gen-changelog.py at every site deploy); the Theme background colour picker no longer edits the accent; flasher entries for P4 units with factory ESP-AT Wi-Fi chips (#612, #619). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6 lines
360 B
C
6 lines
360 B
C
// Force-included into the LVGL sources named by custom_lvgl_iram (scripts/build/perf_lvgl.py):
|
|
// the functions LVGL marks LV_ATTRIBUTE_FAST_MEM there are placed in IRAM, like IRAM_ATTR.
|
|
// A header rather than a -D, so the attribute's brackets and quotes never meet a shell.
|
|
#pragma once
|
|
#define LV_ATTRIBUTE_FAST_MEM __attribute__((section(".iram1.lvgl")))
|