Skip to content

DotClockFramebuffer: define the bounce_rows range where the constructor can see it - #44

Merged
bdbarnett merged 1 commit into
mainfrom
fix/bounce-rows-outside-guard
Oct 5, 2026
Merged

bdbarnett merged 1 commit into
mainfrom
fix/bounce-rows-outside-guard

Conversation

@bdbarnett

Copy link
Copy Markdown
Contributor

#42 defined DCFB_BOUNCE_ROWS_MAX/_MIN inside the defined(ESP_PLATFORM) && SOC_LCD_RGB_SUPPORTED block, but the constructor that checks bounce_rows= against them sits outside it. The esp32 port compiles user C modules a second time in the executable's own target (micropython.elf), without ESP_PLATFORM, and in that compile the block is empty. So an esp32 build that carries displayif fails with 'DCFB_BOUNCE_ROWS_MAX' undeclared.

Found building ESP32_GENERIC_P4 C6_WIFI for the micropython-pydevices reorg. A CMake configure of the old way (the panel's own board dir) compiles mod_dotclockframebuffer.c in the executable without ESP_PLATFORM too, so this isn't the new build's doing.

The fix moves the two constants above the guard. Proved: the same P4 build, with this branch as its displayif, builds to a firmware.bin (2.9 MB image). Nothing else changes.

…ructor can see it

#42 defined DCFB_BOUNCE_ROWS_MAX/MIN inside the
'defined(ESP_PLATFORM) && SOC_LCD_RGB_SUPPORTED' block, but the
constructor that checks bounce_rows= against them is outside it. The esp32
port compiles user C modules a second time in the executable's own target,
without ESP_PLATFORM, and there the block is empty: every esp32 build that
carries displayif fails with 'DCFB_BOUNCE_ROWS_MAX undeclared'. Found
building ESP32_GENERIC_P4 for the micropython-pydevices reorg; the old
board-dir build configures the file the same way.
@bdbarnett
bdbarnett merged commit 370dad6 into main Oct 5, 2026
4 of 6 checks passed
@bdbarnett
bdbarnett deleted the fix/bounce-rows-outside-guard branch October 5, 2026 20:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant