fix(esp_lvgl_port): Put RGB vsync callback in IRAM when LCD_RGB_ISR_IRAM_SAFE=y#755
Open
vmsh0 wants to merge 1 commit intoespressif:masterfrom
Open
fix(esp_lvgl_port): Put RGB vsync callback in IRAM when LCD_RGB_ISR_IRAM_SAFE=y#755vmsh0 wants to merge 1 commit intoespressif:masterfrom
vmsh0 wants to merge 1 commit intoespressif:masterfrom
Conversation
Collaborator
Author
|
Aaaah, oops, I did not. Point 2 of that PR was also something I wanted to raise, as moving the callback into IRAM is probably not enough if you then need to call something else. Anyway, I think this can be abandoned as the other one looks much better already. Sorry for the noise! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ESP-BSP Pull Request checklist
Change description
When
LCD_RGB_ISR_IRAM_SAFE=y, RGB panel callbacks must be placed in IRAM, otherwiselvgl_port_add_disp_rgbfails due toesp_lcd_rgb_panel_register_event_callbacksrefusing to accept callbacks outside of IRAM.This patch places the
lvgl_port_flush_rgb_vsync_ready_callbackroutine in IRAM whenLCD_RGB_ISR_IRAM_SAFE=y.Addresses e.g. #515
Note
Medium Risk
Touches ESP32S3 RGB panel ISR callback placement; incorrect attribute/macro handling could break builds or cause runtime issues depending on
CONFIG_LCD_RGB_ISR_IRAM_SAFEand IDF version.Overview
Ensures the ESP32S3 RGB panel
on_vsync/bounce-buffer completion callback (lvgl_port_flush_rgb_vsync_ready_callback) is annotated to run from IRAM whenCONFIG_LCD_RGB_ISR_IRAM_SAFEis enabled, satisfying IDF requirements for ISR-safe RGB callbacks.This introduces a compile-time macro to conditionally apply
IRAM_ATTRto the callback soesp_lcd_rgb_panel_register_event_callbacksaccepts the function under IRAM-safe configurations.Written by Cursor Bugbot for commit 70be509. This will update automatically on new commits. Configure here.