Commit Graph

207 Commits

Author SHA1 Message Date
Liu Zhong Wei
1d8668c31f feat(esp_lcd): add user data and init cmd 2023-09-02 11:47:39 +08:00
Armando (Dou Yiwen)
d4d6241db0 Merge branch 'feature/esp32p4_build_test' into 'master'
ci: enable ci build stage on esp32p4

Closes IDF-7524 and IDF-7525

See merge request espressif/esp-idf!25343
2023-08-25 13:35:20 +08:00
Liu Zhong Wei
20ebcf76fd esp_lcd: spi support quad mode 2023-08-25 12:43:20 +08:00
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
Cao Sen Miao
b6cbeeae01 feat(lcd): Add new version LCD implementation to adapt new I2C APIs 2023-08-10 11:55:54 +08:00
morris
aacd7d84d9 fix(i80_lcd): reset cs gpio on exit 2023-08-07 03:15:21 +00:00
morris
57879e772d feat(gdma): support channel allocator on esp32p4
There's two GDMA groups on ESP32P4, one is connected to AHB bus,
and another one is connected AXI bus.
We now have two seperate APIs for allocating DMA channels,
depends on the bus type.
2023-07-19 18:18:07 +08:00
morris
84a680b057 Merge branch 'origin/feature/esp_lcd_panel_init_result_check' into 'master'
fix(esp_lcd): Check the result of each esp_lcd_panel_io_tx_param/esp_lcd_panel_io_tx_color call

Closes IDFGH-10494

See merge request espressif/esp-idf!24604
2023-07-13 15:40:54 +08:00
Planck (Lu Zeyu)
c190beb4d9 bugfix(esp_lcd): propagate the errors in the IO link layer
Closes https://github.com/espressif/esp-idf/issues/11741
Check the result of each esp_lcd_panel_io_tx_param/esp_lcd_panel_io_tx_color call
Add runner and modify test rules
Update .build-test-rules.yml
2023-07-13 10:23:05 +08:00
Armando
ea05ae6af2 feat(esp32p4): added hal support 2023-07-10 16:11:47 +08:00
morris
b72df43a3f refactor(esp_lcd): control hal function placement in the esp_lcd component
because G1 component can't rely on G2 component, thus  we shouldn't use the esp_lcd's Kconfig in the hal's linker.lf
2023-07-05 22:54:01 +08:00
morris
f0c07f82b5 fix(test): check call graph for hal component 2023-07-05 09:09:01 +08:00
morris
35d0835508 rgb_lcd: restart when dma eof interrupt is delayed 2023-06-19 13:22:46 +08:00
morris
771883395b esp_lcd: trim the build of test apps 2023-06-19 13:05:49 +08:00
morris
cda847b3a7 rgb_lcd: support pixel copy for 8bpp
Closes https://github.com/espressif/esp-idf/issues/11581
2023-06-05 15:34:40 +08:00
morris
5ba53c9294 rgb_lcd: make pclk gpio setting optional
PCLK may not be necessary in VGA use case.
Closes https://github.com/espressif/esp-idf/issues/11298
2023-05-08 14:55:26 +08:00
Armando
0e72940001 spi: added an API to get max transaction length and use in spi lcd driver 2023-05-04 11:37:23 +08:00
Song Ruo Jing
a4e8960ab4 esp_clk_tree: Rename clk_tree_xxx to esp_clk_tree_xxx, add compilation warning to clk_tree.h 2023-04-25 14:12:06 +08:00
morris
2a5ee5c3e2 Merge branch 'bugfix/spi_lcd_max_trans_size' into 'master'
spi_lcd: maximum transfer size should respect bus configuration

Closes IDF-6901 and IDF-4829

See merge request espressif/esp-idf!23149
2023-04-17 16:13:57 +08:00
morris
ab2c7c48af spi_lcd: test spi lcd io can transfer color data to a fixed window region
also test the io tx_param and tx_color can skip the command phase
2023-04-12 16:56:47 +08:00
morris
640ec57014 spi_lcd: maximum transfer size should respect bus configuration
Also this commit added the SPI_TRANS_CS_KEEP_ACTIVE flag for io_tx_color
2023-04-12 16:55:09 +08:00
morris
5d2e3c4ee1 lcd: test send color buffers in multiple steps 2023-04-11 16:02:25 +08:00
morris
a5518cea2c i80_lcd: align before cache sync 2023-04-11 16:02:25 +08:00
morris
e73d8166aa i80_lcd: support skip command phase
Closes https://github.com/espressif/esp-idf/issues/10794
2023-04-04 08:31:41 +00:00
morris
bcbe8fec39 Merge branch 'bugfix/lcd_edma_buffer_align_check' into 'master'
esp_lcd: propagate the error on cache sync failure

Closes IDF-6955

See merge request espressif/esp-idf!23022
2023-04-03 17:49:43 +08:00
morris
126a1b2631 Merge branch 'bugfix/lcd_spi_acquire_bus' into 'master'
spi_lcd: don't release bus if acquire failed

Closes IDFGH-9604

See merge request espressif/esp-idf!22990
2023-04-03 13:13:56 +08:00
morris
1fed9badf1 esp_lcd: check edma buffer alignment properly 2023-03-31 19:06:33 +08:00
morris
81b16b7852 spi_lcd: don't release bus if acquire failed
Closes https://github.com/espressif/esp-idf/issues/10952
2023-03-30 11:48:42 +08:00
laokaiyao
c1f51dfdf6 lcd_i2c: reduce recommended link size
Closes: https://github.com/espressif/esp-idf/issues/11015
2023-03-29 19:08:44 +08:00
Marius Vikhammer
0be8e03907 ci: update test apps to use run_all_single_board_cases 2023-03-10 14:27:09 +08:00
Armando
fda9746bb8 esp_mm: cache_msync API 2023-02-28 10:42:22 +08:00
morris
0a25c48d89 rmt: fix rmt buffer allocation issue 2023-02-14 14:05:12 +08:00
morris
18295bb2f5 Merge branch 'bugfix/i80_pll240_esp32s3' into 'master'
lcd: support PLL240M as i80 clock source on esp32s3

See merge request espressif/esp-idf!22285
2023-02-14 12:27:57 +08:00
morris
c2c4fbff13 lcd: driver support for esp32h2 2023-02-11 00:30:48 +00:00
morris
78855a88c9 lcd: support PLL240M as i80 clock source on esp32s3 2023-02-11 00:30:20 +00:00
wanlei
5300bd3b2f spi: support H2 spi master, slave, slave_hd driver 2023-02-08 11:38:45 +08:00
laokaiyao
330149f3a6 i2c: support i2c on esp32h2 2023-02-01 11:23:11 +08:00
Cao Sen Miao
94120b82c2 esp32h2: add build test 2023-01-17 10:29:04 +08:00
Cao Sen Miao
4713a9a7f2 ESP32H2: Introduce new chip target esp32h2, hello_world example supported 2022-12-29 12:29:14 +08:00
morris
15e98dc7d3 doc: recommend turn on psram xip feature for bounbe buffer mode 2022-12-16 02:04:59 +00:00
Liu Zhongwei
4fac26e0a9 rgb_lcd: support multi-fb with bounce buffer 2022-12-16 02:04:59 +00:00
Vilem Zavodny
8631e4544b lcd: Support rotation SSD1306 and changed example for using LVGL port component. 2022-12-07 09:04:17 +01:00
morris
8c7e8f2811 doc: add api reference for controller lcd drivers 2022-12-06 11:12:28 +08:00
morris
18545e9abe lcd: support multi framebuffers for RGB LCD driver 2022-12-06 11:12:28 +08:00
Song Ruo Jing
7466ddfa8c ci: Make consistence between pytest_*.py and .build-test-rules.yml for esp32c6 (i.e. to pass check_test_scripts_build_test_rules.py) 2022-11-28 11:58:30 +08:00
Omar Chebib
cd21058097 C/Cxx: unify static assertions with the macro ESP_STATIC_ASSERT
Closes https://github.com/espressif/esp-idf/issues/9938
2022-11-21 16:18:08 +08:00
Liu Zhongwei
1a7cdc095b esp_lcd: add condition for spi to keep cs low 2022-11-14 17:55:27 +08:00
Liu Zhongwei
4bdba8bdc6 esp_lcd: modify flag name 2022-11-14 17:29:24 +08:00
Liu Zhongwei
48ce2037be esp_lcd: support serial interface-I mode for spi LCD 2022-11-14 16:33:36 +08:00
Vilem Zavodny
747c5993a8 esp_lcd: Add function for register on color done callback. 2022-11-10 08:37:46 +01:00
Song Ruo Jing
2557e24a28 ci: Enable esp32c6 example, test_apps, and unit tests CI build stage 2022-11-01 11:23:21 +08:00
morris
c25031212d driver: test with non-isr freertos functions in the flash 2022-10-26 13:43:13 +08:00
morris
d9bd809d61 spi_lcd: panel_io_spi_tx_color without cmd
Closes https://github.com/espressif/esp-idf/issues/9881
2022-10-10 16:31:28 +08:00
morris
7d3c9e9f3e spi_lcd: allow dc gpio set to -1
Closes https://github.com/espressif/esp-idf/issues/9881
2022-10-10 16:31:28 +08:00
morris
3a5bc50c2f spi_lcd: support CS active high
Closes https://github.com/espressif/esp-idf/issues/9881
2022-10-10 16:31:28 +08:00
morris
05092e2f82 rgb_lcd: support restart dma transmission manually
When doing Flash operations (e.g. OTA), LCD's DMA bandwidth will be not
sufficient, causing the desync between the LCD controller and DMA.

Added a restart function to help the user to make them sync again.
2022-10-07 18:46:05 +08:00
Marius Vikhammer
8540e7a772 docs: fixed misc broken links 2022-09-18 15:03:39 +08:00
morris
8e2d307c52 lcd: fix wrong bpp size of rgb666 format
Closes https://github.com/espressif/esp-idf/issues/9729
2022-09-07 13:22:20 +08:00
morris
fc1aa2848b rgb_lcd: support yuv converter 2022-08-17 06:33:06 +00:00
morris
bc372f8f55 rgb_lcd: deprecate esp_lcd_color_space_t 2022-08-16 14:35:08 +08:00
morris
0d881fc9e0 driver: specify the interrupt priority
Closes https://github.com/espressif/esp-idf/issues/9520
2022-08-15 14:46:56 +08:00
morris
d91c8759c0 driver: remove -Wno-format flag 2022-08-08 08:30:09 +00:00
Ivan Grokhotkov
401c10ecfb build system: re-add -Wno-format as private flag for some components 2022-08-03 16:42:47 +04:00
morris
104bd44377 kconfig: support plain comment in the menu 2022-08-03 17:03:54 +08:00
morris
8987164385 i2s: add test with -O0 2022-08-02 23:07:06 +08:00
zhouli
13770a2660 rgb_lcd: support mirror and swap axis 2022-08-01 03:05:19 +00:00
morris
454d658309 rgb_lcd: workaround pclk polarity bug by setting mo>=2 2022-07-21 13:06:09 +00:00
morris
a149afb0c0 rgb_lcd: support PLL240MHz clock source 2022-07-21 13:06:09 +00:00
laokaiyao
edee3ee3cd i2s: add slot sequence table
Closes: https://github.com/espressif/esp-idf/issues/9208

When I2S is configured into different modes, the slot sequence varies.
This commit updates slot sequence tables and corresponding descriptions
in (both code and programming guide).
2022-07-21 15:52:39 +08:00
Vilem Zavodny
7b3fe6d832 esp_lcd: Add RX into SPI lcd panel. 2022-07-20 07:07:33 +00:00
Vilem Zavodny
a7bd917c42 esp_lcd: Fix code style. 2022-07-20 07:07:33 +00:00
Slamy
256945997d fixed misaligned data transfer for ssd1306
(cherry picked from commit 46a2bf8ac9)
2022-07-20 07:07:33 +00:00
morris
3ece942704 rgb_lcd: don't test bounce buffer mode with iram-safe 2022-07-18 14:55:11 +08:00
Fu Hanxi
7b5a3af407 Merge branch 'feat/reorg_examples' into 'master'
feat: new find_build_apps rules with centralized manifest file

Closes IDFCI-1061, IDF-3553, IDFCI-941, IDFCI-1359, and IDFCI-1361

See merge request espressif/esp-idf!18299
2022-07-14 20:04:12 +08:00
morris
a33a183365 rgb_lcd: support double buffer
also cleaned up the bounce buffer code
2022-07-14 14:05:47 +08:00
morris
9ea3f6f3e7 rgb_lcd: support 8bit RGB (SRGB) interface 2022-07-14 14:05:47 +08:00
morris
ad35ed2e58 rgb_lcd: update unit test for more features
test 8bit RGB interface
test PCLK can be changed at runtime
test bounce buffer mode
adapted to the new LCD board
2022-07-14 14:05:47 +08:00
morris
4bccd3b635 rgb_lcd: rename relax_on_idle to refresh_on_demand 2022-07-14 14:05:47 +08:00
morris
1dab4af3e8 rgb_lcd: added API to manually refresh the LCD 2022-07-14 14:05:47 +08:00
morris
140536892d rgb_lcd: added API to get the frame buffer(s) 2022-07-14 14:05:47 +08:00
morris
226bd6bc2d rgb_lcd: add doc for various frame buffer modes 2022-07-14 14:05:47 +08:00
morris
ada0ba7717 rgb_lcd: unify the way to register event callbacks 2022-07-14 14:05:47 +08:00
Fu Hanxi
c0568611dd docs: changes docs supported targets tables 2022-07-14 08:26:32 +08:00
Fu Hanxi
05d2357062 feat: use standalone project idf-build-apps for find/build apps utils 2022-07-14 08:26:31 +08:00
Cao Sen Miao
a690a87829 spi_flash: Remove legacy spi_flash drivers 2022-07-01 11:01:34 +08:00
morris
489d14cf55 spi_lcd: don't support dc_as_cmd_phase
The current SPI hardware can't support 9bit SPI data format very well
(i.e. inserting an extra bit before each data byte)

Closes https://github.com/espressif/esp-idf/pull/8644
2022-06-28 17:11:31 +08:00
Jeroen Domburg
5f8666afb8 Add bounce buffer support to esp_lcd 2022-06-28 11:56:22 +08:00
Armando (Dou Yiwen)
0b80546f8e Merge branch 'feature/new_esp_psram_component' into 'master'
esp_psram: new esp psram component

Closes IDF-4318, IDF-4382, IDF-4841, and IDFGH-7192

See merge request espressif/esp-idf!18050
2022-06-15 19:16:56 +08:00
laokaiyao
28b8fc6a7e i2s: update documents for driver-NG 2022-06-15 10:30:04 +08:00
laokaiyao
0fe3bb8ab7 i2s: update examples and unit-tests 2022-06-15 10:29:06 +08:00
laokaiyao
621d0aa942 i2s: Introduced a brand new driver 2022-06-15 10:29:06 +08:00
Armando
38e5043ae8 esp_psram: new psram component 2022-06-14 15:44:27 +08:00
TDA2030
09c192c7f1 rgb_lcd: optimise rgb_panel_draw_bitmap
by using memcpy instead of coping in a nested for loop
2022-06-14 02:20:47 +00:00
morris
b2bb8fd3c4 rgb_lcd: support update pclk at runtime 2022-06-14 02:20:47 +00:00
morris
843279d287 rgb_lcd: support fractional clock divisor 2022-06-14 02:20:47 +00:00
Djordje Nedic
facab8c5a7 tools: Increase the minimal supported CMake version to 3.16
This updates the minimal supported version of CMake to 3.16, which in turn enables us to use more CMake features and have a cleaner build system.
This is the version that provides most new features and also the one we use in our latest docker image for CI.
2022-06-01 06:35:02 +00:00
Marius Vikhammer
0687daf2c8 kconfig: move remaining kconfig options out of target component
The kconfig options are moved to the component where they are used,
mostly esp_hw_support and esp_system.
2022-05-23 17:57:45 +08:00
morris
d274cd5601 lcd: simplify iram safe test case 2022-05-19 11:10:59 +08:00
Marius Vikhammer
c8617fe965 docs: fix all doxygen warnings
Doxygen warnings would previously not result in a failed pipeline.
Fixed this as well as all current warnings.
2022-05-12 14:50:03 +08:00
Vilem Zavodny
4a2766d906 esp_lcd: Add support for rx_param on I2C transport. 2022-05-09 11:49:57 +02:00