Commit Graph

806 Commits

Author SHA1 Message Date
C.S.M
f148acc534 feat(uhci): Add uhci (uart-dma) support on current chips 2025-08-26 16:06:49 +08:00
Song Ruo Jing
a194b02246 fix(ledc): duty_start bit should wait for its self-clear before next set on esp32 2025-08-14 19:07:06 +08:00
morris
e055bd526f Merge branch 'feat/usb-explicit-fifo-config_v5.4' into 'release/v5.4'
feat(usb/hal): Add HAL API to configure custom FIFO layout (backport v5.4)

See merge request espressif/esp-idf!39265
2025-06-30 10:18:31 +08:00
igor.masar
d191538f18 feat(usb/hal): Add support for explicit FIFO configuration
Introduce a new HAL API `usb_dwc_hal_set_fifo_config()` that allows advanced users
to manually configure RX, Non-Periodic TX, and Periodic TX FIFO sizes. This offers
fine-grained control beyond the previous bias-based sizing approach.

The HAL function no longer returns `esp_err_t`, and internal validations are enforced
via `HAL_ASSERT()`. Responsibility for input validation has been moved to the HCD layer.

FIFO configuration must be applied before any USB pipes are created or activated.
This feature is intended for use during `usb_host_install()`.

If no custom FIFO configuration is provided (i.e., all values are zero),
the driver falls back to a bias-based default layout based on Kconfig settings
(`CONFIG_USB_HOST_HW_BUFFER_BIAS_*`). Bias resolution is done inside `hcd_port_init()`.

The `port_obj_t` structure has been extended with a `fifo_config` field, which stores
the configuration to allow re-application after a USB port reset.

Obsolete FIFO bias enums (`usb_hal_fifo_bias_t`, `hcd_port_fifo_bias_t`) and related
APIs (`hcd_port_set_fifo_bias()`) have been removed in favor of the new structure-based mechanism.

The HCD initialization and port reset flow has been updated to use the explicit
FIFO configuration.

USB Host maintainer documentation (`maintainers.md`) has been updated accordingly.
Test cases were updated to remove the usage of removed bias API and now rely on default
or custom FIFO configuration.
2025-05-20 16:11:40 +02:00
Song Ruo Jing
8f231272f6 fix(gpio): fix IO output enable control
oen_sel and oen_inv_sel fields from func_out_sel_cfg register
2025-05-20 15:30:26 +08:00
Song Ruo Jing
6cffc5c994 fix(gpio): fix pu, pd, drv value incorrect from gpio_dump_io_configuration on esp32
Closes https://github.com/espressif/esp-idf/issues/14931
2025-05-20 15:30:14 +08:00
C.S.M
94cbc9bbac fix(i2c): Fix that fsm reset cause i2c scl frequency changed on esp32s2 2025-04-29 16:58:36 +08:00
laokaiyao
8e6a7845b7 fix(touch): fixed tie option take no effect 2025-04-21 20:45:50 +08:00
morris
756cd17c61 Merge branch 'contrib/github_pr_15484_v5.4' into 'release/v5.4'
fix(twai): fixed twai assert fail during recover (GitHub PR) (v5.4)

See merge request espressif/esp-idf!37988
2025-04-14 13:23:02 +08:00
diplfranzhoepfinger
30d871d206 fix(twai): fixed twai assert fail when recover
driver try start new frame in ISR however already bus off

Closes https://github.com/espressif/esp-idf/issues/9697
2025-04-10 20:08:34 +08:00
gaoxu
b227da9b2b ci(adc): enable P4 ADC test and correct ADC performance thresh 2025-04-01 15:05:36 +08:00
morris
57a83359d5 Merge branch 'bugfix/clear_ledc_gamma_ram_v5.4' into 'release/v5.4'
fix(ledc): left-off gamma ram registers should be cleared (v5.4)

See merge request espressif/esp-idf!37572
2025-04-01 11:13:32 +08:00
morris
8bce1430ee Merge branch 'bugfix/lp_uart_baudrate_limitation_v5.4' into 'release/v5.4'
fix(uart): LP UART does not have the pre-divider for its clock source (v5.4)

See merge request espressif/esp-idf!37594
2025-04-01 10:35:29 +08:00
peter.marcisovsky
1b4fd125c4 fix(jpeg_decoder): Correctly handle invalid 0xffff JPEG marker 2025-03-14 22:16:27 +08:00
Song Ruo Jing
e774dbfd0f fix(uart): LP UART does not have the pre-divider for its clock source
Closes https://github.com/espressif/esp-idf/issues/15427
2025-03-10 15:29:09 +08:00
Song Ruo Jing
b2dbcd7804 fix(ledc): left-off gamma ram registers should be cleared
Hardware reads in (range_number+1) fade parameter registers, which could
cause output waveform error.
2025-03-07 17:22:39 +08:00
Aditya Patwardhan
2ff128ebf4 fix(soc): Fixed ECDSA register compatibility 2025-02-20 21:03:10 +08:00
Mahavir Jain
748d29b5ad feat(ecc): enable ECC constant time mode for ESP32-H2 ECO5 2025-02-20 21:03:10 +08:00
morris
cf392937b6 Merge branch 'feature/flash_software_resume_v5.4' into 'release/v5.4'
feat(spi_flash): Add config for adding auto check status after suspend to improve performance (backport v5.4)

See merge request espressif/esp-idf!36525
2025-02-20 10:52:17 +08:00
Armando
7bbfe91432 fix(mmu): fixed esp_mmu_vaddr_to_paddr cannot figure out psram vaddr issue on esp32p4 2025-02-18 11:49:45 +08:00
Mahavir Jain
649f9a72ae Merge branch 'feat/support_aes_pseudo_round_func_in_esp32h2_eco5_v5.4' into 'release/v5.4'
Support AES and XTS-AES's pseudo round function in ESP32H2-ECO5 (v5.4)

See merge request espressif/esp-idf!36463
2025-01-23 13:20:20 +08:00
morris
206b3a22ad Merge branch 'feat/spi_std_timing_and_bit_trans_v5.4' into 'release/v5.4'
feat(driver_spi): support adjust master rx to standard timing (v5.4)

See merge request espressif/esp-idf!36399
2025-01-23 10:38:07 +08:00
harshal.patil
e3acb360e3 feat(hal/spi_flash_encrypted): Enable pseudo rounds function during XTS-AES operations 2025-01-21 12:28:23 +05:30
harshal.patil
7d803e661e feat(hal/aes): Enable pseudo rounds function during AES operations 2025-01-21 12:28:23 +05:30
C.S.M
82b3f5413c feat(spi_flash): Add config for adding auto check status after suspend to improve performance 2025-01-21 14:50:23 +08:00
C.S.M
c4bb6a3970 feat(spi_flash): support software resume after suspend in unicore 2025-01-21 14:50:23 +08:00
wanckl
6c6454357c feat(driver_spi): support using SPI_DEVICE_STD_TIMING to adjust master rx in standard timing 2025-01-17 10:51:47 +08:00
Tomas Rezucha
f93e1bc43b refactor(usb/phy): Start using values from usb_dwc_info in PHY driver
Add tests for PHY sanity checks
2025-01-08 09:26:48 +01:00
Tomas Rezucha
ac3a3f801d feat(hal/usb): Explicitly enable clock and reset USB WRAP on init 2025-01-08 09:25:42 +01:00
Shu Chen
ebd77e121d Merge branch 'feat/set_get_ack_timeout_v5.4' into 'release/v5.4'
feat(802.15.4): add api for set/get ack timeout (v5.4)

See merge request espressif/esp-idf!36085
2025-01-07 14:54:16 +08:00
Zhuang Hang
e9220ca8e6 feat(802.15.4): add api for set/get ack timeout (v5.4) 2025-01-07 14:54:16 +08:00
Jiang Jiang Jian
7cd2a1483e Merge branch 'fix/fix_p4_deepsleep_io_leakage_v5.4' into 'release/v5.4'
fix(esp_hw_support): fix esp32p4 JTAG pad deepsleep current leakage (v5.4)

See merge request espressif/esp-idf!36008
2025-01-07 10:53:13 +08:00
wuzhenghui
c7c70a8ec6 fix(esp_hw_support): fix esp32p4 JTAG pad deepsleep current leakage 2024-12-26 16:03:42 +08:00
morris
00f21c37fe feat(lcd): increase the upper limit of pclk frequency for RGB LCD 2024-12-25 10:29:08 +08:00
wanckl
5703a780af fix(esp_adc): fixed adc continue monitor don't work issue
Closes https://github.com/espressif/esp-idf/issues/14769
Closes https://github.com/espressif/esp-idf/issues/14814
2024-12-11 17:36:57 +08:00
morris
e422e12f17 Merge branch 'feat/dynamic_usb_hal_backport_v5.4' into 'release/v5.4'
feat(hal/usb): Make USB-DWC HAL&LL configuration independent backport v5.4

See merge request espressif/esp-idf!34812
2024-11-18 21:40:16 +08:00
Tomas Rezucha
68a95f5c94 feat(hal/usb): Make USB-DWC HAL&LL configuration independent
Previously, we included symbols from soc/usb_dwc_cfg.h and configured
the HAL and LL according to it. Now we get the configuration in runtime
from USB-DWC registers.

Added missing definition for USB FS peripheral on ESP32-P4.
2024-11-15 00:36:10 +08:00
C.S.M
56625cda88 feat(i2c_slave): refactor i2c slave api to version 2 inorder to solve some existing problem 2024-11-14 18:02:15 +08:00
morris
49fbe54bc4 feat(lcd): support color conversion for mipi dsi driver 2024-11-08 15:23:06 +08:00
Aditya Patwardhan
e5d246ef27 feat(hal): esp32c5: Add hal layer for key manager 2024-10-28 11:13:43 +08:00
Tomas Rezucha
c1f5d3067f feat(hal/usb): Add USB UTMI PHY HAL
* Add a bare-bones HAL API for the USB UTMI PHY
* Split USB-DWC LL per target
2024-10-24 15:18:30 +08:00
Armando
0e1ee38ae8 feat(isp): added lsc feature 2024-10-18 11:29:56 +08:00
Lou Tianhao
aa7b7f225a change(esp_hw_support): change modem clock implementation 2024-10-11 14:01:59 +08:00
Wan Lei
5effb7491f Merge branch 'fix/spi_slave_no_dma_rx_overwrite' into 'master'
fix(driver_spi): fixed slave no dma rx overwrite when trans_len below or over

Closes IDFGH-13574

See merge request espressif/esp-idf!33377
2024-09-25 14:37:09 +08:00
Mahavir Jain
bfd4085bea Merge branch 'feat/support_ecc_constant_time_mul_operations' into 'master'
feat(mbedtls/ecc): Support ECC hardware constant-time point multiplication operations

Closes IDF-10327

See merge request espressif/esp-idf!31888
2024-09-25 12:53:45 +08:00
wanckl
9394b169c6 fix(driver_spi): fixed slave no dma rx overwrite when trans_len below or over
Closes https://github.com/espressif/esp-idf/issues/14462
2024-09-24 12:11:36 +08:00
Aditya Patwardhan
11128b73f5 feat(hal): Add countermeasure for ECDSA generate signature
The ECDSA peripheral before ECO5 of esp32h2 does not perform the ECDSA
    sign operation in constant time. This allows an attacker to read the
    power signature of the ECDSA sign operation and then calculate the
    ECDSA key stored inside the eFuse. The commit adds a countermeasure
    for this attack. In this case the real ECDSA sign operation is
    masked under dummy ECDSA sign operations to hide its real power
    signature
2024-09-23 18:55:43 +08:00
harshal.patil
2bf6a3cf8b feat(hal/ecc): Support ECC hardware constant-time point multiplication operations 2024-09-20 18:46:50 +05:30
Song Ruo Jing
2cef80666b Merge branch 'feature/gpio_add_direction' into 'master'
feat(gpio): allow appending mode to IOs

See merge request espressif/esp-idf!33181
2024-09-12 18:20:11 +08:00
Wu Zheng Hui
6abe40e590 Merge branch 'feature/optimize_esp32p4_active_power_eco1' into 'master'
feat(system): Optimize esp32p4 active state  power consumption

Closes PM-103 and IDF-7688

See merge request espressif/esp-idf!32950
2024-09-11 23:15:29 +08:00