Commit Graph

262 Commits

Author SHA1 Message Date
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
Song Ruo Jing
3717963618 Merge branch 'contrib/github_pr_12179' into 'master'
Update uart_ll.h - Fixing division by zero (GitHub PR)

Closes IDFGH-10990

See merge request espressif/esp-idf!25907
2023-09-14 11:30:42 +08:00
Eduardo Lacerda Campos
b0bde58521 fix(uart): Fix uart_ll_set_baudrate div-by-zero crash due to uint32_t overflow
Merges https://github.com/espressif/esp-idf/pull/12179
2023-09-13 21:27:42 +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
morris
47e499de52 feat(mcpwm): clean up MCPWM ETM driver 2023-09-11 16:53:34 +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
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
C.S.M
c8f17b1b7c Merge branch 'bugfix/flash_pe_usr_interval' into 'master'
fix(spi_flash): Fix spi_flash write fail on 26M C2(including OTA fail on this chip)

See merge request espressif/esp-idf!25790
2023-09-08 15:24:25 +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
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
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
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
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
morris
b962fdee89 refactor(gdma): add reset and clock control in LL driver 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
morris
47bb157cab refactor(twai): add reset and clock control to twai LL layer 2023-08-29 22:19:57 +08:00
morris
4a45479336 refactor(lp_periph): move enable and reset control to LL driver 2023-08-28 05:17:56 +00: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
71cf16ec01 feat(gptimer): use RCC atomic block to enable/reset peripheral 2023-08-22 17:05:35 +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
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
laokaiyao
4b6d71447c feat(i2s): supported external clock source input 2023-08-14 03:25:12 +00: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
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
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
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
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
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
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