Commit Graph

369 Commits

Author SHA1 Message Date
Song Ruo Jing
d956ba2a6c feat(ppa): add PPA driver support for ESP32P4
Add burst_length option to client
Change uint32_t to color_pixel_rgb888_data_t
Descriptor always malloc with MALLOC_CAP_INTERNAL | MALLOC_CAP_8BIT
Add dscr-port mode block size configuration as a separate API in 2D-DMA driver
Do writeback only on an extended window, instead of entire picture
2024-05-24 14:23:14 +08:00
Armando
6e3efc7b9f feat(isp): added isp bf driver 2024-05-24 10:25:42 +08:00
Song Ruo Jing
8464fac845 feat(ppa): add PPA driver support for ESP32P4
Remove the check for in_accepting_trans_state
Add color_pixel_xxxx_data_t structures to color_types.h
Fix PM lock protection (Tested, now works well)
* CPU_MAX, PM lock and semaphore order
* Remove ppa_driver PM lock
Modify concurrency (queue, trans recycle, semaphore, ...)
Add programming guide
Add test apps
2024-05-23 16:40:56 +08:00
Song Ruo Jing
fd1a718f62 feat(ppa): add PPA driver support for ESP32P4
Modified API operation configuration structure
Rename invoker to client
Support YUV420 color mode for SRM
Move PPA srm/blending engine reset ahead of any 2D-DMA channel configurations
2024-05-23 16:40:56 +08:00
Song Ruo Jing
346bc077c5 feat(ppa): add PPA driver support for ESP32P4
Added doxygen
Refactored driver to malloc trans_elm memory when registering the client
Cleaned up driver
Added API check
One client now only responsible for one operation
2024-05-23 16:40:56 +08:00
Song Ruo Jing
95ee1595f9 feat(ppa): add PPA driver support for ESP32P4
Add out_buffer_size field to all oper_config_t
Add strict check for out buffer addr and size alignment
2024-05-23 16:40:55 +08:00
Song Ruo Jing
a86e03cba3 feat(ppa): add PPA driver support for ESP32P4
Renamed SR to SRM
2024-05-23 16:40:55 +08:00
Song Ruo Jing
776c3ef392 feat(ppa): add PPA driver support for ESP32P4
Add fill operation
Split ppa_do_operation, pre-process some trans config
2024-05-23 16:40:55 +08:00
Song Ruo Jing
36732fbcb4 feat(ppa): add PPA driver support for ESP32P4 2024-05-23 16:40:55 +08:00
wanlei
8762c4d1df fix(spi_flash): replace gpio_hal_iomux_func_sel 2024-05-23 16:29:22 +08:00
morris
bfc29da19a feat(rmt): add driver support on esp32c5
MP version
2024-05-23 11:23:14 +08:00
Armando
10d3912c70 feat(xip_psram): support xip psram feature on esp32p4 2024-05-22 15:56:07 +08:00
gaoxu
6d82c324bb feat(adc): move adc periph enable/reset functions to ll layer 2024-05-22 15:23:58 +08:00
gaoxu
c1edeca849 fix(dma): feat(adc): support ADC oneshot mod on ESP32P4 2024-05-22 15:23:58 +08:00
Armando
862aca1fcc change(mmu): fix spell issue 2024-05-22 14:13:29 +08:00
C.S.M
9b3bd13a13 feat(brownout): Add brownout detector support on esp32p4 2024-05-21 15:03:28 +08:00
morris
7c8095a07f feat(axi_icm): AXI interconnect QoS configuration functions 2024-05-21 14:07:01 +08:00
Aditya Patwardhan
2f689857b3 Merge branch 'fix/fix_flash_encryption_esp32p4' into 'master'
fix(bootloader_support): Fix flash encryption for esp32p4

See merge request espressif/esp-idf!30600
2024-05-17 23:48:28 +08:00
Mahavir Jain
43908774fe Merge branch 'bugfix/refactor_data_variable_in_mpi_periph' into 'master'
fix(soc): Refactor variable names for MPI operations and block bases

Closes IDF-9508

See merge request espressif/esp-idf!30658
2024-05-15 12:02:51 +08:00
Alexey Gerenkov
8b93323da6 Merge branch 'upgrade_clang_toolchain' into 'master'
Upgrade clang toolchain version to 'esp-17.0.1_20240419'

See merge request espressif/esp-idf!29811
2024-05-14 21:47:06 +08:00
Song Ruo Jing
07a615d581 Merge branch 'feature/esp32c5mp_gdma_support' into 'master'
feat(gdma): add GDMA support for ESP32C5 MP

Closes IDF-9648

See merge request espressif/esp-idf!30418
2024-05-14 16:53:06 +08:00
Ondrej Kosta
d15a9c2c48 feat(esp_eth): a new folder structure of the driver and other improvements
Fixed memory leak in emac_esp_new_dma function.

Polished ESP EMAC cache management.

Added emac_periph definitions based on SoC features and improved(generalized) ESP EMAC GPIO
initialization.

Added ESP EMAC GPIO reservation.

Added check for frame error condition indicated by EMAC DMA and created a target test.
2024-05-14 08:23:31 +02:00
nilesh.kale
b227154fd3 fix(soc): Refactor variable names for MPI operations and block bases 2024-05-14 10:34:33 +05:30
Song Ruo Jing
001d4e1f8b feat(gdma): add GDMA support for ESP32C5 MP 2024-05-14 11:37:40 +08:00
harshal.patil
5dfbc47192
fix(mbedtls/crypto_shared_gdma): Enable AXI-DMA enable external memory AES-ECC access
- When external memory encryption is enabled, set the aes_ecc bit of AXI-DMA to enable memory access
2024-05-13 16:54:45 +05:30
morris
6a57c26469 Merge branch 'feature/esp32c5_mp_gpio_support' into 'master'
esp32c5 mp gpio support

Closes IDF-9649

See merge request espressif/esp-idf!30474
2024-05-11 22:50:23 +08:00
C.S.M
15cf203632 feature(usb_serial_jtag): add usb serial jtag support for esp32p4 2024-05-11 14:16:57 +08:00
Aditya Patwardhan
a04cc5289c
fix(bootloader_support): Fix flash encryption for esp32p4 2024-05-11 10:01:16 +05:30
Michael (XIAO Xufeng)
0121e99d05 Merge branch 'feature/support_chip912_cpll_spll_eco1' into 'master'
feat: support(esp32p4_eco1): modify cpll and spll config

Closes IDF-9612, IDF-9613, and IDF-8939

See merge request espressif/esp-idf!30675
2024-05-11 11:42:39 +08:00
Xiao Xufeng
8753934582 feat(esp32p4): add eco1 revision config option 2024-05-10 22:51:12 +08:00
chaijie@espressif.com
29ddd2b720 feat(esp32p4_eco1): modify cpll and spll config 2024-05-10 22:18:17 +08:00
laokaiyao
627631429a feat(parlio_rx): support parlio rx on p4 2024-05-10 16:55:46 +08:00
morris
eb83d9aa0a feat(gdma): set default valid memory range for gdma 2024-05-06 18:03:17 +08:00
Alexey Gerenkov
cb263106cc fix(build): Fix esp32p4 MCPWM 'get_clock_prescale' default return value 2024-05-03 16:55:18 +03:00
Wan Lei
cceec04195 Merge branch 'refactor/spi_slave_hal_iram_dma_replace' into 'master'
refactor(spi_slave): spi slave and slave HD hal iram dma_ll replace

Closes IDF-6152 and IDF-9656

See merge request espressif/esp-idf!27877
2024-04-30 20:16:18 +08:00
morris
28073d9991 fix(mipi_dsi): only wait ready for enabled data lane 2024-04-30 14:41:52 +08:00
morris
72f42db7e2 Merge branch 'bugfix/dead_code_in_ldo_ll' into 'master'
fix(ldo): remove logically dead code

Closes IDF-9829 and IDF-9849

See merge request espressif/esp-idf!30550
2024-04-30 10:15:34 +08:00
Kevin (Lao Kaiyao)
3e15e7f46e Merge branch 'refactor/isp_af_interrupt_and_callback' into 'master'
refactor(isp): refactor the interrupt and callback solution

See merge request espressif/esp-idf!30176
2024-04-29 17:09:05 +08:00
Marius Vikhammer
76b7d12329 Merge branch 'feature/lp_core_interrupts' into 'master'
feat(ulp): support interrupts for C6/P4 LP core

Closes IDFGH-11986 and IDF-7200

See merge request espressif/esp-idf!30399
2024-04-29 14:36:54 +08:00
morris
c64c910955 fix(ldo): remove logically dead code 2024-04-29 14:21:17 +08:00
Marius Vikhammer
c5a513cf49 feat(ulp): support interrupts for C6/P4 LP core
Closes https://github.com/espressif/esp-idf/issues/13059
2024-04-28 17:03:23 +08:00
laokaiyao
2237633ab3 refactor(isp): refactor the interrupt and callback solution
- Added async API
- Replaced the polling API
- Supported one more callback and event data
2024-04-28 16:23:22 +08:00
gaoxu
605f2309bf feat(gpio): add gpio support on ESP32C5 MP version 2024-04-26 12:27:53 +08:00
wanlei
67f798b666 refactor(spi_slave): replace dma_ll in slave hal layer (part 2.2) 2024-04-24 14:01:09 +08:00
Song Ruo Jing
bf3067fa8a fix(gpio_etm): allow one GPIO binds to multiple ETM tasks 2024-04-23 20:37:34 +08:00
wuzhenghui
ffd5d1fd66
feat(esp_hw_support): support set clock divider for esp32p4 clock output 2024-04-17 15:09:54 +08:00
wuzhenghui
309725fcd0
feat(esp_hw_support): support esp32p4 clock output 2024-04-17 15:09:49 +08:00
Mahavir Jain
c44369de7a
fix: cleanup MPU LL files for RISC-V architecture SoCs 2024-04-16 09:50:46 +05:30
Mahavir Jain
433825d385
fix(hal): integer overflow warning in the cache LL macro 2024-04-14 21:16:38 +05:30
harshal.patil
5ba9b53667
fix(hal): Clear reset on parent crpyto lock while resetting a crypto peripheral 2024-04-12 14:55:11 +05:30
Konstantin Kondrashov
e6d153f06b Merge branch 'feature/support_utilities_in_cpu' into 'master'
feat(esp_hw_support): Support utilities in cpu.c

Closes IDF-7848

See merge request espressif/esp-idf!29661
2024-04-12 15:30:33 +08:00
Armando (Dou Yiwen)
9e9f76d88d Merge branch 'feat/lp_i2s_ll_support' into 'master'
lp_i2s: added lp_i2s ll layer

See merge request espressif/esp-idf!30158
2024-04-12 10:37:54 +08:00
Armando
a8406659db feat(lp_i2s): added lp_i2s ll layer 2024-04-11 20:18:45 +08:00
Konstantin Kondrashov
06c28f0ee9 feat(hal): Adds hal funcs for cpu.c 2024-04-11 13:07:04 +03:00
Lou Tianhao
2c59c4fbf2
fix(ci): bypass c5mp ci check 2024-04-10 20:45:49 +08:00
Cao Sen Miao
ca23d58cf3 change(jpeg): Clean up some mess code in jpeg encoder 2024-04-09 11:33:29 +08:00
morris
e8b6d2280d change(gptimer): use private unsafe RCC LL functions in bootloader 2024-04-08 17:48:20 +08:00
Darian Leung
023eae4f0b
feat(hal/usb): Update USB WRAP and USJ LL, add missing ESP32-P4 LL
This commit updates updates the LLs of USB WRAP and USJ as follows:

- Added missing 'usb_wrap_ll.h' and 'usb_serial_jtag_ll.h' for the ESP32-P4
- Added LL cap macros to distinguish feature differences between the LLs of
  different targets:
    - '..._LL_EXT_PHY_SUPPORTED' indicates whether the USB WRAP/USJ supports
      routing to an external FSLS PHY.
    - '..._LL_SWAP_PHY_SUPPORTED' indicates whether the USB WRAP/USJ supports
      swapping between multiple internal FSLS PHYs.
- Tidied up some RCC LL functions and their callers.
- Added 'usb_wrap_types.h' and 'usb_serial_jtag_types.h' to provide types used
  in LLs.
- Fixed some spelling/naming issues as part of code-spell pre-commit
2024-04-04 02:47:00 +08:00
Darian Leung
84ba2ef2e8
feat(soc/usb): Add USB UTMI PHY struct and LL for the ESP32-P4 2024-04-04 01:47:35 +08:00
Armando
f0518b3c16 feat(dma): advanced dma malloc helper 2024-04-02 14:30:14 +08:00
Cao Sen Miao
22ec65adef feat(jpeg_encoder): Add the basic support for jpeg encoder 2024-04-01 20:03:31 +08:00
Mahavir Jain
999f3f69c0 Merge branch 'esp32p4/deterministic_ecdsa_support' into 'master'
Add deterministic ECDSA support

Closes IDF-8507

See merge request espressif/esp-idf!29010
2024-04-01 16:45:14 +08:00
Armando (Dou Yiwen)
9e8f5364eb Merge branch 'feat/isp_af_driver' into 'master'
isp: added isp driver framework and isp af driver

See merge request espressif/esp-idf!27937
2024-04-01 10:44:48 +08:00
Armando
bf1275d700 feat(isp): added isp driver framework and isp af driver 2024-04-01 09:30:07 +08:00
Jiang Jiang Jian
0c68b9b06c Merge branch 'feat/sleep_retention_depends_power_state_management' into 'master'
sleep retention multiple modules initialization and dependency management

Closes WIFI-5252 and IDFGH-11302

See merge request espressif/esp-idf!28941
2024-04-01 09:28:42 +08:00
wuzhenghui
d9682ea8cb fix(hal): use force_inline for lp_sys ll header 2024-03-30 11:51:52 +08:00
morris
1ed64afddd Merge branch 'refactor/remove_unused_periph_module_enable' into 'master'
remove orphaned clk_gate_ll.h on esp32p4

Closes IDF-8094

See merge request espressif/esp-idf!29906
2024-03-29 14:50:34 +08:00
harshal.patil
cd98dfc3fd
feat(hal): Add LL and HAL layer support for deterministic ECDSA 2024-03-29 12:14:11 +05:30
morris
8e64a59fac refactor(periph_ctrl): remove orphaned clk_gate_ll.h
and deprecate the legacy periph_module_xxx functions for new targets
2024-03-29 10:53:05 +08:00
wuzhenghui
4a64d2fe2c change(hal): control PAU bus clock by hal layer 2024-03-29 00:36:46 +08:00
wuzhenghui
5d24a818eb
feat(esp_hw_support): add esp32p4 pau initial support 2024-03-28 19:18:24 +08:00
wuzhenghui
4bcb88c482
change(rtc): rename sleep mode related regs defination 2024-03-28 17:49:14 +08:00
morris
c0289ee6eb fix(drivers): fix typos found by codespell
codespell components/esp_driver*
2024-03-28 10:01:27 +08:00
Harshal Patil
5274bf88e4 Merge branch 'esp32p4/add_sha_support' into 'master'
feat: add SHA support for ESP32-P4

Closes IDF-7541 and IDF-7882

See merge request espressif/esp-idf!24865
2024-03-27 20:08:28 +08:00
C.S.M
333e8aa19e Merge branch 'feature/support_i2c_timeout' into 'master'
feature(i2c_master): Add a parameter for config the scl await value

See merge request espressif/esp-idf!29787
2024-03-27 18:14:58 +08:00
wuzhenghui
65d4e79f80
feat(esp_hw_support): support esp32p4 ext1 wakeup 2024-03-27 13:59:37 +08:00
harshal.patil
9cd10e196b
feat(hal/sha): use RCC atomic block to enable/reset the SHA peripheral 2024-03-27 11:23:30 +05:30
harshal.patil
e6782156c4
feat(hal/sha): add SHA peripheral support for esp32p4 2024-03-27 11:23:28 +05:30
Mahavir Jain
c658351eab Merge branch 'esp32p4/add_aes_gcm_support' into 'master'
feat: add AES-GCM support for ESP32-P4

See merge request espressif/esp-idf!29516
2024-03-27 11:40:26 +08:00
Cao Sen Miao
ede1df51b0 feat(i2c_master): Add parameter to config I2C scl await time 2024-03-27 10:35:11 +08:00
Sudeep Mohanty
2b5517ed47 change(lp_i2c): Added LP I2C low-level control functions for esp32p4
This MR adds ll functions for clock and reset settings for the LP I2C
peripheral for the esp32p4.
2024-03-26 08:31:54 +01:00
harshal.patil
0eb52a8fbf
feat(hal/aes): Add LL layer support for ESP32-P4 AES-GCM 2024-03-26 11:31:11 +05:30
morris
061e5dc695 feat(ldo): add ldo regulator driver for public use 2024-03-25 21:19:12 +08:00
morris
ddece8f7e9 feat(glitch_filter): support GPIO glitch filter on esp32p4 2024-03-22 17:13:19 +08:00
morris
f71044c877 feat(fast_gpio): support CPU controlled fast GPIO driver on esp32p4 2024-03-22 17:13:19 +08:00
Alexey Lapshin
13b55386bf feat(system): esp32p4: support hw stack guard 2024-03-21 14:30:21 +04:00
Song Ruo Jing
34f05287ab Merge branch 'bugfix/dma2d_various_small_fixes' into 'master'
fix(dma2d): correct a few 2D-DMA driver issues

See merge request espressif/esp-idf!29705
2024-03-19 21:36:45 +08:00
morris
3a9d082523 Merge branch 'bugfix/parlio_coverity_issue' into 'master'
feat(parlio_tx): minor clean up and fix

Closes IDF-9420

See merge request espressif/esp-idf!29663
2024-03-19 10:08:54 +08:00
Song Ruo Jing
12325ff47e fix(dma2d): correct a few 2D-DMA driver issues
1. mem_burst_length register field correction
2. remove dma buffer addr range restriction
3. M2M periph sel ID no need to be identical for TX and RX channels
4. correct rx descriptor owner field auto clear
5. remove fsm idle assertion for ERR_EOF
2024-03-18 20:11:57 +08:00
morris
ce041640ca change(parlio_tx): plenty of driver clean up 2024-03-15 18:02:44 +08:00
Song Ruo Jing
90bf2772ac fix(uart): Fix mismatch wakeup rising edges required with the threshold configured
Closes https://github.com/espressif/esp-idf/issues/12586
2024-03-15 16:58:33 +08:00
Mahavir Jain
cd47cf46dc Merge branch 'esp32p4/add_aes_support' into 'master'
feat: add AES support for ESP32-P4

Closes IDF-6519

See merge request espressif/esp-idf!26429
2024-03-15 11:43:22 +08:00
Wu Zheng Hui
5a682c3bbb Merge branch 'feature/optimize_chips_active_power' into 'master'
feat(system): Optimize the power consumption of esp32h2 and esp32c6 in the active state

Closes IDF-5658

See merge request espressif/esp-idf!27798
2024-03-14 12:08:33 +08:00
harshal.patil
e8268d8b6b
feat(hal/aes): use RCC atomic block to enable/reset the AES peripheral 2024-03-13 15:22:07 +05:30
harshal.patil
a6012c9e5a
feat(mbedtls/aes): add AES peripheral support for esp32p4 2024-03-13 15:22:06 +05:30
wuzhenghui
65e9d0ddb9 feat(esp_hw_support): add esp32p4 sleep initial support 2024-03-10 10:51:28 +08:00
wuzhenghui
856f043331 feat(esp_hw_support): add esp32p4 pmu initial support 2024-03-10 10:51:28 +08:00
wuzhenghui
48e6629987
change(hal): redefine some ll for unsafe calling 2024-03-07 19:26:37 +08:00
harshal.patil
2b6f12ba51
fix(hal/crypto): Do not reset parent crypto clk when resetting a crypto peripheral 2024-03-05 15:08:08 +05:30
Cao Sen Miao
2b2b3be98f feat(temperature_sensor): Add new support for temperature sensor ETM on ESP32C6/H2 2024-03-01 18:52:39 +08:00