Commit Graph

334 Commits

Author SHA1 Message Date
wuzhenghui
5d24a818eb
feat(esp_hw_support): add esp32p4 pau initial support 2024-03-28 19:18:24 +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
wuzhenghui
65d4e79f80
feat(esp_hw_support): support esp32p4 ext1 wakeup 2024-03-27 13:59:37 +08:00
wuzhenghui
299199c5a5
feat(soc): add ESP_ROM_SUPPORT_DEEP_SLEEP_WAKEUP_STUB rom caps 2024-03-27 13:59:36 +08:00
harshal.patil
507b5fd2b6
fix(soc/sha_struct): fix register name continue to conti
- As contnue being a reserved keyword in C, the register name
continue is not valid
2024-03-27 11:23:28 +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
Sudeep Mohanty
5228dc348b feat(lp_i2c): Added LP I2C support on the esp32p4
This commit adds support for the LP I2C peripheral to be used from the
LP core on the esp32p4.
2024-03-26 08:31:54 +01:00
Sudeep Mohanty
cd49273d7a change(clk_tree): Added clock tree definitions for LP I2C for esp32p4
This commit adds the clock tree definitions for the LP I2C peripheral
for the esp32p4.
2024-03-26 08:31:54 +01:00
harshal.patil
80b33ed3e7
fix(soc/sha_struct): fix register name continue to conti
- As continue being a reserved keyword in C, the register name continue is not valid
2024-03-26 11:31:11 +05:30
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
Armando
ec44556a07 feat(sd): added power control driver and implementation layer with ldo 2024-03-25 11:32:56 +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
wuzhenghui
bbc8fd5c9c
feat(esp_hw_support): support esp32p4 sleep cpu retention 2024-03-15 18:13:25 +08:00
morris
ce041640ca change(parlio_tx): plenty of driver clean up 2024-03-15 18:02:44 +08:00
Sudeep Mohanty
05db166e5d Merge branch 'feature/lp_core_lp_uart_support' into 'master'
feat(lp_core): Added support for LP UART on LP core for esp32p4

Closes IDF-7533

See merge request espressif/esp-idf!29555
2024-03-15 17:57:50 +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
Sudeep Mohanty
26fd843376 feat(lp_core): Added support for LP UART on LP core for esp32p4
This commit enables LP UART support for the LP core on the esp32p4.
2024-03-14 18:45:02 +01:00
Wu Zheng Hui
bb25cc1234 Merge branch 'feature/esp32p4_sleep_support' into 'master'
feat(esp_hw_support): esp32p4 sleep support (Stage 1: support basic pmu sleep function 💤)

Closes IDF-7528 and IDF-7527

See merge request espressif/esp-idf!28196
2024-03-14 10:17:32 +08:00
harshal.patil
a6012c9e5a
feat(mbedtls/aes): add AES peripheral support for esp32p4 2024-03-13 15:22:06 +05:30
Mahavir Jain
fd6c710b27
fix: cleanup memprot files for C6/H2/P4
There is no separate permission control peripheral in C6/H2/P4.
Memory protection is achieved using built-in PMA/PMP and hence
removing permission control specific files.
2024-03-11 17:10:40 +05:30
wuzhenghui
174386f133 ci: enable lightsleep related tests 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
wanlei
0cf11e5b87 feat(spi): add esp32c5 spi support 2024-03-07 18:11:48 +08:00
Guillaume Souchere
0b9f01ac20 feat(soc): Add soc_caps macros for sleep support
- modify console example to use the new SOC_LIGHT_SLEEP_SUPPORTED
and SOC_DEEP_SLEEP_SUPPORTED macros when registering sleep commands

- remove exclusion of esp32p4 in basic and advanced example in
.build-test-rules.yml

- replace exclusion of esp32p4 for deep and light sleep tests with newly introduced macro

- remove the temporary disable check for esp32p4 and uses the
SOC_LIGHT_SLEEP_SUPPORTED maccro instead.
2024-03-05 07:05:40 +01:00
C.S.M
0f03434119 Merge branch 'feature/tsens_etm' into 'master'
feature(temperature sensor): Temperature sensor ETM support.

Closes IDF-6357

See merge request espressif/esp-idf!28880
2024-03-05 10:09:25 +08:00
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
gaoxu
7075b61a6a docs(uart): update lp uart and p4/c5 uart programming guide 2024-03-01 16:21:22 +08:00
Armando (Dou Yiwen)
7b414002f6 Merge branch 'change/psram_200m_update' into 'master'
change(psram): update voltage configurations

See merge request espressif/esp-idf!28933
2024-03-01 15:17:24 +08:00
C.S.M
3e0a672d91 Merge branch 'feature/jpeg_decoder' into 'master'
feat(jpgd): Add jpeg decode support on esp32p4 🖼️ (goal: Trying to merge in March 🛰️ )

See merge request espressif/esp-idf!28639
2024-02-29 23:43:05 +08:00
Alexey Lapshin
fdb7a43752 Merge branch 'feature/esp32p4_concontiguous_mem_mvp' into 'master'
feat(esp_system): allow .bss to spill over into L2MEM above 0x4ff40000 on P4

See merge request espressif/esp-idf!28783
2024-02-29 16:28:13 +08:00
Cao Sen Miao
abc2971d95 feat(jpeg): Add basic jpeg decoder support on esp32p4 2024-02-29 13:51:16 +08:00
Armando
62440e5b12 change(psram): update voltage configurations 2024-02-29 10:42:37 +08:00
Alexey Lapshin
824c8e0593 feat(esp_system): allow .bss to spill over into L2MEM above 0x4ff40000
This commit introduce SOC_MEM_NON_CONTIGUOUS_SRAM flag (that enebled for
esp32p4). If SOC_MEM_NON_CONTIGUOUS_SRAM is enabled:

- LDFLAGS+=--enable-non-contiguous-regions
- ldgen.py replaces "arrays[*]" from sections.ld.in with objects under
  SURROUND keyword. (e.g. from linker.lf: data -> dram0_data SURROUND(foo))
- "mapping[*]" - refers to all other data

If SOC_MEM_NON_CONTIGUOUS_SRAM, sections.ld.in file should contain at
least one block of code like this (otherwise it does not make sense):

  .dram0.bss (NOLOAD) :
  {
    arrays[dram0_bss]
    mapping[dram0_bss]
  } > sram_low

  .dram1.bss (NOLOAD) :
  {
    /* do not place here arrays[dram0_bss] because it may be splited
     * between segments */
    mapping[dram0_bss]
  } > sram_high
2024-02-28 19:41:25 +04:00
Song Ruo Jing
98d9f04b00 feat(gdma): add GDMA support for ESP32C5 2024-02-28 12:38:02 +08:00
Konstantin Kondrashov
11d44e82eb Merge branch 'feature/efuse_esp32p4_add_new' into 'master'
feat(efuse): Adds new efuses for esp32p4

See merge request espressif/esp-idf!29085
2024-02-27 15:37:39 +08:00
Konstantin Kondrashov
281031e24d feat(efuse): Adds new efuses for esp32p4 2024-02-21 12:45:31 +02:00
Marius Vikhammer
4ce4af61ad fix(system): update reset reasons for P4 and C5 2024-02-21 11:59:28 +08:00
Song Ruo Jing
5276cd4f1d refactor(uart): add support to be able to test LP_UART port
Increase LP_UART_EMPTY_THRESH_DEFAULT value to 4. The original value
could cause the FIFO become empty before filling next data into the FIFO
when the buadrate is high. TX_DONE interrupt would raise before actual
transmission complete in such case.
2024-02-07 14:37:48 +08:00
Song Ruo Jing
dce27c3b09 change(clk_tree): add LP_DYN_FAST_CLK to soc_module_clk_t 2024-02-07 14:37:48 +08:00
Armando (Dou Yiwen)
116c9494c7 Merge branch 'feat/csi_driver' into 'master'
feat(csi): added csi driver

See merge request espressif/esp-idf!28751
2024-02-05 09:59:35 +08:00
Wu Zheng Hui
5454d37d49 Merge branch 'feature/support_gdma_retention' into 'master'
feature: support gdma retention in pd_top lightsleep

Closes IDF-7704 and IDFGH-11389

See merge request espressif/esp-idf!27246
2024-02-04 20:17:02 +08:00
Armando
f918079e8e feat(csi): added csi driver 2024-02-04 19:06:11 +08:00
wuzhenghui
0c2f811ca8
feat(esp_hw_support): support gdma register context sleep retention 2024-02-02 11:21:40 +08:00
Tomas Rezucha
f13ae0fc08 feat(esp32p4): Add USB-OTG support for ESP32-P4 2024-01-30 15:07:11 +01:00
Song Ruo Jing
cf93777077 refactor(rtc): move soc/rtc.h from soc to esp_hw_support component
Deprecated rtc_xtal_freq_t, replaced with soc_xtal_freq_t defined in
clk_tree_defs.h in soc component.
2024-01-25 19:15:33 +08:00
Mahavir Jain
09c9001895 Merge branch 'feature/add_key_manager_hw_support' into 'master'
Feature/add key manager hw support

Closes IDF-7925 and IDF-8041

See merge request espressif/esp-idf!26328
2024-01-23 17:11:05 +08:00
Aditya Patwardhan
4dc2ace0b7
fix(esp_hw_support): Update key manager support
1) Added new Key Manager APIs
    2) Added crypto locking layer for Key Manager
    3) Remove support for deploying known key
    4) Format key manager support
    5) Fix build header error
    6) Updated the key_mgr_types.h file
    7) Added key manager tests
2024-01-23 10:24:39 +05:30
Aditya Patwardhan
3eabb62850
feat(esp_hw_support): Add support for Key Manager 2024-01-23 10:24:35 +05:30
Song Ruo Jing
08eada7301 feat(esp_hw_support/dma2d): Add 2D-DMA support on ESP32P4 2024-01-22 20:51:43 +08:00
Mahavir Jain
9ecd2fd7e3 fix(soc): change debug addr range to CPU subsystem range
For C6/H2/P4/C5, there is no SoC specific debug range. Instead the same
address range is part of CPU Subsystem range which contains debug mode
specific code and interrupt config registers (CLINT, PLIC etc.).

For now the PMP entry is provided with RWX permission for both machine
and user mode but we can save this entry and allow the access to only
machine mode for this range.

For P4/C5 case, this PMP entry can have RW permission as the debug mode
specific code is not present in this memory range.
2024-01-22 13:34:32 +08:00
morris
7013815ea7 feat(dsi): add mipi dsi driver to esp_lcd 2024-01-20 16:50:22 +08:00
Omar Chebib
cdde05335e Merge branch 'refactor/riscv_interrupt' into 'master'
refactor(riscv): Refactor crosscore interrupts and core interrupt code

Closes IDF-5720, DOC-5177, and IDF-7899

See merge request espressif/esp-idf!27845
2024-01-19 10:51:04 +08:00
Wan Lei
73ff086e21 Merge branch 'fix/p4_spi_master_clock_sourse_sel' into 'master'
fix(spi_master): Fix p4 spi clock source support other than XTAL

See merge request espressif/esp-idf!28392
2024-01-18 16:46:44 +08:00
Omar Chebib
102d5bbf72 refactor(riscv): added a new API for the interrupts 2024-01-18 16:36:53 +08:00
Song Ruo Jing
e45aea723b Merge branch 'feature/esp32p4_ppa_ll_support' into 'master'
feat(ppa): add low level support for PPA

See merge request espressif/esp-idf!28268
2024-01-17 23:18:35 +08:00
Ondrej Kosta
0766bb5f62 Merge branch 'feature/p4_emac' into 'master'
ESP32P4 EMAC

See merge request espressif/esp-idf!27178
2024-01-17 22:22:05 +08:00
wanlei
4a46d70e9a fix(spi_master): Fix p4 spi clock source support other than XTAL 2024-01-17 17:01:23 +08:00
morris
5fb105a6d9 Merge branch 'feature/add_mipi_dsi_dphy_config_hal' into 'master'
update(mipi_dsi): update hal driver with DPHY PLL configuration

See merge request espressif/esp-idf!28412
2024-01-17 08:38:57 +08:00
Song Ruo Jing
32111c1c4d feat(ppa): add low level support for PPA 2024-01-16 23:20:59 +08:00
Ondrej Kosta
ce388a4111 feat(esp_eth): Added support of internal EMAC for ESP32P4
Refactored internal EMAC DMA access.

Added MPLL acquire to manage access to the MPLL by multiple periphs.
2024-01-16 14:29:25 +01:00
Kevin (Lao Kaiyao)
4f506a30df Merge branch 'bugfix/fix_incorrect_regbase_name_of_i2s' into 'master'
fix(i2s): fixed incorrect reg base name on C3

Closes IDFGH-11518

See merge request espressif/esp-idf!28421
2024-01-16 19:37:28 +08:00
morris
d3ebd6bc1c feat(mipi_dsi): added DPHY PLL clock configuration 2024-01-16 17:41:46 +08:00
Armando (Dou Yiwen)
d7a0aa92f3 Merge branch 'feat/csi_brg_shared_ctrl' into 'master'
csi: added csi bridge share control code

See merge request espressif/esp-idf!28353
2024-01-16 16:30:21 +08:00
laokaiyao
c3c72f02af fix(i2s): fixed incorrect reg base name on C3
Closes https://github.com/espressif/esp-idf/issues/12643
2024-01-16 14:12:32 +08:00
C.S.M
ea4498d6c6 Merge branch 'refactor/i2c_example' into 'master'
refactor(i2c): Use new I2C driver in i2c examples.

See merge request espressif/esp-idf!28239
2024-01-16 12:52:12 +08:00
Cao Sen Miao
0bf2b35b33 fix(i2c): Use hardware fsm reset on esp32c6/h2/p4 2024-01-16 10:05:05 +08:00
Armando
8f097a4629 feat(csi): added csi bridge share control code 2024-01-16 09:57:52 +08:00
morris
213a599d8b fix(mcpwm): enable mcpwm group clock before hal init 2024-01-15 18:13:56 +08:00
Armando
80e18811db feat(psram): support 200mhz psram, experimental feature for now 2024-01-10 11:52:28 +08:00
Cao Sen Miao
bc1478f0b0 fix(tsens): 300us delay in phy cause extra power consumption 2024-01-10 09:46:02 +08:00
C.S.M
43c87716c9 Merge branch 'feat/flash_p4' into 'master'
ci(spi_flash): Enable spi_flash related tests on esp32p4

Closes IDF-7499 and IDF-8984

See merge request espressif/esp-idf!28099
2024-01-08 14:28:09 +08:00
morris
36d6ee9e61 Merge branch 'bugfix/rmt_p4_test' into 'master'
fix(rmt): DMA descriptor alignment respect the cache line size

Closes IDF-8961

See merge request espressif/esp-idf!28296
2024-01-08 12:43:58 +08:00
morris
d97a46160d fix(rmt): DMA descriptor alignment respect the cache line size 2024-01-08 10:31:32 +08:00
Cao Sen Miao
2e83fa1c69 refactor(spi_flash): Use new spi_flash register sturct and deperecate the old one 2024-01-08 09:59:22 +08:00
Cao Sen Miao
b84434b39d fix(tsens,adc): Fix issue that disable adc will make temperature sensor crash,
Closes https://github.com/espressif/esp-idf/issues/12921
2024-01-05 12:10:30 +08:00
laokaiyao
1d3c8c5481 refactor(h264): group the h264 struct header on p4 2024-01-03 23:57:11 +08:00
Darian Leung
f671a6fbda feat(usb): Add USB peripheral addresses for P4 2024-01-01 21:34:02 +08:00
Roman Leonov
cdc0e78057 feat(soc/usb): Add ESP32-P4 USB OTG struct 2024-01-01 21:34:02 +08:00
Kevin (Lao Kaiyao)
83d5797967 Merge branch 'feature/parlio_rx_driver' into 'master'
driver: add parallel IO RX driver

Closes IDF-7002 and IDF-6984

See merge request espressif/esp-idf!23488
2023-12-29 16:36:24 +08:00
Song Ruo Jing
7f2b85b82b feat(clk): add basic clock support for esp32p4
- Support CPU frequency 360MHz
- Support SOC ROOT clock source switch
- Support LP SLOW clock source switch
- Support clock calibration
2023-12-29 00:37:26 +08:00
Song Ruo Jing
80c5cf27e8 change(soc): correct esp32p4 regi2c related registers 2023-12-29 00:37:26 +08:00
laokaiyao
04d267b023 feat(parlio_rx): implement parallel io rx driver 2023-12-27 19:32:12 +08:00
C.S.M
eef9c4053c Merge branch 'feat/temperature_p4' into 'master'
feat(temperature_sensor): Add temperature sensor support on esp32p4

Closes IDF-7482 and IDF-7485

See merge request espressif/esp-idf!28075
2023-12-27 09:48:44 +08:00
Cao Sen Miao
ccc3f13efa fix(tsens): temp commit hello dfdfd dfafsdf fdfsdfs 2023-12-26 16:50:38 +08:00
Cao Sen Miao
439bc719fe feat(temperature_sensor): Add temperature sensor support on esp32p4 2023-12-26 16:45:20 +08:00
Armando
71202c701f change(ldo): do vddpst ldo init in early stage 2023-12-26 11:43:33 +08:00
Armando (Dou Yiwen)
4ca2cd16d0 Merge branch 'feat/mpll_support_on_esp32p4' into 'master'
feat(mpll): supported mpll configure api

Closes IDF-8885

See merge request espressif/esp-idf!28009
2023-12-22 09:41:38 +08:00
Armando
27b1e4dc87 feat(mpll): supported mpll configure ll api 2023-12-21 16:26:03 +08:00
morris
eeae70ddf3 fix(dw_gdma): wrong master port setting for destination 2023-12-21 10:41:27 +08:00
Song Ruo Jing
d7b3bf0b69 Merge branch 'fix/esp32p4_gpio_pins' into 'master'
change(gpio): esp32p4 available pins are GPIO0 ~ GPIO54

Closes IDF-7735

See merge request espressif/esp-idf!28016
2023-12-20 16:39:21 +08:00
Song Ruo Jing
f244dc693d Merge branch 'feature/esp32p4_regi2c_support' into 'master'
feat(regi2c): support regi2c for esp32p4

Closes IDF-8825

See merge request espressif/esp-idf!28011
2023-12-20 11:43:36 +08:00
Song Ruo Jing
20f6505aa6 change(gpio): esp32p4 available pins are GPIO0 ~ GPIO54 2023-12-20 11:23:32 +08:00
Fu Zhibo
4149148fa2 feat(regi2c): support regi2c for esp32p4 2023-12-19 19:22:51 +08:00