Commit Graph

1192 Commits

Author SHA1 Message Date
harshal.patil
4ae1ea7b9f bignum: refactored the hardware abstraction of the mpi peripheral
- `<target>/bignum.c` is replaced by mpi_ll.h ll layer.
- added the mpi hal layer.
2023-04-24 16:15:11 +05:30
Ondrej Kosta
22caec278f Merge branch 'feature/emac_hal_cleanup' into 'master'
wrapped emac_ll functions to emac_hal

Closes IDFGH-8474

See merge request espressif/esp-idf!23078
2023-04-24 15:47:29 +08:00
Wan Lei
06a40598bf Merge branch 'feature/spi_hal_move_out_iram' into 'master'
spi: change linker file to move spi hal out from iram

Closes IDF-7163

See merge request espressif/esp-idf!23036
2023-04-24 10:15:10 +08:00
Michael (XIAO Xufeng)
59a899230c Merge branch 'feature/support_fosc_calibration_c6_eco1' into 'master'
ESP32C6: Fix fosc calibration fail bug for ECO1 & Above

Closes IDF-7093

See merge request espressif/esp-idf!23215
2023-04-23 18:04:28 +08:00
hongshuqing
e3148369f3 support c6 eco1 fosc calibration
support c6 eco1 fosc calibration

support c6 eco1 fosc calibration

support c6 eco1 fosc calibration

Apply suggestion

Apply

support c6 eco1 fosc calibration

support c6 eco1 fosc calibration
2023-04-23 13:36:20 +08:00
wanlei
15e8c04f7b spi: change linker file let spi hal able to out from iram 2023-04-21 18:58:36 +08:00
Song Ruo Jing
fcc6514dde ledc: Add an all-in-one HAL function to set fade parameters, and refactor ledc_ll_get_max_duty function 2023-04-21 16:40:54 +08:00
Cao Sen Miao
a3d962d89a brownout: Disable the hardware BOD when BOD interrupt is enabled 2023-04-21 10:22:59 +08:00
laokaiyao
b7053b46ef esp32h4: remove esp32h4 target from peripherals 2023-04-20 15:19:45 +08:00
Ondrej Kosta
c231c79fc8 HAL: wrapped emac_ll functions to emac_hal
Closes #9934
2023-04-19 12:46:45 +00:00
Mahavir Jain
359da9ce63 Merge branch 'bugfix/efuse_hal_api_update' into 'master'
efuse: add efuse hal api

Closes IDF-7215

See merge request espressif/esp-idf!23217
2023-04-19 18:45:13 +08:00
Sachin Billore
c3e701588e efuse: add efuse hal api
Closes IDF-7215
2023-04-18 13:47:00 +05:30
Kevin (Lao Kaiyao)
96f2d215a2 Merge branch 'bugfix/i2s_output_wrong_freq_after_switch' into 'master'
i2s: workaround for inaccurate PLL frequency after switching

Closes IDF-6705 and IDFCI-1669

See merge request espressif/esp-idf!22975
2023-04-17 16:26:18 +08:00
Omar Chebib
3bc3f87209 Merge branch 'bugfix/i2c_timing_wrong' into 'master'
i2c: fix a bug in sda sample timing

Closes IDFGH-8295

See merge request espressif/esp-idf!23185
2023-04-17 15:00:42 +08:00
laokaiyao
a143a85822 i2s: workaround for inacurate PLL frequency after switching 2023-04-17 03:15:55 +00:00
Ondrej Kosta
6ed31a98bd Merge branch 'bugfix/eth_driver_cleanup' into 'master'
Ethernet driver and documentation clean-up

Closes IDF-6339

See merge request espressif/esp-idf!23051
2023-04-13 15:07:43 +08:00
Omar Chebib
a0f8434f93 i2c: fix a bug in sda sample timing
* Closes https://github.com/espressif/esp-idf/issues/9777

This bug prevented SCL line to work properly after a NACK was received in master mode.
2023-04-13 14:37:44 +08:00
Sachin Parekh
d634970ed1 ecdsa: Support multiple ECDSA keys
Add provision to choose which efuse block should be used as ECDSA
private key
2023-04-07 14:55:21 +05:30
Sachin Parekh
aa7660c9b4 ecdsa_hal.c: Add missing configuration for signature generation 2023-04-07 14:55:21 +05:30
Song Ruo Jing
44915e4251 Merge branch 'bugfix/ledc_channel_update_regression' into 'master'
ledc: Fix two bugs inside LEDC driver

See merge request espressif/esp-idf!23064
2023-04-06 20:52:23 +08:00
Song Ruo Jing
5070e51dde ledc: Fix two bugs inside LEDC driver
1. Regression introduced when refactoring on clock sources selection (0d07f859).
   If channel configuration is called before timer configuration on C6, PWM signal may not be able to output.
2. Missing the improper fade parameter fix inside ledc_set_duty_and_update() function.
2023-04-06 12:37:33 +08:00
morris
1429913042 gdma: support override default channel priority 2023-04-06 10:49:32 +08:00
KonstantinKondrashov
5b00d1f396 efuse: Update efuses for esp32 esp32c2 esp32c3 esp32s2 esp32s3 2023-04-04 22:32:32 +08:00
Ondrej Kosta
3d66a10114 Ethernet driver and documentation clean-up 2023-04-04 11:33:08 +00:00
Armando
6d4c0bb3aa mspi: support 120M DDR flash and psram on S3 (experimental) 2023-04-03 10:30:50 +08:00
morris
76ac9b0ecf Merge branch 'bugfix/rmt_calarify_mem_block_symbols' into 'master'
Bugfix/rmt calarify mem block symbols

See merge request espressif/esp-idf!22966
2023-03-30 15:50:10 +08:00
morris
90c32e8021 Merge branch 'bugfix/glitch_filter_hw_issue' into 'master'
filter: workaround a hw issue in the glitch filter

See merge request espressif/esp-idf!22951
2023-03-30 11:31:06 +08:00
morris
d82981c437 rmt: use gpio_num_t to define gpio number 2023-03-30 10:30:27 +08:00
Konstantin Kondrashov
6c5a7da77c Merge branch 'feature/unicore_bootloader_can_run_multicore_app' into 'master'
esp_system: Fix case when multicore app can not be run if bootloader is unicore

Closes IDFGH-9336

See merge request espressif/esp-idf!22664
2023-03-29 21:56:26 +08:00
Wu Zheng Hui
ee05082e35 Merge branch 'feature/support_esp32h2_modem_clock' into 'master'
esp32h2: support modem clock driver

Closes IDF-7088

See merge request espressif/esp-idf!22880
2023-03-29 16:49:26 +08:00
morris
1375627461 filter: workaround a hw issue in the glitch filter
that the internal glitch counter will overflow at 64 constant level
input, causing a wrong filter result
2023-03-29 13:28:07 +08:00
wuzhenghui
485f2882d1 modem_clock: rename modem_clock_lp_timer to ble_rtc_timer 2023-03-29 13:23:32 +08:00
wuzhenghui
43a9456243 modem_clock: implemented the modem clock hal/ll-layer (include modem syscon and lpcon) for esp32h2 2023-03-29 13:23:27 +08:00
KonstantinKondrashov
975c138fad esp_system: Do not rely on bootloader cache settings, do cache settings unconditionally at startup app
It makes multicore app runnable by unicore bootloader

Closes https://github.com/espressif/esp-idf/issues/10714
2023-03-28 23:17:16 +08:00
Zim Kalinowski
ee842a1386 Merge branch 'feature/fix_load_efuses_from_flash_when_real_fe_is_on' into 'master'
efuse(virtual mode): Fix load_efuses_from_flash when FE is on

Closes IDFGH-9580

See merge request espressif/esp-idf!22793
2023-03-28 17:32:11 +08:00
Sachin Parekh
e26018d8ee h2/clk_gate: Clear reset signal of ECDSA peripheral before enabling SHA, RSA or ECC 2023-03-24 10:43:48 +05:30
Sachin Parekh
d345c684ba esp32h2: Add support for ECDSA peripheral 2023-03-24 10:43:40 +05:30
KonstantinKondrashov
88ef0d8aeb efuse: Fix load_efuses_from_flash when FE is on
esp_efuse_utility_load_efuses_from_flash() read emul_efuse
as an encrypted partition, but that is not correct,
this partition was never encrypted.
Need to read it as not encrypted partition.

Fxed the case: If FE is already on then EFUSE VIRT mode can work with it.

Closes https://github.com/espressif/esp-idf/issues/10929
2023-03-23 16:20:43 +08:00
Wan Lei
896f046ac2 Merge branch 'feature/support_spi_slave_hd_append_later_s2' into 'master'
spi_slave: support spi slave hd append mode on chips other than s2

Closes IDF-2943

See merge request espressif/esp-idf!19557
2023-03-23 14:19:32 +08:00
Michael (XIAO Xufeng)
dbbc1ba5be Merge branch 'feat/merge_nuttx_patch' into 'master'
G0, G1: fix issues that prevents using G0/G1 components on other platforms

See merge request espressif/esp-idf!22521
2023-03-21 20:48:21 +08:00
wanlei
66ca403bc6 spi_slave: support spi slave hd append mode on chips other than s2 2023-03-21 11:30:17 +08:00
Armando
eee34bcf70 mspi: fix build failure under assertion disable 2023-03-21 10:14:59 +08:00
Wu Zheng Hui
a79c5ef7ed Merge branch 'bugfix/esp32c6_deep_sleep_minor_fixes' into 'master'
bugfix: esp32c6 deep sleep minor fixes

Closes WIFI-5559, WIFI-5425, WIFI-3494, WIFI-3495, WIFI-4163, and WIFI-4164

See merge request espressif/esp-idf!22697
2023-03-18 14:41:43 +08:00
wuzhenghui
bace80016d bugfix: fix misspell 2023-03-17 19:45:56 +08:00
laokaiyao
53584bb5a7 ana_cmpr: add programming guide 2023-03-17 14:35:55 +08:00
laokaiyao
24361f232d ana_cmpr: add an example and test cases 2023-03-17 11:38:32 +08:00
laokaiyao
c634144ac8 ana_cmpr: designed driver layer 2023-03-17 11:38:32 +08:00
morris
eb7ccbd174 hal: added analog comparator's LL driver 2023-03-17 11:38:32 +08:00
Gustavo Henrique Nihei
866c5cefa4 hal: Fix missing definition for "bool" type
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2023-03-16 01:50:22 +08:00
Jiang Jiang Jian
745c06626d Merge branch 'h2/support-ecc' into 'master'
esp32h2: Add support for ECC hardware accelerator

See merge request espressif/esp-idf!22274
2023-03-15 14:06:23 +08:00
Armando
bae6680207 mmu: hal function to init, and hal function to unmap all 2023-03-15 10:59:20 +08:00
Armando
929b7717ff system: fixed ram app cannot use mmu correctly issue 2023-03-15 10:59:20 +08:00
Sachin Parekh
0342bb8eab esp32c6/ecc: Remove inverse multiplication mode
On C6, inverse multiplication mode is reserved and not available
2023-03-13 16:39:46 +05:30
Sachin Parekh
bbc99e5532 esp32c2/ecc: Remove support for inverse multiplication
On C2, inverse multiplication (division) mode uses the modular base P
instead of N making it impractical for ECC crypto calculation
2023-03-13 16:39:46 +05:30
Sachin Parekh
413fa38a45 hal/test_apps: Add no-os ecc test app 2023-03-13 16:39:46 +05:30
Sachin Parekh
a485b1cb67 esp32h2: Add support for ECC hardware accelerator 2023-03-13 16:39:46 +05:30
Song Ruo Jing
3ec287eaa5 Merge branch 'feature/ledc_gamma_curve_support' into 'master'
ledc: Support gamma curve fade feature

Closes IDF-5811 and IDF-6236

See merge request espressif/esp-idf!22486
2023-03-12 07:54:08 +08:00
C.S.M
b0b99a9a1b Merge branch 'feature/flash_support_h2' into 'master'
spi_flash: Allow clock frequency up to 64M on ESP32H2

See merge request espressif/esp-idf!22476
2023-03-10 19:13:03 +08:00
Song Ruo Jing
79f34fe524 ledc: Support gamma curve fade feature on esp32c6 and esp32h2 2023-03-10 12:42:46 +08:00
Cao Sen Miao
bc655a6890 spi_flash: Allow clock frequency up to 64M, and make it default on ESP32H2 2023-03-10 11:39:53 +08:00
Armando
36532aaea8 mspi: make mspi_timing_tuning.h available for all supported targets 2023-03-09 10:38:32 +00:00
Armando
99882ac2d1 mspi: mspi timing tuning ll 2023-03-09 10:38:32 +00:00
Wu Zheng Hui
31acd5d509 Merge branch 'bugfix/fix_ssc_crash_when_light_sleep_with_main_xtal_power_on' into 'master'
ssc/uart: disable UART_INTR_BRK_DET interrupt to avoid ssc crash when light sleep

See merge request espressif/esp-idf!21252
2023-03-09 14:53:06 +08:00
jingli
238f31d93b uart: add low level func for uart to set err wr mask 2023-03-09 10:28:33 +08:00
Jiang Jiang Jian
7dd7498212 Merge branch 'bugfix/add_mmu_pwr_ctrl_reg_to_retention_link' into 'master'
bugfix: esp32c6 light sleep minor fixes

Closes WIFI-5353

See merge request espressif/esp-idf!22619
2023-03-08 14:44:51 +08:00
Li Shuai
ffcec33057 modem clock: enable all clock enable of wifi module when PMU switch to ACTIVE from sleep state 2023-03-07 16:19:39 +08:00
morris
cc2068684f Merge branch 'feature/support_efuse_for_esp32c6' into 'master'
efuse: Updates efuse table for esp32c6

See merge request espressif/esp-idf!22400
2023-03-06 15:33:11 +08:00
Li Shuai
200f69e6eb auto beacon: support esp32c6 autobeacon (advanced DTIM sleep feature)
modem retention: Support esp32c6 wifi MAC and baseband sleep retention

sleep_modem: wifi MAC modem wakeup protect in modem state before PMU trigger sleep enable request

sleep modem: provide a interface to get whether the Modem power domain is allowed to power off during sleep

add i2c_ana master header file to project

auto beacon: release PMU's lock on root clock source (it is locked in the PLL)

wifi receiving beacon frame in PMU modem state strongly depends on the BBPLL
clock, PMU will forcibly lock the root clock source as PLL, when the root
clock source of the software system is selected as PLL, we need to release
the root clock source locking.

When it is judged that the PLL is locked by PMU after wakeing up from the PMU
modem state, switch the root clock source to the PLL in the sleep process (a
critical section).

auto beacon: fix the failure to receive broadcast/multicast frames in modem state

When the multicast field in the beacon frame received in the PMU modem state is
True, the PMU switches to the PMU active state (the PMU waits for the HP LDO to
stabilize and then restores the MAC context) and starts to receive
broadcast/multicast frames (Broadcast/Multicast frames will be sent after a
minimum delay of 48 us after the beacon frame), because the PMU waits for the HP
LDO to stabilize too long (~154 us), which will cause broadcast/multicast frame
reception to be missed.

auto beacon: select the PLL clock source as the REGDMA backup clock source when the PMU switches to ACTIVE from MODEM state

update Digital Peripheral (M2A switch) REGDMA restore time parameter

auto beacon: fix the issue that only channel 1 can connect to AP in modem state
2023-03-04 00:17:40 +08:00
Wu Zheng Hui
2066977b48 Merge branch 'feature/bringup_esp32c6_deepsleep_support_master' into 'master'
esp32c6: bringup deepsleep examples

Closes IDF-6051, IDF-6052, IDF-5349, IDF-5924, and WIFI-5352

See merge request espressif/esp-idf!22300
2023-03-03 23:53:10 +08:00
Cao Sen Miao
840ff4f865 temperature_sensor: Implement temperature monitor interrupt feature on ESP32H2/ESP32C6 2023-03-03 10:38:40 +08:00
Song Ruo Jing
51777a6862 gpio: Fix io hold functionality on esp32c6 and esp32h2 2023-03-02 18:10:10 +08:00
wuzhenghui
9eae151f7c esp32c6: bringup deepsleep examples 2023-03-02 15:06:05 +08:00
wuzhenghui
d3ec7880fe bugfix: support GPIO current leakage workaround for esp32c6/esp32h2 2023-03-02 15:06:05 +08:00
wuzhenghui
709adaaa37 soc_caps: since esp32c6 only support one ext wakeup src, split SOC_PM_SUPPORT_EXT_WAKEUP
Close IDF-5924
2023-03-02 15:06:05 +08:00
morris
f534247a00 driver: add parallel IO TX driver 2023-03-01 00:43:14 +00:00
KonstantinKondrashov
a0408f7324 efuse: Updates efuse table for esp32c6 2023-02-28 17:13:21 +08:00
Armando
fda9746bb8 esp_mm: cache_msync API 2023-02-28 10:42:22 +08:00
Song Ruo Jing
8486a2c3ad Merge branch 'bugfix/revert_rtc_clock_bbpll_power_on_with_usb' into 'master'
usb_serial_jtag: Improve the code for the issue of usb cdc device unable to work during sleep

Closes IDFGH-6887

See merge request espressif/esp-idf!20973
2023-02-27 23:18:54 +08:00
Mahavir Jain
ad19981af8 Merge branch 'feature/esp32h2_enable_flash_encryption' into 'master'
Feature/esp32h2 enable flash encryption

Closes IDF-6282 and IDF-6680

See merge request espressif/esp-idf!22502
2023-02-27 16:55:32 +08:00
Song Ruo Jing
1a66459b44 usb_serial_jtag: Improve the code for the issue of usb cdc device unable to work during sleep
1. Remove RTC_CLOCK_BBPLL_POWER_ON_WITH_USB Kconfig option
   During sleep, BBPLL clock always gets disabled
   esp_restart does not disable BBPLL clock, so that first stage bootloader log can be printed
2. Add a new Kconfig option PM_NO_AUTO_LS_ON_USJ_CONNECTED
   When this option is selected, IDF will constantly monitor USB CDC port connection status.
   As long as it gets connected to a HOST, automatic light-sleep will not happen.

Closes https://github.com/espressif/esp-idf/issues/8507
2023-02-27 12:10:49 +08:00
Armando (Dou Yiwen)
dc76dde79f Merge branch 'feature/support_c6_cache' into 'master'
cache: support c6/h2 cache error

Closes IDF-5342, IDF-5656, and IDF-6255

See merge request espressif/esp-idf!22078
2023-02-27 11:40:18 +08:00
Aditya Patwardhan
b5b7f32e46 hal/esp32h2: Enable ll layer for flash encryption 2023-02-24 15:21:51 +05:30
Armando
4997689de5 cache: support h2 and c6 cache error 2023-02-24 16:16:46 +08:00
Darian
57b6be22a7 Merge branch 'bugfix/twai_listen_only_errata' into 'master'
TWAI: Add errata workaround for listen only mode

Closes IDFGH-7602

See merge request espressif/esp-idf!22479
2023-02-24 16:12:05 +08:00
Armando (Dou Yiwen)
4452a3cf3e Merge branch 'feature/support_h2_adc' into 'master'
adc: support adc h2

Closes IDF-6124, IDF-6214, IDF-6543, IDF-6215, IDF-6664, and IDF-6695

See merge request espressif/esp-idf!22205
2023-02-24 14:28:33 +08:00
Jing Li
a529771d88 Merge branch 'refactor/pm_use_unified_esp_pm_config_t' into 'master'
pm: refactor pm codes to use unified esp_pm_config_t

See merge request espressif/esp-idf!22472
2023-02-24 14:06:19 +08:00
Marius Vikhammer
c2f9392be5 Merge branch 'feature/h2_wdt' into 'master'
wdt: add support for H2

Closes IDF-6643 and IDF-6678

See merge request espressif/esp-idf!22422
2023-02-24 13:48:20 +08:00
Darian Leung
72becf31e4 twai: Add errata workaround for listen only mode
This commit adds a workaround for the TWAI listen only mode errata which is
present on the ESP32, ESP32-S2, ESP32-S3, and ESP32-C3. twai_get_status_info()
has also been updated to account for the fact that TEC/REC are frozen in
listen only mode.

Errata Description:

When the TWAI controller is put into listen only mode, it should not influence
the TWAI bus in any way (i.e., should never send a dominant bit). However,
on the targets listed above, the TWAI controller will send dominant bits in an
error frame (i.e., active error frame), even if the controller is set to listen
only mode.

Workaround:

We can force the TWAI controller into the error passive state on startup (by
setting the REC to >= 128). Since the TEC/REC are frozen in listen only mode,
the TWAI controller will remain error passive and only send recessive bits
(i.e., passive error frames), thus will not influence the TWAI bus.

Closes https://github.com/espressif/esp-idf/issues/9157
2023-02-23 12:50:06 +08:00
Armando
486c765a93 adc: remove adc_hal_conf.h
Macros inside adc_hal_conf.h are moved to adc_ll.h
2023-02-23 11:48:31 +08:00
Armando
c2d5c19b28 adc: ll enum renaming 2023-02-23 11:48:31 +08:00
Armando
5653018cd1 esp_adc: support selecting clock source for oneshot driver 2023-02-23 11:48:31 +08:00
Armando
d0e4d36fb6 esp_adc: support h2 oneshot mode and continuous mode 2023-02-23 11:48:31 +08:00
jingli
4c3d1e24d7 codeclean: remove unused sleep related functions 2023-02-23 11:36:13 +08:00
Marius Vikhammer
5d26a0de9a wdt: add support for H2 2023-02-23 11:22:51 +08:00
Alexey Lapshin
1484f2d4f6 Merge branch 'feature/update-gnu-toolchain-to-12.2.0_20230208' into 'master'
tools: update GNU toolchain version to 'esp-12.2.0_20230208'

Closes GCC-297, GCC-224, GCC-299, GCC-254, and GCC-256

See merge request espressif/esp-idf!22270
2023-02-23 01:57:51 +08:00
morris
1c9b96ab37 Merge branch 'feature/support_efuse_for_esp32h2' into 'master'
efuse: Add support for esp32h2

Closes IDF-6252, IDF-4337, and IDF-6897

See merge request espressif/esp-idf!22393
2023-02-22 13:41:40 +08:00
Alexey Lapshin
1e65ea8889 hal: always inline mmu_ll_check_valid_paddr_region for esp32h2 2023-02-22 05:33:03 +00:00
Alexey Lapshin
36d0e275a0 hal: always inline clk_tree_ll functions 2023-02-22 05:33:03 +00:00
Wan Lei
66cda021d0 Merge branch 'feature/h2_gpio_hysteresis_support' into 'master'
gpio: h2 support input hysteresis filter

Closes IDF-6653

See merge request espressif/esp-idf!22263
2023-02-21 17:27:56 +08:00
KonstantinKondrashov
f3394c488a efuse: Add support for esp32h2 2023-02-21 08:18:14 +00:00