Commit Graph

1500 Commits

Author SHA1 Message Date
Chen Jichang
fc80d3e568 feat(mcpwm): Set group clock prescale dynamically
MCPWM group clock pre scale was originally fixed to 2, which is
inconvenient. Set group clock prescale dynamically. Now the maximum
resolution of the MCPWM timer is up to 160MHz(when the prescale set
to 1). And add a resulotion config for MCPWM capture.
2023-09-08 11:57:29 +08:00
Armando
956c94704b change(mmu): improve mmu_ll_entry_id_to_paddr_base on p4 2023-09-08 11:26:41 +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
Cao Sen Miao
c147a6d022 fix(spi_flash): Fix spi_flash write fail on 26M C2(including OTA fail on this chip) 2023-09-07 17:30:15 +08:00
morris
94d39009b4 Merge branch 'feature/esplcd_replace_periph_func_with_atomic' into 'master'
feat(esp_lcd): Replace `periph_module` function call with new ll func

Closes IDF-8167

See merge request espressif/esp-idf!25717
2023-09-07 01:59:04 +08:00
morris
01f3c93b17 Merge branch 'feature/esp_lcd_st7789_rgb_data_endian_config' into 'master'
feat(st7789): add data endian config

Closes IDFGH-10145

See merge request espressif/esp-idf!25475
2023-09-06 16:25:41 +08:00
Planck (Lu Zeyu)
86d4f9993f feat(esp_lcd): replace periph_module func with new ll func
Update periph_ctrl.h
2023-09-06 14:42:01 +08:00
harshal.patil
cc32fbb302
ci(hal): add test for export public key mode of the ecdsa peripheral 2023-09-06 11:07:40 +05:30
harshal.patil
d86b320892
feat(ecdsa): add ECDSA peripheral support for esp32p4 2023-09-06 11:07:37 +05:30
Armando (Dou Yiwen)
bdfa91ab66 Merge branch 'change/delete_not_used_mmu_macros' into 'master'
mm: delete not used mmu macros and added soc_ prefix

Closes IDF-7686

See merge request espressif/esp-idf!25663
2023-09-06 11:59:03 +08:00
Marius Vikhammer
b06dc30ba2 feat(lp_wdt): add lp wdt HAL support on C6, H2 and P4 2023-09-06 11:39:27 +08:00
Marius Vikhammer
0a630831a7 Merge branch 'feature/move_wdt_defines_to_ll' into 'master'
fix(wdt): move non-auto generated wdt values to ll

See merge request espressif/esp-idf!25757
2023-09-06 10:12:43 +08:00
Armando
de77ab3061 change(soc): added SOC_ prefix to mmu defs 2023-09-05 15:47:26 +08:00
Planck (Lu Zeyu)
6f55f76344 feat(st7789): add data endian config
Closes https://github.com/espressif/esp-idf/issues/11416
2023-09-05 12:11:19 +08:00
Marius Vikhammer
e3861261eb fix(wdt): move non-auto generated wdt values to ll 2023-09-05 11:52:34 +08:00
Mahavir Jain
d382eeed54 Merge branch 'esp32p4/add_hmac_ds_support' into 'master'
esp32p4/add hmac ds support

Closes IDF-7543 and IDF-6518

See merge request espressif/esp-idf!25148
2023-09-04 16:45:56 +08:00
morris
0b970a8dfe refactor(emac): add LL functions for bus clock control 2023-09-04 10:52:03 +08:00
harshal.patil
21c3549800
ci(hal): add support for 4096 bits size digital signature hal test 2023-09-01 15:44:21 +05:30
harshal.patil
b8c208cdb3
feat(ds): add Digital Signature peripheral support for esp32p4 2023-09-01 15:44:21 +05:30
harshal.patil
095c2a3324
feat(hmac): add HMAC peripheral support for esp32p4 2023-09-01 15:41:39 +05:30
Armando (Dou Yiwen)
24caae62eb Merge branch 'feature/psram_use_rcc' into 'master'
psram: atomic set clock and reset

See merge request espressif/esp-idf!25650
2023-09-01 09:56:36 +08:00
Armando
b75f8561e5 change(psram): atomic set clock and reset 2023-08-31 17:10:34 +08:00
morris
cf61f63bc2 Merge branch 'feature/hw_crc_esp32p4' into 'master'
feat(gdma): support hardware crc calculation on esp32p4

Closes IDF-7497

See merge request espressif/esp-idf!25307
2023-08-31 14:46:32 +08:00
Song Ruo Jing
91aab6bda0 Merge branch 'feature/add_uart_iram_safe_check' into 'master'
feat(uart): Add sdkconfig.ci.iram_safe test for UART driver

See merge request espressif/esp-idf!25618
2023-08-31 12:57:46 +08:00
Marius Vikhammer
eb8883cc20 Merge branch 'feature/p4_wdt' into 'master'
feat(core-system/wdt): added support for watchdogs on P4

Closes IDF-8135 and IDF-7750

See merge request espressif/esp-idf!25584
2023-08-31 10:14:19 +08:00
morris
b962fdee89 refactor(gdma): add reset and clock control in LL driver 2023-08-31 02:11:47 +00:00
morris
200eb866dc feat(gdma): support hardware crc calculation
On ESP32-P4, the GDMA peripherals support CRC calculating.
2023-08-31 02:11:47 +00:00
Song Ruo Jing
767698b90d feat(uart): Add sdkconfig.ci.iram_safe test for UART driver 2023-08-30 11:30:03 +08:00
Marius Vikhammer
8ecbd1f59b feat(core-system/wdt): added support for watchdogs on P4 2023-08-30 11:04:02 +08:00
morris
47bb157cab refactor(twai): add reset and clock control to twai LL layer 2023-08-29 22:19:57 +08:00
Armando (Dou Yiwen)
c9adbe13d8 Merge branch 'feature/support_psram_on_p4' into 'master'
esp_psram: esp32p4 psram device driver support

Closes IDF-7495

See merge request espressif/esp-idf!25368
2023-08-29 15:50:30 +08:00
Armando
712c0c0075 feat(psram): esp32p4 psram device driver support 2023-08-28 14:14:58 +08:00
morris
4a45479336 refactor(lp_periph): move enable and reset control to LL driver 2023-08-28 05:17:56 +00:00
Armando (Dou Yiwen)
d4d6241db0 Merge branch 'feature/esp32p4_build_test' into 'master'
ci: enable ci build stage on esp32p4

Closes IDF-7524 and IDF-7525

See merge request espressif/esp-idf!25343
2023-08-25 13:35:20 +08:00
morris
641fdabbf0 Merge branch 'feature/default_clock_source_can_leave_empty' into 'master'
feat(mcpwm): default clock source setting can leave empty

See merge request espressif/esp-idf!25478
2023-08-24 20:22:47 +08:00
Armando
7dbd3f6909 feat(ci): Enable p4 example, test_apps and unit tests CI build 2023-08-24 12:51:19 +08:00
morris
54febcae0e fix(adc): invalid assertion on the adc_unit 2023-08-23 18:36:02 +08:00
morris
911c388cf8 feat(etm): add core driver support for esp32-p4
esp_etm core driver support:
- channel allocator
- gpio etm sub driver
- gptimer etm sub driver
2023-08-23 15:11:56 +08:00
morris
4e143adf9d docs(hal): update readme about the usage of the RCC macros 2023-08-22 17:05:35 +08:00
morris
71cf16ec01 feat(gptimer): use RCC atomic block to enable/reset peripheral 2023-08-22 17:05:35 +08:00
C.S.M
0ccfb126df Merge branch 'bugfix/fix_i2c_master_issue' into 'master'
fix(i2c_master): Fix some issues on new i2c_master

Closes IDF-8034

See merge request espressif/esp-idf!25320
2023-08-17 10:13:48 +08:00
Kevin (Lao Kaiyao)
f629c4b7e9 Merge branch 'feature/i2s_support_mclk_input' into 'master'
feat(i2s): supported external clock source input

Closes IDF-7889

See merge request espressif/esp-idf!24942
2023-08-16 19:07:22 +08:00
Cao Sen Miao
6a89925501 fix(i2c): Fix wrong clock gate in clk_gate_ll 2023-08-16 10:43:18 +08:00
Gao Xu
0ceb5f2648 Merge branch 'refactor/cache_disable_enable_interface' into 'master'
refactor(cache): abstract cache rom API in cache_ll.h

Closes IDF-7922

See merge request espressif/esp-idf!25040
2023-08-15 19:43:47 +08:00
Chen Ji Chang
b39fd79cb8 Merge branch 'feature/add_mcpwm_carrier_clk_source' into 'master'
feat(MCPWM): Add mcpwm carrier clk source

Closes IDF-8029

See merge request espressif/esp-idf!25342
2023-08-15 18:04:08 +08:00
Armando (Dou Yiwen)
5a81e00633 Merge branch 'feature/support_mmu_on_p4' into 'master'
mm: mmu support on p4

Closes IDF-7509

See merge request espressif/esp-idf!25121
2023-08-15 14:25:31 +08:00
Chen Jichang
97d5db32ae feat(MCPWM): Add mcpwm carrier clk source
The MCPWM carrier is part of the operator and can work independently
without the MCPWM timer being enabled. This commit add the MCPWM
carrier clk source.
2023-08-15 13:04:11 +08:00
Armando
ca515ca55e fix(efuse): fixed efuse_hal_get_major_chip_version not in iram issue 2023-08-15 10:17:03 +08:00
Armando
8c8affc812 feat(mmu): support mmu and flash mmap driver on p4 2023-08-15 10:17:03 +08:00
laokaiyao
4b6d71447c feat(i2s): supported external clock source input 2023-08-14 03:25:12 +00:00
Cao Sen Miao
de85f47bc9 feat(i2c): Add I2C driver support for esp32p4 2023-08-11 12:37:11 +08:00
morris
26f438cf89 Merge branch 'feature/esp32p4_gpio_support' into 'master'
feat(gpio): add support for ESP32P4

Closes IDF-6509

See merge request espressif/esp-idf!24868
2023-08-11 11:49:51 +08:00
morris
84f9e5e8e5 Merge branch 'feature/esp32p4_pcnt_support' into 'master'
feat(pcnt): add support for ESP32P4

Closes IDF-7475

See merge request espressif/esp-idf!25149
2023-08-10 18:52:23 +08:00
Song Ruo Jing
be9afeac86 feat(gpio): add support for ESP32P4 2023-08-10 17:58:49 +08:00
C.S.M
96bf37ab78 Merge branch 'feature/i2c_master_new_driver' into 'master'
I2C: Add new i2c master impl APIs and i2c eeprom example

See merge request espressif/esp-idf!23592
2023-08-10 16:51:31 +08:00
Armando (Dou Yiwen)
337aeb4b78 Merge branch 'feature/add_esp32p4_hello_world' into 'master'
esp32p4: introduced new chip ESP32P4: Hello World! 🌏

Closes IDF-7523

See merge request espressif/esp-idf!25013
2023-08-10 16:04:55 +08:00
Cao Sen Miao
4ef94fc0dc feat(i2c): Add new API and implementation for I2C driver 2023-08-10 11:55:54 +08:00
Lou Tianhao
808a01e656 feat(pm/deepsleep): Support EXT1_WAKEUP_MODE_PER_PIN 2023-08-09 19:46:25 +08:00
Armando
706d684418 feat(esp32p4): introduced new target esp32p4, supported hello_world 2023-08-09 19:33:25 +08:00
gaoxu
fd759d65b0 refactor(cache): abstract cache rom API in cache_ll.h 2023-08-09 10:32:12 +00:00
Chen Jichang
3fed3cf50e feat(pcnt): add support for ESP32P4 2023-08-09 14:41:22 +08:00
morris
bd8eaf7a38 Merge branch 'feature/esp32p4_mcpwm_support' into 'master'
feat(MCPWM): Add support for ESP32P4

Closes IDF-7493

See merge request espressif/esp-idf!25029
2023-08-09 11:00:00 +08:00
Chen Jichang
72f66b6d1d feat(mcpwm): add support for ESP32P4 2023-08-08 18:12:58 +08:00
Sudeep Mohanty
00955f7e59 fix(lp_i2c): Fixed a bug where the LP_I2C did not send NACK for 16-byte reads
This commit updates the LP_I2C driver used by the LP CPU wherein the
driver did not send out a NACK when we do a read of multiple of the FIFO
depth bytes. This was because the LP I2C controller was configured to
send an ACK when the Rx FIFO reaches the threshold instead of a NACK.
This commit updates the behavior.
2023-08-08 06:35:15 +00:00
Marius Vikhammer
ff15d4045e fix(mpi): fixed missing include in mpi_ll.h for P4 2023-08-08 09:29:28 +08:00
morris
27eec5bb6f Merge branch 'feature/twai_linker_file' into 'master'
feat(twai): Add twai linker.lf to control the placement of driver and hal

Closes IDF-7806

See merge request espressif/esp-idf!25126
2023-08-07 15:21:37 +08:00
Mahavir Jain
f089cd5fab Merge branch 'esp32p4/add_mpi_support' into 'master'
feat(mpi): add MPI peripheral support for esp32p4

See merge request espressif/esp-idf!25110
2023-08-07 13:37:14 +08:00
Planck (Lu Zeyu)
7469f34948 feat(twai): Add twai linker.lf to control the placement of driver and hal
- Replace TWAI_ISR_ATTR flag with linker.lf
- Use the linker.lf to control the placement of the driver functions
2023-08-07 10:21:47 +08:00
Armando
de68029de9 change(header): modify p4 headers issues from check_header_py 2023-08-04 14:13:59 +02:00
harshal.patil
031175d22a
feat(mpi): add MPI peripheral support for esp32p4 2023-08-03 09:44:02 +05:30
morris
fd3d1aa101 feat(async_memcpy): refactor driver code to support different DMA backen
To support AHB and AXI DMA memory copy for the same target (esp32p4).
2023-08-03 12:02:09 +08:00
Laukik Hase
f281c08ce7
fix(hal): Fix the external memory vaddr region validity check
- For c6, h2 and p4, the vaddr end calculated was off by 1
  byte.
2023-08-02 10:53:26 +05:30
harshal.patil
f2801ae4c9 feat(ecc): add ECC peripheral support for esp32p4 2023-08-01 10:20:30 +05:30
morris
9cd16a8f95 feat(gptimer): driver support on esp32p4 2023-07-26 19:27:49 +08:00
Wan Lei
f5e26a595d Merge branch 'bugfix/spi_bus_unify_defualt_mosi_level' into 'master'
spi: unify default mosi level on all targets

Closes IDF-7683

See merge request espressif/esp-idf!24591
2023-07-25 20:06:09 +08:00
morris
ed36b91517 Merge branch 'feature/mcpwm_trigger_driver' into 'master'
feature(MCPWM): Add MCPWM trigger driver

Closes IDF-3613

See merge request espressif/esp-idf!24829
2023-07-25 18:50:57 +08:00
morris
facb9a02d3 Merge branch 'bugfix/fix_gdma_build_failure_on_p4' into 'master'
fix(gdma): fixed compilation failure of gdma

See merge request espressif/esp-idf!24964
2023-07-25 15:10:40 +08:00
Chen Jichang
5ab755915b feature(MCPWM): Add MCPWM trigger driver and test
Each MCPWM operator has two Trigger (named T0 and T1), and they can be
routed to GPIO fault signal or timer sync event.Generator can be set up
to perform different action on Trigger event.
This commit add a trigger driver and a test for the driver.
2023-07-25 14:44:41 +08:00
morris
6d46cf739c feat(gdma): test non-cacheable DMA descriptor
To avoid different DMA descriptors reside in the same cache line,
we want the CPU to access the DMA descriptor in a non-cachable way
2023-07-25 10:59:07 +08:00
morris
3b7da7eae5 feat(gdma): gdma descriptor alignment 2023-07-25 10:43:17 +08:00
laokaiyao
274e1c0089 fix(gdma): fixed compilation failure of gdma 2023-07-24 19:36:31 +08:00
wanlei
8f5851d064 fix(all): unify default mosi level to low on all targets 2023-07-24 15:45:21 +08:00
Lou Tian Hao
57c6c0a1a3 Merge branch 'bringup/esp32h2_deep_sleep_for_rebase' into 'master'
esp32h2: support deep_sleep

Closes IDF-6268, IDF-6572, and IDF-7406

See merge request espressif/esp-idf!24438
2023-07-24 10:47:51 +08:00
Lou Tianhao
0d30bbe855 change(pm/deepsleep): rewrite the option all low as any low for esp32s2, esp32s3, esp32c6 and esp32h2 2023-07-21 20:44:15 +08:00
Lou Tianhao
e70763f9a4 feat(pm/deepsleep): Support EXT1 wakeup for esp32h2 deep_sleep 2023-07-20 11:43:57 +08:00
Lou Tianhao
dcacd8cdf8 feat(pm/deepsleep): Support deep_sleep example and deep_sleep_wake_stub example for esp32h2 2023-07-20 11:43:57 +08:00
morris
57879e772d feat(gdma): support channel allocator on esp32p4
There's two GDMA groups on ESP32P4, one is connected to AHB bus,
and another one is connected AXI bus.
We now have two seperate APIs for allocating DMA channels,
depends on the bus type.
2023-07-19 18:18:07 +08:00
Armando
8d54030890 fix(adc): fix adc continuous hal func not in iram when gdma isr iram 2023-07-17 10:15:48 +08:00
Darian
4fc2e5cb95 Merge branch 'feature/usb_host_restrict_ahb_errata_workaround_to_esp32s2_eco0' into 'master'
USB Host: Restrict ESP32-S2 AHB errata workaround to only ECO0 chips

Closes IDF-3328

See merge request espressif/esp-idf!23873
2023-07-15 19:01:03 +08:00
wuzhenghui
a5c992c8af fix(esp_pm): fix PM_SLP_IRAM_OPT/PM_RTOS_IDLE_OPT feature
- Fix flash accessed code to resolve issues with PM_SLP_IRAM_OPT/PM_RTOS_IDLE_OPT enabled
2023-07-14 21:21:19 +08:00
wuzhenghui
4e9cc65763 change(uart): change sleep code to be cache safe
- Set uart ll with FORCE_INLINE_ATTR
- Add no_flash API periph_ll_uart_enabled api
2023-07-14 20:12:59 +08:00
Li Shuai
21781b1ab1 modem clock: provide a protected wifipwr clock enable/disable interface to fix the bug of selecting xtal as the low power clock source for ble 2023-07-13 20:44:56 +08:00
Li Shuai
9950b6a527 modem clock: gatable clock interface which can gate or ungate modem clock domain 2023-07-13 20:44:56 +08:00
Armando (Dou Yiwen)
c7d8b06fd2 Merge branch 'feature/add_esp32p4_esp_rom_support' into 'master'
esp_rom: add esp32p4 esp_rom support

See merge request espressif/esp-idf!24703
2023-07-13 19:08:42 +08:00
Darian Leung
7d386f68df usb_host: Restrict ESP32-S2 AHB errata workaround to only ECO0 chips 2023-07-13 12:37:35 +02:00
morris
6e9c386a27 Merge branch 'refactor/gpio_linker_file' into 'master'
refactor(gpio): Add gpio linker.lf to control the placement of driver and hal

Closes IDF-7805

See merge request espressif/esp-idf!24634
2023-07-13 17:17:50 +08:00
Konstantin Kondrashov
9708952fa8 Merge branch 'feature/add_new_pkg_and_flash_psram_efuses' into 'master'
feat(efuse): Add flash&psram efuses for S3

Closes IDF-7439

See merge request espressif/esp-idf!24624
2023-07-13 00:57:14 +08:00
Song Ruo Jing
9526273085 Merge branch 'bugfix/fix_uart_ll_compatible_with_cpp' into 'master'
fix(uart): Fixed C++ type conversion compile error in uart_ll_get_sclk

Closes IDFGH-10573

See merge request espressif/esp-idf!24690
2023-07-12 17:42:18 +08:00
Chen Jichang
cdd18fd232 refactor(gpio):add gpio linker.lf to control the placement of driver and hal
since the linker placement of the hal functions are controlled by the Kconfig in the driver component,
we should create the linker.lf in the driver component, not in the hal component.
2023-07-11 20:44:36 +08:00
KonstantinKondrashov
cf46ef954f feat(efuse): Add flash&psram efuses for S3 2023-07-11 19:41:40 +08:00
Armando
ec88a3f018 fix(ahb_dma): temporarily disable ahb_dma on p4 2023-07-11 16:59:02 +08:00
Song Ruo Jing
b60f4a6f37 fix(uart): Fixed C++ type conversion compile error in uart_ll_get_sclk
Closes https://github.com/espressif/esp-idf/issues/11813
2023-07-11 11:18:00 +08:00
morris
682e5ae450 Merge branch 'feature/esp_gdma_ops' into 'master'
feat(esp_gdma): add hal interface for common operations

Closes IDF-7809

See merge request espressif/esp-idf!24433
2023-07-11 10:40:42 +08:00
Armando (Dou Yiwen)
282e3b03bb Merge branch 'feature/add_esp32p4_hal_support' into 'master'
hal: add esp32p4 hal support

See merge request espressif/esp-idf!24427
2023-07-11 10:09:16 +08:00
Armando
fb420725d2 feat(hal): unify hal cmake for spi_flash_hal_gpspi.c 2023-07-10 16:11:47 +08:00
Armando
ea05ae6af2 feat(esp32p4): added hal support 2023-07-10 16:11:47 +08:00
Zhang Wen Xu
80e1c5a2b7 Merge branch 'fix/txpower_max_value' into 'master'
IEEE802154: match C6/H2 max txpower value with datasheet

See merge request espressif/esp-idf!24325
2023-07-10 14:42:22 +08:00
morris
9eb145aa21 feat(esp_gdma): adapt the gdma driver to ahb-dma and axi-dma 2023-07-10 13:45:57 +08:00
morris
56a376c696 feat(esp_gdma): add hal interface for common operations
GDMA driver will be adapted to more DMA peripherals in the future.
This commit is to extract a minimal interface in the hal layer
2023-07-10 13:45:57 +08:00
morris
ad4ab84fd8 Merge branch 'refactor/esp_lcd_linker' into 'master'
refactor(esp_lcd): move hal function placement to the driver layer

See merge request espressif/esp-idf!24617
2023-07-07 14:34:44 +08:00
Song Ruo Jing
ea48030514 Merge branch 'refactor/rtcio_caps_responsibility' into 'master'
refactor(driver/rtcio): Re-wrap RTCIO APIs with more accurate soc_caps

Closes IDF-7406

See merge request espressif/esp-idf!24522
2023-07-07 14:25:47 +08:00
Armando (Dou Yiwen)
adb93a3770 Merge branch 'feature/add_esp32p4_soc_support_part_3' into 'master'
soc: added soc headers for esp32p4 (part 3)

See merge request espressif/esp-idf!24481
2023-07-07 11:44:46 +08:00
Armando
65bfa590da feat(soc): soc updates 2023-07-06 18:23:18 +08:00
morris
6f3e07d97b Merge branch 'feature/gptimer_linker_file' into 'master'
feat(gptimer): add gptimer linker.lf to control the placement of driver and hal

See merge request espressif/esp-idf!24598
2023-07-06 12:42:47 +08:00
morris
2e5eb30382 Merge branch 'origin/bugfix/fix_header_violations_in_hal_component' into 'master'
Fix(components/hal): fix header violations in hal component

Closes IDF-7658

See merge request espressif/esp-idf!24493
2023-07-06 10:32:25 +08:00
morris
b72df43a3f refactor(esp_lcd): control hal function placement in the esp_lcd component
because G1 component can't rely on G2 component, thus  we shouldn't use the esp_lcd's Kconfig in the hal's linker.lf
2023-07-05 22:54:01 +08:00
Planck (Lu Zeyu)
333553caf2 fix(hal): check the public header files and fix violations
fix(hal/include): fix header violations in hal component
fix(hal/include): Move type definitions from `xx_hal.h` to `xx_types.h`
fix(hal/include): Move type definitions from `xx_hal.h` to `xx_types.h`
fix(hal/include): Add comment for a far away `#endif`
fix(hal/include): change scope for cpp guard
ci: Remove components/hal/ comment from public headers check exceptions
Add missing include macro sdkconfig.h for header files
Add missing include macro stdbool.h for header files
Add missing include macro stdint.h for header files
Add missing capability guard macro for header files
Add missing cpp guard macro for header files
Remove some useless include macros
Add some missing `inline` attribute for functions defined in header files
Remove components/hal/ from public headers check exceptions
fix(hal/include): fix invalid licenses
fix(hal/include): fix invalid licenses
fix(hal/include): add missing soc_caps.h
fix(hal): include soc_caps.h before cap macro is used
fix(hal): Remove unnecessary target check
fix(hal): fix header and macro problems
Add missing include macro
Remove loop dependency in hal
Add comment for far-away endif
fix(hal): Add missing soc_caps.h
ci: update check_copyright_ignore.txt
Change the sequence of `#include` macro, cpp guard macro
Change the wrap scope of capacity macro

fix(hal): Change position of C++ guard to pass test
2023-07-05 17:33:32 +08:00
morris
81a641d437 feat(gptimer): add gptimer linker.lf to control the placement of driver and hal
since the linker placement of the hal functions are controlled by the Kconfig in the driver component,
we should create the linker.lf in the driver component, not in the hal component.
2023-07-05 12:09:00 +08:00
Song Ruo Jing
4985caa38f refactor(driver/rtcio): Re-wrap RTCIO APIs with more accurate soc_caps 2023-07-05 11:47:51 +08:00
Armando
d9e25c305a feat(adc): use soc_caps to decide which files to be included 2023-07-05 11:45:48 +08:00
morris
f0c07f82b5 fix(test): check call graph for hal component 2023-07-05 09:09:01 +08:00
morris
0298e6f257 Merge branch 'feature/gpio_num_per_target' into 'master'
refactor(gpio): per-target gpio number definition

See merge request espressif/esp-idf!24546
2023-07-04 14:12:39 +08:00
morris
d623ce0d53 refactor(gpio): per-target gpio number definition 2023-07-03 13:33:11 +08:00
Alexey Lapshin
4df3ff619e feat(esp_system): implement hw stack guard for riscv chips
- add hardware stack guard based on assist-debug module
- enable hardware stack guard by default
- disable hardware stack guard for freertos ci.release test
- refactor rtos_int_enter/rtos_int_exit to change SP register inside them
- fix panic_reason.h header for RISC-V
- update docs to include information about the new feature
2023-07-01 16:27:40 +00:00
zhangwenxu
806ac94b64 IEEE802154: match C6 max txpower value with datasheet 2023-06-28 14:32:45 +08:00
Armando (Dou Yiwen)
b3b9b327a1 Merge branch 'bugfix/fix_s3_adc1_wrong_clk_div' into 'master'
adc: fix adc oneshot mode clk div issue on esp32, esp32s2 and esp32s3

Closes IDF-7654

See merge request espressif/esp-idf!24420
2023-06-28 11:12:40 +08:00
Lou Tianhao
c7c937ea75 bugfix: set FORCE_INLINE_ATTR for resume_uart 2023-06-27 18:35:16 +08:00
Armando
eaf21a34af fix(adc): fixed esp32, esp32s2,esp32s3 adc oneshot mode clk div issue 2023-06-27 14:40:22 +08:00
Lou Tianhao
a329b15e7e Power Management: support pu xtal in light sleep for esp32h2 2023-06-26 21:05:16 +08:00
Lou Tianhao
117008143b bugfix: remove the workaround implemented in MR 22773 about the lp_timer 2023-06-26 21:05:16 +08:00
Lou Tianhao
01fb28b65b Power Management: move lp_timer_hal.c to upper hal layer for esp32h2 and esp32c6 2023-06-26 21:05:16 +08:00
Lou Tianhao
7fd74057a3 example: bringup light sleep example for esp32h2 2023-06-26 21:05:16 +08:00
Lou Tianhao
b06cadddb3 Power Management: fix REGDMA clock issue when wake up form light sleep 2023-06-26 21:05:10 +08:00
Lou Tianhao
46cf3ecdc2 Power Management: support PAU REGDMA feature for esp32h2 2023-06-26 20:58:59 +08:00
Lou Tianhao
63d32ab620 Power Management: support DFS and PMU feature for esp32h2 2023-06-26 20:57:55 +08:00
laokaiyao
1b22591ea7 i2s: fixed i2s_ll compiling failure under C++ evironment
Closes: https://github.com/espressif/esp-idf/issues/11625
2023-06-23 11:41:43 +08:00
wuzhenghui
4196eddff1 esp_hw_support: add modem module mac reset api 2023-06-19 12:53:09 +08:00
Wan Lei
a0dc515143 Merge branch 'refactor/cache_utils_refactor_to_cache_hal' into 'master'
cache: refactor cache_utils to use cache_hal instade

Closes IDF-7172 and IDF-7385

See merge request espressif/esp-idf!23317
2023-06-19 11:54:12 +08:00
Song Ruo Jing
921713fff4 uart: Support LP_UART port with UART driver on esp32c6 2023-06-16 07:31:40 +00:00
Wan Lei
dccc31e9e4 Merge branch 'refactor/remove_apb_ctrl_reg' into 'master'
sysreg: deprecate apb_ctrl related reg

Closes DOC-5139

See merge request espressif/esp-idf!24135
2023-06-15 14:57:32 +08:00
morris
2a760522fa Merge branch 'feature/add_option_to_put_LEDC_into_IRAM' into 'master'
ledc:add option to put LEDC function into IRAM

Closes IDFGH-10293

See merge request espressif/esp-idf!24207
2023-06-15 13:36:06 +08:00
wanlei
0f7e39d15a cache: refactor cache_utils into cache_hal instade 2023-06-15 11:50:42 +08:00
Chen Jichang
5150c578fd ledc:add option to put LEDC function into IRAM
The caches are disabled when reading/writing/erasing flash.
All CPUs should always execute code and access data from internal RAM.
Add an IRAM option to enhance the performance of LEDC.

Closes https://github.com/espressif/esp-idf/issues/11554
2023-06-14 18:12:01 +08:00
Armando
101e6a18eb esp32p4: introduce the target
Add esp32p4 target to tools and Kconfig
Create directories and files that are essential for `idf.py --preview set-target esp32p4`
2023-06-13 15:16:11 +08:00
morris
88600bd91b driver: minor code clean up to pass coverity scan test 2023-06-10 16:21:12 +08:00
wanlei
3ed82deedf sysreg: deprecate apb_ctrl related reg, suggest syscon 2023-06-09 17:34:10 +08:00
Armando (Dou Yiwen)
cd7ef82ab2 Merge branch 'feature/use_circular_dma_desc_link_in_adc_continuous_mode' into 'master'
adc: pr 11500, use circular dma descriptors in adc continuous mode

Closes IDFGH-10235

See merge request espressif/esp-idf!24048
2023-06-08 11:51:08 +08:00
laokaiyao
71ef56f988
gdma: support on_recv_done callback 2023-06-07 11:38:32 +08:00
morris
630b1b079e drivers: fix issue reported by coverity 2023-06-06 14:16:09 +08:00
Mahavir Jain
c606127315 Merge branch 'fix/xts_aes_register_prefix_discrepancy_c6_h2' into 'master'
fix: xts aes register prefix discrepancy for ESP32H2 and ESP32C6

Closes DOC-5171 and DOC-5179

See merge request espressif/esp-idf!23944
2023-06-06 12:40:57 +08:00
Marius Vikhammer
adef00f363 Merge branch 'bugfix/comp_opt_level_debug_rename' into 'master'
core-system: changed CONFIG_COMPILER_OPTIMIZATION_DEFAULT to CONFIG_COMPILER_OPTIMIZATION_DEBUG

Closes IDFGH-6776

See merge request espressif/esp-idf!24033
2023-06-06 10:31:01 +08:00
Armando
97c30c7da6 adc: port gh pr to current adc continuous mode driver
DMA EOF may happens per multiple dma descriptors, instead of only one.

Closes https://github.com/espressif/esp-idf/pull/11500
2023-06-05 14:25:53 +08:00
Niklas Gürtler
2a8b9fb636 Fix #10804 by running continuous ADC DMA in endless loop instead of restarting after each run (descriptor chain) to avoid losing samples. Use descriptor error callback for GDMA to check for DMA buffer overrun.
Signed-off-by: Armando <douyiwen@espressif.com>
2023-06-05 12:24:14 +08:00
Marius Vikhammer
bd4c0fca3c core-system: changed CONFIG_COMPILER_OPTIMIZATION_DEFAULT to CONFIG_COMPILER_OPTIMIZATION_DEBUG
DEBUG is more descriptive and is consistent with the name used in the bootloader:
CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG

Closes https://github.com/espressif/esp-idf/issues/8404
2023-06-02 15:16:50 +08:00
harshal.patil
7d4e69d5fa hal: minor fixes needed in the crypto hal test app 2023-06-01 11:37:36 +05:30
harshal.patil
60ccb8f439 esp32c6: xts-aes register preefix discrepency 2023-05-26 15:33:21 +05:30
harshal.patil
bc825431e8 esp32h2: xts-aes register prefix discrepency 2023-05-26 15:33:15 +05:30
Mahavir Jain
e2fe2bf152 Merge branch 'fix/xts_aes_register_prefix_discrepency' into 'master'
fix: xts aes register prefix discrepancy

Closes DOC-5136 and DOC-5140

See merge request espressif/esp-idf!23900
2023-05-25 16:40:13 +08:00
harshal.patil
ed4ceea43d esp32c2: xts-aes register prefix discrepency 2023-05-25 11:27:18 +05:30
harshal.patil
0058fb3a05 esp32c3: xts-aes register prefix discrepency 2023-05-25 11:27:10 +05:30
wanlei
87848110c1 adc: new feature adc digital monitor supported 2023-05-24 17:46:52 +08:00
Kevin (Lao Kaiyao)
7a462d8a86 Merge branch 'feature/support_adc_calibration_on_c6' into 'master'
adc_cali: supported adc calibration on esp32c6

Closes IDF-5312 and IDF-6566

See merge request espressif/esp-idf!23499
2023-05-24 11:31:12 +08:00
laokaiyao
ffb40a89d9 adc_cali: supported channel compensation of adc calibration on esp32c6 2023-05-23 22:44:25 +08:00
Mahavir Jain
86b2ca3d04 Merge branch 'feature/c6_bootloader_rng' into 'master'
Feature/c6 bootloader rng

See merge request espressif/esp-idf!22773
2023-05-23 22:41:51 +08:00
Jakob Hasse
d3f77ec352 esp_hw_support/bootloader: made ESP32-C6 and ESP32-H2 RNG available 2023-05-23 18:14:51 +08:00
Mahavir Jain
8c1369f3aa Merge branch 'test/combined_ecc_mpi_hmac_ds_hal_verification_app' into 'master'
Create a combined security peripherals hal verification appliaction

See merge request espressif/esp-idf!23718
2023-05-23 11:27:53 +08:00
harshal.patil
21c6d5392f hal: add ecdsa peripheral verification tests 2023-05-22 15:19:34 +05:30
harshal.patil
7330851db0 hal: add digital signature peripheral verification tests
- also renamed the security test app to crypto test app
2023-05-22 15:19:34 +05:30
harshal.patil
9b27fa73a7 hal: add hmac peripheral verification tests 2023-05-22 15:19:34 +05:30
harshal.patil
da2c29751e hal: combine ecc hal test app into security peripherals test app 2023-05-22 15:19:34 +05:30
harshal.patil
56ac7eee3b ecc: added SOC_ECC_SUPPORT_POINT_VERIFY_QUIRK soc caps for esp32c2
as the ESP32C2 ECC peripheral has a bug in ECC point verification,
if value of K is zero the verification fails
2023-05-22 15:19:34 +05:30
harshal.patil
647c2dabfe hal: combine security peripherals test applications 2023-05-22 15:19:34 +05:30
Wan Lei
b4e601989b Merge branch 'contrib/github_pr_11405' into 'master'
Fix initialization macros for twai_timing_config_t not setting .clk_src and .brp (GitHub PR)

Closes IDFGH-10134

See merge request espressif/esp-idf!23771
2023-05-22 15:16:52 +08:00
Armando (Dou Yiwen)
a938fe0beb Merge branch 'bugfix/fix_adc_continuous_driver_conv_frame_issue' into 'master'
adc: fixed adc continuous driver conv frame issue

Closes IDFGH-10109

See merge request espressif/esp-idf!23772
2023-05-22 14:44:28 +08:00
Armando
73791ff4e0 adc: fix adc continuous driver conv_frame_size not bigger than 4092 issue
Closes https://github.com/espressif/esp-idf/issues/11385
2023-05-22 10:55:28 +08:00
Sudeep Mohanty
ec742abb25 lp-i2c: Added support for LP I2C peripheral to LP core
This commit adds support for the LP I2C peripheral driver to be used by
the LP core. An example is also added to demonstrate the usage of the LP
I2C peripheral from the LP core.
2023-05-19 07:27:51 +02:00
C.S.M
224430f6b4 Merge branch 'bugfix/tempsensor_wifi_conflict' into 'master'
temperature_sensor: Fix issue that have conflict with phy

Closes IDF-5227, IDF-5992, IDF-5504, and IDF-6113

See merge request espressif/esp-idf!20210
2023-05-19 12:46:55 +08:00
Cao Sen Miao
faa10947a8 temperature_sensor: Apply new-shared interface in temperature sensor driver 2023-05-18 15:00:36 +08:00
wuzhenghui
d197c59eaa bugfix: move adc_oneshot_power_acquire/release to adc_oneshot_read
Closes https://github.com/espressif/esp-idf/issues/10595
Closes https://github.com/espressif/esp-idf/issues/11386
2023-05-18 10:29:50 +08:00
Justin Ong
a18d7e24d6 Fix initialization macros for twai_timing_config_t not setting .clk_src and .brp 2023-05-16 10:34:24 +08:00
Ondrej Kosta
a76eab4d39 Merge branch 'bugfix/emac_structs_cpp_build' into 'master'
fixed emac soc structs names to be able to build under C++

Closes IDFGH-10003

See merge request espressif/esp-idf!23658
2023-05-12 16:38:12 +08:00
Cao Sen Miao
ed96dadd06 spi_flash: 2nd stage for supporting flash suspend. (1). Support more esp chips (2). Improve real-time performance (3). Making timing more stable (4) Add documents 2023-05-11 20:10:30 +08:00
Ondrej Kosta
621d5ef724 fixed emac soc structs names to be able to build under C++
Closes https://github.com/espressif/esp-idf/pull/11283
2023-05-11 08:50:49 +02:00
morris
6a7f730c77 Merge branch 'feature/efuse_settings' into 'master'
hal: Explicit setting of efuse time settings

See merge request espressif/esp-idf!23533
2023-05-10 19:11:01 +08:00
Li Shuai
87dd7bb51a Merge branch 'bugfix/support_esp32c6_sleep_retention_extra_link' into 'master'
support extra linked list retention for BLE and 15.4

Closes IDF-6528

See merge request espressif/esp-idf!22985
2023-05-10 15:07:03 +08:00
Kevin (Lao Kaiyao)
9ee4c48f54 Merge branch 'bugfix/fix_several_bugs_in_i2s' into 'master'
i2s: fix several bugs in std and tdm mode

Closes IDF-7288

See merge request espressif/esp-idf!23465
2023-05-10 11:39:51 +08:00
Zim Kalinowski
099ffe6243 Merge branch 'feature/c6_ulp_timer' into 'master'
ulp: lp timer support for lp core

Closes IDF-6956, IDF-6830, and IDF-6835

See merge request espressif/esp-idf!23453
2023-05-10 03:06:35 +08:00
KonstantinKondrashov
e48130246a hal: Explicit setting of efuse time settings
EFUSE_PWR_ON_NUM in C3 has default value = 0x2880, now = 0x3000
2023-05-10 00:41:35 +08:00
Wu Zheng Hui
35bb946653 Merge branch 'bugfix/update_esp32c6eco1_sleep_fosc_cal_cycles' into 'master'
bugfix: update esp32c6eco1 / esp32h2eco2 fosc calibration cycles during sleep and support calibrate OSC clock every N times lightsleep

Closes IDF-7287

See merge request espressif/esp-idf!23489
2023-05-09 18:44:20 +08:00
laokaiyao
fd8042cf5b i2s_tdm: fixed half sample bit calculation 2023-05-09 17:51:33 +08:00
Armando (Dou Yiwen)
38e84bdd4f Merge branch 'refactor/mspi_timing_tuning_compatible_on_all_chips' into 'master'
mspi: timing tuning driver framework

Closes IDF-7004

See merge request espressif/esp-idf!22786
2023-05-08 10:27:29 +08:00
cjin
7a708c35cb pau: fix logic error in extra link retention 2023-05-06 14:58:02 +08:00
Marius Vikhammer
3ced7b12e8 ulp: add support for using lp timer with lp core on C6 2023-05-06 14:13:14 +08:00
morris
eaa4ad502a Merge branch 'bugfix/check_filter_range' into 'master'
rmt: check filter and idle threashold

Closes IDFGH-9977

See merge request espressif/esp-idf!23518
2023-05-05 17:19:45 +08:00
Armando
8eec6558d1 mspi: refactor timing tuning driver to make it compatible with p4 2023-05-04 17:05:35 +08:00
wuzhenghui
dd4d1bbe90 bugfix: fix esp32c6eco1 fosc calibration cycles during sleep 2023-05-04 11:46:21 +08:00
Armando
ea10aac4f0 spi: added transaction length check to refuse longer than hardware supported length 2023-05-04 11:37:23 +08:00
morris
9ae742eb85 rmt: check filter and idle threashold
Closes https://github.com/espressif/esp-idf/issues/11262
2023-04-29 06:51:35 +00:00
hongshuqing
cbc5a38e26 support h2 eco2 fosc calibration 2023-04-26 15:31:18 +08:00