Commit Graph

237 Commits

Author SHA1 Message Date
Cao Sen Miao
aa10770323 refactor(i2c): Make i2c driver as a seperate component 2023-12-14 15:39:35 +08:00
morris
adf33fa57e fix(i80_lcd): enhance the check of a valid data phase
in case the user passes a (uint8_t){0x00} parameter with the perameter size
set to zero
2023-11-23 11:02:28 +08:00
morris
e86acbe556 feat(lcd): pre-support rgb and i80 lcd driver on esp32p4
added LL functions for LCD_CAM module, only the LCD part
2023-11-21 10:46:52 +08:00
laokaiyao
74441d14ab refactor(i2s): make i2s driver as component 2023-11-17 21:29:17 +08:00
Armando
fca46eac52 refactor(spi): make spi driver as component 2023-11-09 14:50:05 +08:00
morris
7121e8f78d refactor(lcd): reuse the color types in the hal/color_types.h 2023-11-08 10:09:42 +08:00
morris
0c3f80495a feat(ssd1306): support 128x32 resolution 2023-11-08 09:58:50 +08:00
morris
2be27f292e change(esp_lcd): split panel vendor driver into seperate header file 2023-11-08 09:58:50 +08:00
Alexey Storozhev
c4dc16c612 feat(ssd1306): Add vendor specific configuration for SSD1306
Merges https://github.com/espressif/esp-idf/pull/12450
2023-11-08 09:58:50 +08:00
Song Ruo Jing
9461993ec5 refactor(gpio): make gpio driver as component, and fix astyle 2023-11-03 15:42:23 +08:00
Jakob Hasse
548022fbe6 refactor(linux): excluded all non-Linux components from build
* All components which won't build (yet) on Linux are excluded.
  This enables switching to Linux in an application without
  explicitly setting COMPONENTS to main in the main
  CMakeLists.txt.
* ESP Timer provides headers for Linux now
* automatically disabling LWIP in Kconfig if it is not available

doc(linux): brought section
  "Component Linux/Mock Support Overview" up to date
2023-10-16 17:06:54 +08:00
morris
2bbdd35383 build: trim lcd apps build dependency 2023-10-13 14:58:15 +08:00
morris
b4bcb5cc5c test(esp_lcd): test lcd sleep function 2023-10-11 15:40:35 +08:00
morris
b2972528c7 feat(nt35510): Implement sleep function 2023-10-11 15:32:34 +08:00
Andrea Greco
cbf2414226 feat(st7789): Implement sleep functions
Merges https://github.com/espressif/esp-idf/pull/12370
2023-10-11 15:30:07 +08:00
Andrea Greco
3bd67462f0 feat(esp_lcd): Add API to sleep and wakeup the LCD panel 2023-10-11 15:08:26 +08:00
wanlei
eb75aa462e feat(spi_master): p4 enable test and examples 2023-10-08 14:45:52 +08:00
morris
1b2484214c refactor(esp_lcd): reformat code with astyle_py 2023-09-28 09:42:31 +08:00
Liu Zhong Wei
1956196170 Merge branch 'feature/esp_lcd_example_use_lvgl_lock' into 'master'
feat(esp_lcd): add lock for lvgl in examples

Closes AEG-859

See merge request espressif/esp-idf!25733
2023-09-26 10:23:29 +08:00
Armando (Dou Yiwen)
b58a2ea6a6 Merge branch 'feature/support_cache_p4' into 'master'
cache: support cache driver on esp32p4

Closes IDF-7516

See merge request espressif/esp-idf!25490
2023-09-25 15:21:46 +08:00
Armando
ec27891af6 change(cache): swap cache hal arg 'type' and 'level' 2023-09-22 14:19:41 +08:00
Armando
ea38a2e9a4 feat(cache): support cache driver on esp32p4 2023-09-22 14:19:41 +08:00
Chen Yu Dong
ac17132bb4 Merge branch 'ci/move_build_test_rules_files_folder' into 'master'
fix(ci): change build-test-rules files folder

See merge request espressif/esp-idf!26076
2023-09-22 11:28:48 +08:00
Liu Zhongwei
b4a173648a fix(nt35510_st7789): correct the word spelling 2023-09-21 09:19:18 +08:00
laokaiyao
dd4072a80c refactor(hal): use hal utils to calculate clock division 2023-09-20 23:33:25 +08:00
Chen Yudong
2e11919f70 fix(ci): change build-test-rules files folder 2023-09-20 19:17:06 +08:00
Darian Leung
287bdc5e61 fix(test_apps): Trim builds of component test apps
Some component test apps do not use the "set(COMPONENTS main)" command in their
project level "CMakeLists.txt", thus leading to their builds pulling in all
ESP-IDF components.

This commit trims the build of multiple component test apps:

- Add "set(COMPONENTS main ...)" to project level "CMakeLists.txt"
- Add missing "PRIV_REQUIRES" in some "main" component "CMakeLists.txt"

Also removed repeated configuraiton options in legacy_i2c_driver/sdkconfig.ci.defaults
as they are already specified in legacy_i2c_driver/sdkconfig.defaults
2023-09-18 17:16:37 +08:00
morris
94d39009b4 Merge branch 'feature/esplcd_replace_periph_func_with_atomic' into 'master'
feat(esp_lcd): Replace `periph_module` function call with new ll func

Closes IDF-8167

See merge request espressif/esp-idf!25717
2023-09-07 01:59:04 +08:00
Planck (Lu Zeyu)
86d4f9993f feat(esp_lcd): replace periph_module func with new ll func
Update periph_ctrl.h
2023-09-06 14:42:01 +08:00
Planck (Lu Zeyu)
6f55f76344 feat(st7789): add data endian config
Closes https://github.com/espressif/esp-idf/issues/11416
2023-09-05 12:11:19 +08:00
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