Commit Graph

2161 Commits

Author SHA1 Message Date
TD-er
a4bfa19ebd fix(spi): Correct REG_SPI_BASE(i) macro for all targets
The existing formula can never match these registers.

Closes https://github.com/espressif/esp-idf/pull/12559
Closes https://github.com/espressif/esp-idf/pull/12562
2023-12-06 14:44:26 +08:00
Guillaume Souchere
66759438a9 fix(heap): Update the heap memory layout on esp32p4 target
- fix the value of SOC_ROM_STACK_START in soc.h
- Update the memory usage of ROM bootloader appendix in bootloader.ld
- Update the soc_memory_regions table to minimize the number of regions
  created after the startup stack is added back as a heap.
2023-12-06 04:48:00 +00:00
Darian Leung
e9c617fa19 refactor(soc): SOC_USB_PERIPH_NUM option
This commit refactors SOC_USB_PERIPH_NUM as follows:

- Renamed to SOC_USB_OTG_PERIPH_NUM to avoid confusion with USB Serial JTAG
- Updated to unsigned integer "1U"
- Updated some build rules to depend on SOC_USB_OTG_SUPPORTED instead
2023-12-05 16:44:46 +01:00
harshal.patil
a168fde297
fix(soc/esp32h2): Fix llperi_rng_data field discrepancy 2023-12-05 21:08:33 +05:30
harshal.patil
8558aa4414
fix(soc/esp32c6): Fix llperi_rng_data field discrepancy 2023-12-05 21:08:32 +05:30
gaoxu
44f266693a fix(adc): restore cali registers after light sleep wake up on H2 and enable test 2023-12-04 12:03:49 +08:00
Song Ruo Jing
55ed548cc6 fix(console): enable to select UART1 port for console output
This feature was only enabled for esp32, esp32s2, esp32s3 previously.
Now, enabling this feature for all targets.
2023-11-30 11:26:09 +08:00
Mahavir Jain
d3b4acf7a0 fix(esp32h2): program use_hardware_k efuse bit for ECDSA key purpose
In ESP32-H2, the ECDSA peripheral by default uses the TRNG (hardware)
generated k value but it can be overridden to software supplied k.
This can happen through by overriding the `ECDSA_SOFTWARE_SET_K` bit
in the configuration register. Even though the HAL API is not exposed
for this but still it could be achieved by direct register
programming. And for this scenario, if sufficiently random k is not
supplied by the software then it could posses a security risk.

In this change, we are unconditionally programming the efuse
`ESP_EFUSE_ECDSA_FORCE_USE_HARDWARE_K` bit during startup security
checks itself. Additionally, same is ensured in the `esp_efuse_write_key`
API as well. This always enforces the hardware k mode in the ECDSA
peripheral and ensures strongest possible security.
2023-11-17 07:13:53 +00:00
wuzhenghui
600986cf49
fix(riscv): supports 1 byte and larger than 64byte range watchpoint setting 2023-11-16 20:23:57 +08:00
wuzhenghui
4379d26f65
change(soc): rename SOC_CPU_WATCHPOINT_SIZE to SOC_CPU_WATCHPOINT_MAX_REGION_SIZE 2023-11-16 20:23:57 +08:00
muhaidong
9583c45947 fix(wifi): fix deinit init wifi scan fail issue 2023-11-14 19:29:03 +08:00
gaoxu
7f3221aa09 feat(adc_cali): Add ADC calibration support for ESP32H2 2023-11-06 10:57:36 +08:00
Jin Cheng
b9ed6f722b feat(bt/bluedroid): Added mode to use BlueDroid host only without Bluetooth Controller 2023-11-02 11:10:24 +08:00
morris
80997d5860 fix(i2c): read write FIFO memory by volatile 2023-10-30 10:34:43 +08:00
Konstantin Kondrashov
a304cc230e Merge branch 'feature/esp32h2_adds_adc_calib_efuses' into 'master'
feat(efuse): Adds efuse ADC calibration data for ESP32H2

See merge request espressif/esp-idf!26305
2023-10-25 15:58:24 +08:00
C.S.M
fec9a11f4a Merge branch 'feature/i2c_slave_new_driver' into 'master'
feat(i2c_slave): Add new APIs for I2C-slave, and add multi-board tests with I2C-master

Closes IDF-8111

See merge request espressif/esp-idf!25403
2023-10-25 01:22:05 +08:00
Cao Sen Miao
8d639492f2 feat(i2c_slave): Add new implementation and API for I2C slave 2023-10-24 18:44:49 +08:00
Xiao Xufeng
88954841b1 doc(spi_flash): hide unsupported optional features 2023-10-24 10:38:11 +08:00
Omar Chebib
a8b1475fe7 feat(riscv): implement coprocessors save area and FPU support
This commit mainly targets the ESP32-P4. It adds supports for coprocessors on
RISC-V based targets. The coprocessor save area, describing the used coprocessors
is stored at the end of the stack of each task (highest address) whereas each
coprocessor save area is allocated at the beginning of the task (lowest address).
The context of each coprocessor is saved lazily, by the task that want to use it.
2023-10-23 11:10:28 +08:00
wuzhenghui
6a436286dc feat(esp_hw_support): add api to gpio driver to support output internal clock on GPIO 2023-10-20 14:35:26 +08:00
Armando
2d3736fa11 change(sdmmc): update the volatile location of the sdmmc_struct.h 2023-10-18 11:57:55 +00:00
Armando
70314b56d5 feat(sdmmc): supported sd2.0 on esp32p4 2023-10-18 11:57:55 +00:00
Wan Lei
9f413d5d8d Merge branch 'feature/esp32p4_hp_ledc_support' into 'master'
feat(ledc): support ledc on esp32p4

Closes IDF-6510

See merge request espressif/esp-idf!25356
2023-10-18 15:27:54 +08:00
Mahavir Jain
2407813a67 Merge branch 'feature/update_esp32c6-h2_apm_api' into 'master'
apm: updated APM HAL/LL APIs.

See merge request espressif/esp-idf!26368
2023-10-18 12:26:38 +08:00
Sachin Billore
c106f5caf6 apm: updated APM HAL/LL APIs. 2023-10-17 18:20:36 +05:30
Armando (Dou Yiwen)
056558e870 Merge branch 'feat/added_flash_operation_range_macros' into 'master'
soc: added flash operation range macros in ext_mem_defs.h

Closes IDF-7918

See merge request espressif/esp-idf!26488
2023-10-17 18:19:35 +08:00
wanlei
57614bbad2 feat(ledc): support ledc on esp32p4 2023-10-17 16:40:04 +08:00
Mahavir Jain
c4e4629049 Merge branch 'feature/add_key_manager_hal_layer' into 'master'
Add LL & HAL for Key Manager and HUK

Closes IDF-7985 and IDF-7901

See merge request espressif/esp-idf!25167
2023-10-17 12:39:02 +08:00
Armando
17063b51e0 feat(soc): added flash operation range macros in ext_mem_defs.h 2023-10-16 17:19:04 +08:00
Michael (XIAO Xufeng)
2308292ca3 Merge branch 'bugfix/revert_pvt' into 'master'
Revert "feat(volt): chip auto adjust volt for esp32c6 & esp32h2"

See merge request espressif/esp-idf!26425
2023-10-16 12:53:07 +08:00
Aditya Patwardhan
ade65add54 feat(hal): Added HAL and LL layer for Key Manager 2023-10-16 09:26:37 +05:30
Mahavir Jain
1501aef1b3 Merge branch 'feature/enable_secure_boot_esp32p4' into 'master'
feat(secure_boot): add secure boot support for esp32p4

Closes IDF-7544 and IDF-7745

See merge request espressif/esp-idf!26335
2023-10-16 11:07:14 +08:00
Erhan Kurubas
681647f1eb Merge branch 'fix_esp32s3_irq_names' into 'master'
fix(interrupts): reorder esp32s3 irq names to align with the respective irq numbers

See merge request espressif/esp-idf!26442
2023-10-14 04:20:27 +08:00
Song Ruo Jing
d73bf72885 Merge branch 'feature/gpio_dump_io_info' into 'master'
feat(gpio): add a dump API to dump IO configurations

Closes IDFGH-10987

See merge request espressif/esp-idf!26158
2023-10-13 22:35:59 +08:00
C.S.M
e19324b4fa Merge branch 'bugfix/h2_i2c1_no_signal' into 'master'
fix(i2c): I2C port 1 doesn't work on esp32h2

See merge request espressif/esp-idf!26416
2023-10-13 15:01:34 +08:00
Erhan Kurubas
c418a39f41 fix(interrupts): reorder esp32s3 irq names to align with the respective irq numbers 2023-10-12 13:24:24 +02:00
Song Ruo Jing
321f628ff5 feat(gpio): add a dump API to dump IO configurations
Closes https://github.com/espressif/esp-idf/issues/12176
2023-10-12 17:34:20 +08:00
zlq
9c2d470465 feat(bootloader): adjust dbias of bootloader, change clock of H2 to 64
MHz
2023-10-12 14:51:54 +08:00
Xiao Xufeng
28ba080c5e Revert "feat(volt): chip auto adjust volt for esp32c6 & esp32h2"
This reverts commit b221f87e00.
2023-10-12 14:51:54 +08:00
harshal.patil
f46a93e565
feat(secure_boot): add secure boot support for esp32p4 2023-10-12 10:12:54 +05:30
Cao Sen Miao
d7e543583b fix(i2c): I2C port 1 doesn't work on esp32h2 2023-10-11 17:06:39 +08:00
morris
66497af276 feat(hal): enable hal host test 2023-10-11 11:23:24 +08:00
Wan Lei
f92b18053a Merge branch 'feature/esp32p4_hp_spi_support' into 'master'
Feature/esp32p4 hp spi master driver support

Closes IDF-7502

See merge request espressif/esp-idf!24963
2023-10-09 18:37:35 +08:00
wanlei
00fcdce725 feat(spi_master): p4 add master driver supported 2023-10-08 14:45:12 +08:00
gaoxu
bc2a6bd730 feat(uart): spilt LP and HP uart set_baudrate function 2023-10-08 10:10:02 +08:00
gaoxu
4f24f805cc feat(uart): add LP-UART GPIO support 2023-10-08 10:10:02 +08:00
gaoxu
3e3e928209 feat(uart): move periph_ll_uart_enabled to uart_ll.h 2023-10-08 10:10:02 +08:00
gaoxu
4541ad134d feat(uart): add RCC atomic block to uart/lp-uart peripheral 2023-10-08 10:10:02 +08:00
gaoxu
c7afa0dcef feat(uart): uart(hp,lp) support on esp32p4 2023-10-08 10:10:00 +08:00
Gao Xu
56f991d7d9 Merge branch 'bugfix/fix_adc_sar_set_power_mode_no_effect' into 'master'
ADC: Fixed wrong ADC reading issue caused by ADC and WiFi power conflict on ESP32C6

Closes IDF-8118

See merge request espressif/esp-idf!25927
2023-10-07 18:23:27 +08:00
Armando (Dou Yiwen)
7d8f015a4c Merge branch 'feat/cache_msync_doc' into 'master'
doc: added cache msync doc

Closes IDF-8294

See merge request espressif/esp-idf!26239
2023-10-06 06:01:35 +08:00
KonstantinKondrashov
071d1cf865 feat(efuse): Adds efuse ADC calibration data for ESP32H2 2023-10-04 16:00:01 +08:00
wuzhenghui
c8083b07bf feat(modem_clock): separate management of modem_adc_common_fe clock and modem_private_fe 2023-09-28 17:41:42 +00:00
Kevin (Lao Kaiyao)
4c6f4b39f1 Merge branch 'feature/support_i2s_on_p4' into 'master'
feat(i2s): support i2s on esp32p4

Closes IDF-6508

See merge request espressif/esp-idf!24280
2023-09-29 00:50:04 +08:00
morris
4a40c7bb5e Merge branch 'feature/dwgdma_low_level' into 'master'
dw-gdma: add low level functions

See merge request espressif/esp-idf!25912
2023-09-29 00:21:41 +08:00
Armando
4215adcdb4 feat(cache): added cache msync doc 2023-09-28 15:53:19 +08:00
laokaiyao
e1039f9ce2 fix(i2s_platform): merge the i2s platform acquire API 2023-09-28 15:03:27 +08:00
laokaiyao
72a0746e62 refactor(apll): move the apll soc caps to clk_tree_ll 2023-09-28 15:03:27 +08:00
laokaiyao
0b0f25c30d feat(i2s): supported getting the tx sync count and specify interrupt flags 2023-09-28 15:03:27 +08:00
laokaiyao
cf889f3c6d feat(i2s): support i2s on esp32p4 2023-09-28 15:03:27 +08:00
zlq
b221f87e00 feat(volt): chip auto adjust volt for esp32c6 & esp32h2 2023-09-28 05:55:42 +00:00
morris
cdc905ffe0 feat(dw_gdma): initial low level driver
feat(dw_gdma): initial low level driver
2023-09-28 02:17:08 +00:00
Jiang Jiang Jian
500d415da0 Merge branch 'support/esp_phy_init_refactor' into 'master'
feat(phy): Add modem type to phy init

Closes TZ-183, TZ-184, WIFI-6117, and WIFI-6204

See merge request espressif/esp-idf!25027
2023-09-27 18:48:30 +08:00
Kevin (Lao Kaiyao)
cf54ebc9c1 Merge branch 'feature/support_parlio_tx_on_p4' into 'master'
feat(parlio_tx): supported parlio tx on p4

Closes IDF-7472

See merge request espressif/esp-idf!25365
2023-09-27 12:33:34 +08:00
Kevin (Lao Kaiyao)
9a239b8367 Merge branch 'feature/support_analog_comparator_on_p4' into 'master'
feat(ana_cmpr): supported analog comparator on esp32p4

Closes IDF-7479

See merge request espressif/esp-idf!24873
2023-09-27 04:24:09 +08:00
alanmaxwell
503299fb32 fix(phy): Fix PHY enabled enter WiFi RX state default 2023-09-26 16:23:58 +08:00
Jiang Jiang Jian
17ae394fd1 Merge branch 'feature/update_esp32h2_sleep_logic' into 'master'
feat(pm): remove SOC_PM_RETENTION_HAS_CLOCK_BUG for esp32h2

See merge request espressif/esp-idf!26081
2023-09-26 16:11:25 +08:00
laokaiyao
ff7a11e539 feat(ana_cmpr): supported etm in analog comparator example 2023-09-25 19:57:34 +08:00
laokaiyao
bf2a5653a9 feat(ana_cmpr): supported analog comparator etm function on p4 2023-09-25 19:57:34 +08:00
laokaiyao
a989ce4ab1 feat(ana_cmpr): supported analog comparator on esp32p4 2023-09-25 19:57:34 +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
laokaiyao
28a45e20b8 feat(parlio_tx): supported parlio tx on p4 2023-09-25 10:42:30 +08:00
Ivan Grokhotkov
2ac972e2c7
fix(soc): update SOC_IROM_MASK_HIGH for esp32, c6, h2 for consistency 2023-09-22 16:13:41 +02:00
Ivan Grokhotkov
735fab40cd
fix(soc): correct SOC_IROM_MASK_HIGH for esp32s3
Fixes corrupted backtraces on S3 when a function is in ROM.

Closes https://github.com/espressif/esp-idf/issues/11512
2023-09-22 16:13:41 +02:00
Armando
ea38a2e9a4 feat(cache): support cache driver on esp32p4 2023-09-22 14:19:41 +08:00
Song Ruo Jing
98abcbabea Merge branch 'feature/esp32p4_lp_io_support' into 'master'
feat(lp_io): Add support for ESP32P4

Closes IDF-7815

See merge request espressif/esp-idf!25991
2023-09-21 15:20:13 +08:00
cjin
40996f804a change: remove has clock bug macro for esp32h2 2023-09-21 11:31:53 +08:00
morris
8d17265bb7 Merge branch 'feature/support_rmt_esp32p4' into 'master'
RMT driver support on ESP32-P4

Closes IDF-7476 and IDF-7730

See merge request espressif/esp-idf!25680
2023-09-20 23:11:11 +08:00
Song Ruo Jing
2d458a3f93 feat(lp_io): Add support for ESP32P4 2023-09-20 19:39:41 +08:00
Konstantin Kondrashov
ecf4968e1c Merge branch 'feature/esp32p4_support_ipc' into 'master'
feat(esp_system): Support IPC_ISR for ESP32P4

Closes IDF-7769

See merge request espressif/esp-idf!25812
2023-09-19 13:26:52 +08:00
morris
6bb05cccdd feat(rmt): add driver support for esp32p4
including DMA feature
2023-09-19 12:54:14 +08:00
Michael (XIAO Xufeng)
efb9d9e7d4 Merge branch 'esp32_s2_s3_cpu_freq_to_pll' into 'master'
EspS2/S3: fixed the bug of insufficient voltage when the CPU switches frequency

See merge request espressif/esp-idf!25396
2023-09-18 20:01:31 +08:00
morris
fd26abebce Merge branch 'refactor/mcpwm_rcc_atomic' into 'master'
MCPWM: add RCC low level functions

Closes IDF-7731, IDF-7722, IDF-7716, IDF-7738, and IDF-7713

See merge request espressif/esp-idf!25959
2023-09-16 01:04:54 +08:00
KonstantinKondrashov
7a878bdc50 feat(esp_system): Support IPC_ISR for ESP32P4 2023-09-15 23:38:12 +08:00
Marius Vikhammer
addfc0d870 Merge branch 'feature/p4_reset_reason' into 'master'
system: support reset reason on esp32p4

Closes IDF-8072 and IDF-7791

See merge request espressif/esp-idf!25693
2023-09-15 15:25:03 +08:00
morris
3234ee3f9e refactor(mcpwm): add RCC related LL functions 2023-09-15 13:33:01 +08:00
Marius Vikhammer
e58becec0a feat(esp-system): support reset reasons on P4 2023-09-15 08:11:34 +08:00
Planck (Lu Zeyu)
255d499884 fix(ll): fix cpp compile error
Merges https://github.com/espressif/esp-idf/pull/12093

fix(ll): remove FLAG_ATTR macro

Such kind of operator overload will not work because C++ thinks such overload is ambiguous and it still prefer the built-in one which accepts and returns integer. Manually force type conversion seems to be unavoidable.
2023-09-14 14:48:12 +08:00
Konstantin Kondrashov
054d4943c5 Merge branch 'feature/esp32p4_update_systimer' into 'master'
feat(esp_timer): Support systimer for ESP32P4

Closes IDF-7486 and IDF-7487

See merge request espressif/esp-idf!25688
2023-09-13 19:13:39 +08:00
Konstantin Kondrashov
cbdb799b6f feat(esp_timer): Support systimer for ESP32P4 2023-09-13 19:13:38 +08:00
Marius Vikhammer
573404b328 Merge branch 'bugfix/use_xtal_for_c3_wdt' into 'master'
fix(wdt): changed ESP32-C3 WDT to use XTAL as clock

Closes IDF-6729

See merge request espressif/esp-idf!25867
2023-09-13 10:44:38 +08:00
Marius Vikhammer
7a71454930 fix(wdt): changed WDT clock source to XTAL for C6/H2
Previously it used PLL, but PLL could potentially be powered down by power-management
when CPU frequency changed.
2023-09-12 09:41:24 +08:00
Chen Jichang
7638235311 feat(mcpwm): MCPWM event comparator driver
In esp32p4, the MCPWM has a new feature, mainly ETM-oriented.
Each operator has two event comparators, can generate an event
when the count value of the timer that operator connects is equal
to the value of event comparator.
2023-09-11 16:53:34 +08:00
hongshuqing
77a303276a esp32/esp32s2/esp32s3 cpu freq to pll
add assert for cpu_freq_to_8m

update esp32 DBIAS_XTAL_80M_160M define

delete modify of esp32

remove esp32 comment

restore esp32 modify
2023-09-11 10:40:27 +08:00
Konstantin Kondrashov
2557513fb5 Merge branch 'bugfix/esp32p4_usage_clic_int_thresh_reg' into 'master'
fix(freertos): Use INTERRUPT_CURRENT_CORE_INT_THRESH_REG for esp32p4

See merge request espressif/esp-idf!25840
2023-09-08 22:43:22 +08:00
Marius Vikhammer
ca99f55316 fix(wdt): changed ESP32-C3 WDT to use XTAL as clock
This clock is unchanged even when CPU/APB frequency changes (e.g. due to esp_pm),
which means timeout period is correct even after such a change.
2023-09-08 15:12:21 +08:00
Mahavir Jain
31e37c8313 Merge branch 'esp32p4/add_ecdsa_support' into 'master'
esp32p4: add ecdsa support

Closes IDF-7546

See merge request espressif/esp-idf!25191
2023-09-08 11:20:36 +08:00
Marius Vikhammer
11cf6f60b8 Merge branch 'feature/c6_h2_p4_lp_wdt' into 'master'
LP-WDT: add support for H2/P4

Closes IDF-5730, IDF-6402, IDF-5729, and IDF-7539

See merge request espressif/esp-idf!25782
2023-09-08 10:11:13 +08:00
KonstantinKondrashov
25c7a59e31 fix(freertos): Use INTERRUPT_CURRENT_CORE_INT_THRESH_REG for esp32p4 2023-09-07 15:25:35 +08:00
harshal.patil
d86b320892
feat(ecdsa): add ECDSA peripheral support for esp32p4 2023-09-06 11:07:37 +05:30