morris
fb1b53c7c5
refactor(gdma): channel allocation can return both direction within the same call
2026-01-04 15:39:38 +08:00
morris
f24c115f4b
refactor(lcd): unify the color conversion API in RGB and DSI driver
...
Also adopt the FourCC standard to describe color format.
See also
https://developer.espressif.com/blog/2025/04/esp-fourcc-introduction/
2025-11-06 15:02:26 +08:00
Kevin (Lao Kaiyao)
ce65a06cc2
Merge branch 'refactor/parlio_rx_use_dma_link' into 'master'
...
refactor(parlio_rx): use gdma_link for better gdma link management
Closes IDF-13369, IDF-13627, and IDFGH-16449
See merge request espressif/esp-idf!40743
2025-11-04 12:04:45 +08:00
laokaiyao
ff1c14b1a3
refactor(parlio_rx): refactor to support unaligned user payload buffer
...
Closes https://github.com/espressif/esp-idf/issues/17581
2025-10-30 16:12:34 +08:00
laokaiyao
49284c3f8d
feat(gdma_link): support to select final node link type
2025-10-30 16:06:12 +08:00
Chen Jichang
74b18dac5c
feat(rgb_lcd): allow users to manage the lifecycle of the frame buffer
2025-10-29 17:39:18 +08:00
morris
d0c49385e1
fix(lcd): refactor get_frame_buffer functions to fix Coverity warnings
...
Refactored esp_lcd_rgb_panel_get_frame_buffer and
esp_lcd_dpi_panel_get_frame_buffer
to follow the standard printf/vprintf pattern:
- Created static _v helper functions that take va_list as parameter
- Moved parameter validation to the public API functions
- Public functions now handle va_start/va_end and call the helper
2025-10-27 10:10:57 +08:00
morris
d4d8b09ced
feat(hal):graudate the LCD hal driver into a new component
...
- Introduced new HAL components for LCD and MIPI DSI, including:
- `lcd_hal.c` and `lcd_hal.h` for LCD hardware abstraction layer.
- `mipi_dsi_hal.c` and `mipi_dsi_hal.h` for MIPI DSI hardware
abstraction layer.
- Peripheral connection definitions in `lcd_periph.c` and
`lcd_periph.h`.
- Added necessary types and utility functions in `lcd_types.h` and
`mipi_dsi_types.h`.
- Updated CMakeLists to include the new HAL components in the build
system.
- Removed legacy references to LCD and MIPI DSI in the HAL and SOC
CMakeLists.
2025-10-22 17:00:18 +08:00
Chen Jichang
5868098168
feat(lcd): re-support i80 lcd and support underrun inerrupt on p4 rev 3.0
2025-10-11 14:32:09 +08:00
Chen Jichang
ddef1d3d52
refactor(gdma): move buffer aligment to buffer mount config
2025-09-26 16:42:33 +08:00
morris
90a3b66370
fix(lcd): uninitialized va_list
2025-08-20 21:44:47 +08:00
morris
b137fe0227
doc(lcd): explain the DPHY power supply
2025-08-12 16:15:59 +08:00
morris
414dba5009
refactor(lcd)!: remove deprecated types
2025-08-05 15:09:40 +08:00
morris
8b41a42372
refactor(lcd)!: use gpio_num_t to define gpio numbers used by LCD driver
2025-08-05 11:51:09 +08:00
morris
e0ddcb8013
fix(lcd): reserve the GPIOs used by RGB LCD
...
and disconnect the LCD signals when the dirver is uninstalled.
2025-07-23 18:15:54 +08:00
gaoxu
b7d65d94c3
feat(lcd_cam): add lc_dma_int value atomic protect for lcd and cam
2025-06-23 10:58:38 +08:00
wuzhenghui
65b7e70564
feat(driver): support acquire/release clock source dependency for all drivers
2025-05-27 21:21:38 +08:00
Chen Jichang
fe1091c2ff
fix(lcd): only call esp_pm APIs when CONFIG_PM_ENABLE is enabled
2025-05-22 17:38:58 +08:00
morris
15e16599ae
refactor(drivers): refactor the iram-safe option of the gdma peripherals
...
Closes https://github.com/espressif/esp-idf/issues/15771
2025-04-15 11:37:18 +08:00
Chen Jichang
ff1fd80198
fix(drivers): use CPU_MAX lock in dirvers use axi dma to access psram
2025-03-12 17:38:44 +08:00
morris
95fe253065
feat(gdma): allow bypass the alignment check in the link driver
...
Closes https://github.com/espressif/esp-idf/issues/15228
2025-02-27 15:18:06 +08:00
morris
2c6f22c12b
fix(rgb_lcd): drift issue caused by restart
...
Closes https://github.com/espressif/esp-idf/issues/15013
2025-02-11 16:00:42 +08:00
morris
cfca6c606e
fix(dma): also consider buffer alignment when calculating the DMA nodes
...
Closes https://github.com/espressif/esp-idf/issues/15228
2025-02-07 12:34:42 +08:00
morris
d39388fe4f
feat(lcd): increase the upper limit of pclk frequency for RGB LCD
2024-12-23 22:01:34 +08:00
morris
0ed4c19c5e
feat(lcd): support color conversion for mipi dsi driver
2024-11-07 17:02:54 +08:00
morris
efcb91b47e
feat(lcd): support rgb lcd driver for esp32p4
2024-10-22 17:18:05 +08:00
morris
dd82222dd9
feat(rgb_lcd): use gdma_link driver
2024-10-11 18:38:12 +08:00
morris
611fb654ce
refactor(lcd): clean up GPIO initialization
2024-10-10 16:01:05 +08:00
wuzhenghui
13e42707a0
feat(esp_hw_support): add clk tree source gate management api
2024-09-11 10:53:01 +08:00
morris
23c41fc772
feat(lcd): support i80 lcd driver on esp32p4
2024-08-20 18:47:22 +08:00
morris
69ef3b6a34
change(rgb_lcd): set DMA transfer burst size
2024-05-24 22:43:55 +08:00
morris
4b67df323d
feat(mipi_dsi): round to boundary when draw pixel
2024-05-08 14:08:19 +08:00
morris
c0289ee6eb
fix(drivers): fix typos found by codespell
...
codespell components/esp_driver*
2024-03-28 10:01:27 +08:00
Markus Ebner
c755a62329
fix(esp_lcd): Flush rgb lcd PSRAM framebuffers after allocation
...
Flush PSRAM framebuffers after allocation to avoid visual corruption.
Merges https://github.com/espressif/esp-idf/pull/13294
Closes https://github.com/espressif/esp-idf/issues/13293
2024-03-01 18:05:22 +08:00
Hello1024
77029676d1
fix(rgb_lcd): remove validation of pins for LCD output
...
There are a bunch of cases you might want some pins not exposed.
Eg.
* Reading say 8 bit data and outputting the top 5 bits, discarding the rest by not mapping those data pins to output pins
* Not using hsync/vsync because sync data is embedded within the data bits for more timing flexibility (eg. interlacing).
* Using the LCD module as a high speed parallel data output bus, with no need for sync/control pins.
Removing this validation makes these cases work.
Merges https://github.com/espressif/esp-idf/pull/13103
2024-02-05 10:00:35 +08:00
morris
b10dec96c5
fix(rgb_lcd): relax the check for the data line GPIO
...
so we allow to leave some RGB data line unconnected by set the GPIO to -1
2024-01-30 18:29:13 +08:00
Brian Whitman
ff840b645d
fix(rgb_lcd): don't assume 16 bit width on panels for restart logic
...
Merges https://github.com/espressif/esp-idf/pull/13020
2024-01-30 18:29:13 +08:00
morris
ad84b61e49
change(esp_lcd): rearrange the esp_lcd folder by types
2024-01-16 17:40:27 +08:00