Commit Graph

455 Commits

Author SHA1 Message Date
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
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
wanlei
2baee4fb0f refactor(spi_master): replace dma_ll in spi hal layer (part 2.1) 2023-12-28 19:58:54 +08:00
laokaiyao
e88d528b81 refactor(dac): remove redundant ll config for dac mode
Closes https://github.com/espressif/esp-idf/issues/12741
2023-12-09 20:14:54 +08:00
Darian
cc34c4fc08 Merge branch 'contrib/github_pr_12481' into 'master'
Many places in the ESP_SYSTEM are using CONFIG_FREERTOS_UNICORE instead of CONFIG_ESP_SYSTEM_SINGLE_CORE_MODE (GitHub PR)

Closes IDFGH-11333

See merge request espressif/esp-idf!27435
2023-12-01 19:33:19 +08:00
fl0wl0w
d149c1b26f Use configuration option instead of in components not related to FreeRTOS
Mergeshttps://github.com/espressif/esp-idf/pull/12481
2023-11-28 07:49:20 +00:00
Cao Sen Miao
b3280677fd fix(bod): Reset brownout in configuration to avoid RF cannot be enabled again 2023-11-24 10:17:20 +08:00
Lou Tianhao
b86d550ec5 change(pm/ext): remove ext0_wakeup_clear and ext1_wakeup_clear 2023-11-20 16:36:50 +08:00
Lou Tianhao
d97f45b3a8 bugfix: ext0_wakeup_prepare func when s_config.wakeup_triggers & RTC_EXT0_TRIG_EN == false 2023-11-20 16:03:57 +08:00
laokaiyao
f35ec64a0b feat(touch): support touch driver on p4 (soc) 2023-11-16 11:13:02 +00:00
Jiang Jiang Jian
221122ebeb Merge branch 'bugfix/fix_deinit_init_wifi_scan_fail_issue' into 'master'
fix(wifi): fix deinit init wifi scan fail issue

Closes WIFIBUG-200 and WIFI-5775

See merge request espressif/esp-idf!26957
2023-11-10 11:05:03 +08:00
muhaidong
91bd2c8541 change(hal): remove useless code from periph_ll_wifi_bt_module_enable_clk 2023-11-09 14:17:54 +08:00
morris
5cc965e6cb Merge branch 'feature/rmt_receive_in_isr' into 'master'
feat(rmt): support calling rmt_receive in ISR callback

Closes IDF-8488

See merge request espressif/esp-idf!26874
2023-11-08 14:25:52 +08:00
morris
14b7db5dd0 feat(rmt): support calling rmt_receive in ISR callback 2023-11-03 15:42:56 +08:00
Song Ruo Jing
9461993ec5 refactor(gpio): make gpio driver as component, and fix astyle 2023-11-03 15:42:23 +08:00
Wan Lei
10401d95d0 Merge branch 'feature/esp32p4_hp_spi_slave_support' into 'master'
Feature/esp32p4 hp spi slave support

Closes IDF-7503

See merge request espressif/esp-idf!25700
2023-10-31 23:31:24 +08:00
Gao Xu
8b953557c1 Merge branch 'bugfix/fix_adc_read_zero_h2' into 'master'
ADC: fix adc raw data get 0 because of signal delay on ESP32H2

See merge request espressif/esp-idf!26572
2023-10-30 20:51:08 +08:00
wanlei
7cd75c1075 feat(spi_slave): add p4 hp spi slave driver support 2023-10-30 12:51:56 +08:00
Wan Lei
7c21207bd3 Merge branch 'feature/esp32p4_twai_support' into 'master'
feat(twai): support legacy twai(can) driver for esp32p4

Closes IDF-7470

See merge request espressif/esp-idf!26073
2023-10-30 10:57:03 +08:00
Cao Sen Miao
0bf1dce413 refactor(i2c): Add reset and clock control to i2c ll layer 2023-10-27 10:50:35 +08:00
wanlei
d9d6f5a17a feat(twai): support legacy twai(can) driver for esp32p4 2023-10-26 16:20:45 +08:00
gaoxu
a8e3122866 fix(adc): fix adc read zero after getting done signal on h2 2023-10-26 12:22:09 +08:00
Armando
263e39c32b fix(sdmmc): fix ll layer wrong assertion 2023-10-25 06:03:25 +00:00
Cao Sen Miao
8d639492f2 feat(i2c_slave): Add new implementation and API for I2C slave 2023-10-24 18:44:49 +08:00
morris
767595a22f Merge branch 'feature/mcpwm_timer_change_freq' into 'master'
feat(mcpwm): support update timer period dynamically

Closes IDFGH-11145

See merge request espressif/esp-idf!26419
2023-10-23 15:51:14 +08:00
morris
0cbcb9f5ea feat(mcpwm): support update timer period dynamically
Implement the requirement asked in
https://www.esp32.com/viewtopic.php?f=13&t=35919
2023-10-20 16:57:25 +08:00
wuzhenghui
1f10c84a4f change(hal): rewrite gpio_ll_set_iomux_pin_ctrl api 2023-10-19 22:24:08 +08:00
Armando (Dou Yiwen)
471f1f61ae Merge branch 'feature/support_sdmmc_ver2_on_p4' into 'master'
sdmmc: esp32p4 support

Closes IDF-6502

See merge request espressif/esp-idf!25405
2023-10-19 22:00:40 +08:00
Wan Lei
a9b6c98489 Merge branch 'refactor/spi_using_rcc_automic_lock' into 'master'
refac(spi): update periph_module_xxx with rcc_atomic_lock for periph bus

Closes IDF-8159

See merge request espressif/esp-idf!26394
2023-10-18 20:36:51 +08:00
Armando
4eaf233bb8 change(sdmmc): replace periph_module_x with rcc 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
wanlei
57614bbad2 feat(ledc): support ledc on esp32p4 2023-10-17 16:40:04 +08:00
wanlei
b81cafe42e refac(spi): update periph_module_xxx with rcc_automic_lock for periph bus 2023-10-17 11:32:23 +08:00
laokaiyao
8bc618443a fix(apll): fixed overflow in apll calculation 2023-10-16 08:01:17 +00:00
morris
4f3e05f6a8 Merge branch 'ci/fix_hal_assert_check' into 'master'
fix(hal): replace assert with hal_assert

See merge request espressif/esp-idf!26349
2023-10-16 09:56:04 +08:00
Mahavir Jain
6b62065b92 Merge branch 'fix/crypto_periphs_use_rcc_atomic_blocks' into 'master'
Use rcc atomic blocks to enable/reset crypto peripherals

See merge request espressif/esp-idf!25811
2023-10-13 22:37:58 +08:00
morris
0717729911 fix(hal): replace assert with hal_assert
hal is a G0 component but assert may link in the symbols in the newlib component.
we'd better not use assert in the hal but use the alternative HAL_ASSERT
2023-10-13 10:14:47 +08: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
harshal.patil
c5cc4f488a
feat(mpi): use RCC atomic block to enable/reset the MPI peripheral 2023-10-11 14:59:03 +05:30
Armando
1f8f0a5285 feat(cache): added private API to get cache alignment requirements 2023-10-10 18:09:01 +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
Gao Xu
d52040a86d Merge branch 'esp32p4/add_uart_support' into 'master'
UART: Add uart support for ESP32P4

Closes IDF-6511 and IDF-7506

See merge request espressif/esp-idf!25388
2023-10-09 18:11:10 +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
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
laokaiyao
c018dc9d77 refactor(hal): avoid float type in hal 2023-10-07 19:01:04 +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
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
Armando
ec27891af6 change(cache): swap cache hal arg 'type' and 'level' 2023-09-22 14:19:41 +08:00
Armando
ea38a2e9a4 feat(cache): support cache driver on esp32p4 2023-09-22 14:19:41 +08:00
morris
3093384045 Merge branch 'feature/pcnt_replace_periph_func_with_new_ll' into 'master'
feat(pcnt): replace periph_module func with new ll func

Closes IDF-8225

See merge request espressif/esp-idf!25935
2023-09-21 21:57:14 +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
laokaiyao
dd4072a80c refactor(hal): use hal utils to calculate clock division 2023-09-20 23:33:25 +08:00
Song Ruo Jing
2d458a3f93 feat(lp_io): Add support for ESP32P4 2023-09-20 19:39:41 +08:00
Planck (Lu Zeyu)
59f8008e22 feat(pcnt): replace periph_module func with new ll func 2023-09-20 15:06:04 +08:00
morris
6bb05cccdd feat(rmt): add driver support for esp32p4
including DMA feature
2023-09-19 12:54:14 +08:00
morris
3234ee3f9e refactor(mcpwm): add RCC related LL functions 2023-09-15 13:33:01 +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
morris
3e5906aa1b Merge branch 'feature/modify_mcpwm_clock_pre_scale' into 'master'
feat(mcpwm): Set group clock prescale dynamically

See merge request espressif/esp-idf!25117
2023-09-09 08:30:56 +08:00
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
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
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
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
Marius Vikhammer
e3861261eb fix(wdt): move non-auto generated wdt values to ll 2023-09-05 11:52:34 +08:00
morris
0b970a8dfe refactor(emac): add LL functions for bus clock control 2023-09-04 10:52:03 +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
Song Ruo Jing
767698b90d feat(uart): Add sdkconfig.ci.iram_safe test for UART driver 2023-08-30 11:30:03 +08:00
morris
47bb157cab refactor(twai): add reset and clock control to twai LL layer 2023-08-29 22:19:57 +08:00
morris
71cf16ec01 feat(gptimer): use RCC atomic block to enable/reset peripheral 2023-08-22 17:05:35 +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
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
8c8affc812 feat(mmu): support mmu and flash mmap driver on p4 2023-08-15 10:17:03 +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
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
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
gaoxu
fd759d65b0 refactor(cache): abstract cache rom API in cache_ll.h 2023-08-09 10:32:12 +00: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
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
wanlei
8f5851d064 fix(all): unify default mosi level to low on all targets 2023-07-24 15:45:21 +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
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
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
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
morris
f0c07f82b5 fix(test): check call graph for hal component 2023-07-05 09:09:01 +08:00
Armando
eaf21a34af fix(adc): fixed esp32, esp32s2,esp32s3 adc oneshot mode clk div issue 2023-06-27 14:40:22 +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
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
wanlei
0f7e39d15a cache: refactor cache_utils into cache_hal instade 2023-06-15 11:50:42 +08:00