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
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
KonstantinKondrashov
cf46ef954f
feat(efuse): Add flash&psram efuses for S3
2023-07-11 19:41:40 +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
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
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
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
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
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
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
wanlei
87848110c1
adc: new feature adc digital monitor supported
2023-05-24 17:46:52 +08: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
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
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
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
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
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
Mahavir Jain
a8b6a70620
Merge branch 'feature/add_bignum_ll_layer' into 'master'
...
bignum: added bignum hal and ll layer
Closes IDF-7071
See merge request espressif/esp-idf!22823
2023-04-25 19:50:25 +08:00
C.S.M
7d9d27a060
Merge branch 'refactor/driver_ut_to_test_app' into 'master'
...
CI: Move all UT in driver to test_app
See merge request espressif/esp-idf!23343
2023-04-25 14:10:11 +08:00
Cao Sen Miao
8882ba2ba1
CI: Move all UT in driver to test_app
2023-04-25 10:40:32 +08:00
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
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
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
laokaiyao
a143a85822
i2s: workaround for inacurate PLL frequency after switching
2023-04-17 03:15:55 +00: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
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
Armando
6d4c0bb3aa
mspi: support 120M DDR flash and psram on S3 (experimental)
2023-04-03 10:30:50 +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
Armando
eee34bcf70
mspi: fix build failure under assertion disable
2023-03-21 10:14:59 +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
jingli
238f31d93b
uart: add low level func for uart to set err wr mask
2023-03-09 10:28:33 +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)
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
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
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
Marius Vikhammer
5d26a0de9a
wdt: add support for H2
2023-02-23 11:22:51 +08:00
Alexey Lapshin
36d0e275a0
hal: always inline clk_tree_ll functions
2023-02-22 05:33:03 +00:00
Jing Li
75a82988f1
Merge branch 'refactor/wdt_use_unified_type' into 'master'
...
wdt: refactor wdt codes to use unified type
Closes IDF-5653
See merge request espressif/esp-idf!22378
2023-02-21 09:46:06 +08:00
Armando (Dou Yiwen)
0c635543ff
Merge branch 'feature/support_shared_vs_non_shared_mmap' into 'master'
...
esp_mm: share and non-share mapping
Closes IDF-6575
See merge request espressif/esp-idf!22320
2023-02-18 08:02:15 +08:00
Armando
82ee8403b6
mmu: mmu_hal_check_valid_ext_vaddr_region
2023-02-17 13:04:55 +08:00
Laukik Hase
4cf889b692
memprot: Fix incorrect faulting address reported for esp32c3 & esp32s3
...
Co-authored-by: Mahavir Jain <mahavir@espressif.com>
2023-02-16 15:27:11 +05:30
jingli
9c37441b17
wdt: refactor wdt codes to use unified type
2023-02-15 12:08:55 +08:00
Armando
3afa671069
esp_adc: added adc digital filter feature
2023-02-10 16:46:20 +00:00
Song Ruo Jing
db59ab5000
Merge branch 'contrib/github_pr_10640' into 'master'
...
hal/uart_ll.h: Fix compile with C++ (ESP32-S3/H2) (GitHub PR)
Closes IDFGH-9255
See merge request espressif/esp-idf!22238
2023-02-10 10:51:27 +08:00
Song Ruo Jing
b69f983525
uart: Fix two TX concurrency issues
...
1. Concurrency might cause ESP_ERR_TIMEOUT when calling uart_wait_tx_done
2. Concurrency might cause RTS line being de-assreted during tx transmission for rs485 mode
2023-02-08 14:24:43 +08:00
Simon Arlott
d78d1a2376
hal/uart_ll.h: Fix compile issue with C++
...
Merges https://github.com/espressif/esp-idf/pull/10640
2023-02-08 06:24:24 +00:00
Armando
d6844051fc
esp_mm: new virtual memory mapping apis via mmu
2023-02-07 20:23:52 +08:00
morris
dbca74f1ef
gdma: prevent mutli-channels connect to the same peripheral
...
1. add check in the gdma driver, to prevent multiple channels connecting
to the same peripheral
2. memory copy DMA ID will occupy the peripheral's DMA ID on some ESP
targets (e.g. esp32c3/s3). We should search for a free one when
install async memcpy driver.
Closes https://github.com/espressif/esp-idf/issues/10575
2023-01-31 15:18:19 +08:00
Song Ruo Jing
ad55230b0a
ledc: Add support for esp32h2; Refactor ledc driver clock source selection related code
...
LEDC examples and test cases are supported on ESP32H2.
Switch to use general clock IDs for ledc_clk_cfg_t enum values.
Deprecate LEDC_USE_RTC8M_CLK.
2023-01-30 19:19:34 +08:00
Marius Vikhammer
5e9e8c396f
wdt: add support for WDTs on C6
2023-01-19 12:58:26 +08:00
wanlei
184145817c
spi_master: add feature spi periph clk source selectable
2023-01-18 15:40:12 +08:00
morris
d9825f5165
Merge branch 'feature/add_clk_tree_get_frequency_api' into 'master'
...
clk_tree: Stage 4 - Add a general API to get the frequency of different clocks
Closes IDF-6569
See merge request espressif/esp-idf!21830
2023-01-17 17:08:23 +08:00
laokaiyao
3908f4c84d
i2s_test: fix output half sample rate failure
2023-01-17 11:37:22 +08:00
laokaiyao
c25fc7d242
i2s: fix incorrect sclk in legacy driver
2023-01-17 11:34:25 +08:00
Song Ruo Jing
c7c2462d39
system: Add complete support for disabling ROM logging by calling esp_deep_sleep_disable_rom_logging on C2, C3, and S3
2023-01-17 11:30:43 +08:00
Song Ruo Jing
2c9aa4559c
clk_tree: Add a general API to get the frequency of different clocks
...
Add basic clk_tree driver and hal implementation.
2023-01-17 11:30:24 +08:00
Armando (Dou Yiwen)
d1b8da74d8
Merge branch 'refactor/improve_adc_power_maintanance' into 'master'
...
adc: improve adc power maintanance
Closes IDF-6114 and IDF-6318
See merge request espressif/esp-idf!21151
2023-01-12 20:30:36 +08:00
morris
f7c3d791a2
Merge branch 'feature/systimer_support_esp32h2' into 'master'
...
systimer: assign counter and alarm in esp_hw_support
Closes IDF-6484, IDF-5323, and IDF-6230
See merge request espressif/esp-idf!21984
2023-01-12 11:01:17 +08:00
morris
6c1d98d556
systimer: assign counter and alarm in esp_hw_support
2023-01-10 17:05:49 +08:00
jiangguangming
cceccb4ed9
hal: add rtc_cntl LL function for wake stub
2023-01-10 16:09:49 +08:00
C.S.M
faac178784
Merge branch 'feature/brownout_bringup_c6' into 'master'
...
BOD: Bringup for ESP32C6
Closes IDF-5345
See merge request espressif/esp-idf!21888
2023-01-10 14:42:43 +08:00
Cao Sen Miao
56a2d0b8a2
BOD: Bringup for ESP32C6
2023-01-10 10:37:30 +08:00
Armando
5be3c21cfc
adc: improve power logic
2023-01-09 17:10:04 +08:00
Armando
f9da48d94f
rtc: add pwdet and sar adc power related low level func
2023-01-09 17:09:01 +08:00
laokaiyao
6b631b68d1
sdm: correct concept duty to density
2023-01-06 17:01:48 +08:00
wanlei
971eaa0c08
spi_slave: fix spi_slave_isr iram_safe and add test case for it
2023-01-04 15:35:04 +08:00
laokaiyao
943dcd2cd1
i2s_pdm: fix tx frequency limitation
...
Closes: https://github.com/espressif/esp-idf/issues/10420
2022-12-29 16:31:03 +08:00
laokaiyao
5333ac81bf
adc: support ADC on esp32c6 (driver/test/example)
2022-12-23 11:24:06 +08:00
laokaiyao
e27f3e3128
adc: support ADC on esp32c6 (hal)
2022-12-23 11:24:06 +08:00
laokaiyao
7a002ab7a6
rtcio: support rtcio on c6
2022-12-22 14:14:38 +08:00
laokaiyao
f44aa9bcc5
i2s: fixed rx update stuck bug
2022-12-20 14:49:35 +08:00
Song Ruo Jing
244d3caa97
i2s: Fix esp32c6 get I2S_CLK_SRC_PLL_160M clock frequency value wrong issue
2022-12-13 19:18:34 +08:00
morris
62f1cbca2c
gpio: support glitch filter
2022-12-09 11:33:42 +08:00
Sachin Parekh
97709b899f
esp32s3/memprot: Fix DRAM fault address calculation
2022-11-30 13:46:53 +00:00
Sachin Parekh
90d40b96e2
esp32s3/memprot: Fix SRAM region high addresses
2022-11-30 13:46:53 +00:00
Sachin Parekh
2a01e66b25
esp32s3/memprot: Set permission for Icache region
2022-11-30 13:46:53 +00:00
KonstantinKondrashov
741e89cbaa
esp_hw_support: Removes efuse dependency
2022-11-25 19:27:33 +08:00
Aditya Patwardhan
1c233cc508
hmac_hal: Merge hmac hal layer for different into one
2022-11-24 16:04:26 +05:30
Aditya Patwardhan
2c1416d92c
hal/esp32s3: Rename static API hmac_ll_query_config_error to
...
hmac_ll_config_error in order to make it standardized across targets
2022-11-24 16:03:30 +05:30
Konstantin Kondrashov
b4580a1980
Merge branch 'feature/esp_timer_add_ll_for_rc_fast_clk' into 'master'
...
hal: Adds hal/ll func for SYSTIMER to select clock source: XTAL or RC_FAST_CLK
Closes IDF-5323
See merge request espressif/esp-idf!21136
2022-11-23 15:05:48 +08:00
KonstantinKondrashov
63f852adc8
hal: Adds hal/ll func for SYSTIMER to select clock source: XTAL or RC_FAST_CLK
2022-11-22 20:29:19 +08:00
Omar Chebib
cd21058097
C/Cxx: unify static assertions with the macro ESP_STATIC_ASSERT
...
Closes https://github.com/espressif/esp-idf/issues/9938
2022-11-21 16:18:08 +08:00
Simon Arlott
d1993c01f2
hal/uart_ll.h: Fix compile with C++
...
I'm including <hal/uart_ll.h> in my C++ application because I need to
bypass the uart driver. The inline functions in the header file fail to
compile as C++.
All of the enums need explicit casts for conversion to/from integers.
Merges https://github.com/espressif/esp-idf/pull/10106
2022-11-15 06:29:05 +00:00
Song Ruo Jing
d0a7dc3e9f
gpio: Fix IO hold function related problems
...
1. Fix deep sleep wakeup IOs can not be unhold issue
2. Correct hold related APIs' description
3. Fix gpio_force_hold_all API
docs: Add GPIO wakeup source to sleep_modes doc for ESP32C3 and C2
2022-11-11 20:39:04 +08:00
C.S.M
86aa012c26
Merge branch 'feature/bringup_i2c_esp32c6' into 'master'
...
I2C: Add i2c support for ESP32C6
Closes IDF-5326 and IDF-5327
See merge request espressif/esp-idf!20905
2022-11-08 11:56:15 +08:00
Cao Sen Miao
803fc3fbe0
I2C: Add i2c support for ESP32C6
2022-11-07 14:12:53 +08:00
morris
a25123f703
twai: bringup on esp32c6
2022-11-04 17:40:29 +08:00
liuning
57c394c4e0
esp_wifi: add protection for mac reset
2022-10-31 06:41:42 +00:00
Armando
260ee86c37
rtc: united sar peripheral control
2022-10-27 16:51:25 +08:00
morris
f997b81242
mcpwm: support esp32c6
2022-10-20 11:55:03 +08:00
Song Ruo Jing
6d24e8bcf4
gpio: Add support for esp32c6
2022-10-18 12:38:36 +08:00
jingli
2b8c43df69
hal/gpio_ll: fix digital gpio can not enable hold during deep sleep when force_unhold set(32/s2/s3)
2022-10-11 12:11:36 +08:00
jingli
128d82eaaa
hal/gpio_ll: fix digital gpio can not disable hold during deep sleep
2022-10-11 12:11:36 +08:00
jingli
b903a2253b
esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep
2022-10-11 12:11:28 +08:00
morris
b562754a2f
rmt: support esp32c6
2022-09-17 04:56:49 +00:00
laokaiyao
bae4944b90
i2s: bringup i2s on esp32c6
2022-09-15 20:03:39 +08:00
laokaiyao
7197e987cb
i2s: add XTAL clock source
2022-09-15 19:32:06 +08:00
Song Ruo Jing
de0401047c
rtcio: Disable USB Serial JTAG pad when setting pins 19 and 20 as RTC function on ESP32S3
...
Similar to the fix in gpio lower layers, USB Serial JTAG pad should be disabled when the DM and DP pins want to be used as rtcio pins.
2022-09-13 12:13:51 +08:00
morris
a1030307f1
gptimer: bringup driver on esp32c6
2022-09-13 10:50:58 +08:00
Simon
e923c15859
Merge branch 'refactor/i2c_hal' into 'master'
...
I2C: Refactor i2c hal and ll(pre-MR of I2C driver-NG)
See merge request espressif/esp-idf!19750
2022-09-02 10:47:35 +08:00
morris
7b2c491064
Merge branch 'feature/add_esp32c6_g0_components' into 'master'
...
ESP32C6: Add G0 components support (hal, soc, riscv, esp_common)
See merge request espressif/esp-idf!19826
2022-09-01 16:11:40 +08:00
Cao Sen Miao
31b88a4c88
I2C: Refactor i2c hal and ll
2022-09-01 15:53:59 +08:00
morris
e2634b5223
Merge branch 'feature/rgb_lcd_yuv_converter' into 'master'
...
RGB-YUV converter
Closes IDF-4598
See merge request espressif/esp-idf!19094
2022-09-01 13:41:14 +08:00
wuzhenghui
1d299a8976
esp32c6: add hal support
2022-09-01 12:37:51 +08:00
wuzhenghui
c31aaeda2a
ll: add reset interface to rtc_cntl_ll
2022-08-31 01:59:36 +00:00
Gao Xu
0da21aca0d
Merge branch 'bugfix/fix_spi_hd_quad_issue_esp32c3' into 'master'
...
essl_spi: fix wrong dummy cycle under quad spi mode ant add a test to verify spi quad mod
Closes IDF-5182 and IDF-5181
See merge request espressif/esp-idf!18680
2022-08-30 10:53:11 +08:00
Armando (Dou Yiwen)
ac63c0afd7
Merge branch 'feature/basic_mmu_framework' into 'master'
...
mmu: basic mmu driver framework
Closes IDFGH-6659 and IDF-5825
See merge request espressif/esp-idf!19547
2022-08-26 22:19:10 +08:00
Armando
2d44dc1eed
mmu: driver framework, for vaddr maintenance
...
This commit gives basic mmu driver framework. Now it is able to maintain
mmu virtual address usage on esp32, esp32s2 and esp32s3. Usage to
external virtual address should rely on mmu functions to know which
address range is available, instead of hardcoded.
This commit also improves psram memory that is added to the heap
allocator. Now it's added to the heap, according to the memory
alignment.
Closes https://github.com/espressif/esp-idf/issues/8295
2022-08-26 17:59:06 +08:00
morris
995b89fbb6
gptimer: add API to get captured count value
2022-08-25 17:55:19 +08:00
gaoxu
3610b14aef
SPI : fix wrong dummy cycle on quad mode and put get-command function in spi_ll.h
...
1.The dummy_bits is set to 4 in ESP32C3/C2, therefore, the data transmission started too early.This commit fix this issue by changing dummy_bits to 8.
2.Put the spi command the spi defintion in spi_types.h
3.Put the function which get spi command or dummy bits in spi_ll.h
2022-08-23 10:46:56 +08:00
Song Ruo Jing
72a15e3c7a
Merge branch 'bugfix/gpio_usb_pin_pupd' into 'master'
...
gpio: fix USB D+ pin cannot disable pullup
Closes IDFGH-7984
See merge request espressif/esp-idf!19191
2022-08-22 17:18:05 +08:00
Michael (XIAO Xufeng)
0a2e5a7774
Merge branch 'feat/support_esp32c2_uart' into 'master'
...
uart: update console docs about frequency for ESP32-C2, move frequency of clock sources out of HAL
Closes IDF-5424 and IDF-4332
See merge request espressif/esp-idf!19274
2022-08-22 14:24:26 +08:00
songruojing
01143bd732
gpio: fix USB D+ pin cannot disable pullup
...
Internally, disable usb serial jtag DP pin's pullup when calling gpio_ll_pullup_dis and rtcio_ll_pullup_disable
At usb serial jtag setup/install, re-enable DP pin's pullup
Closes https://github.com/espressif/esp-idf/issues/9495
2022-08-19 15:05:28 +08:00
morris
fc1aa2848b
rgb_lcd: support yuv converter
2022-08-17 06:33:06 +00:00
Michael (XIAO Xufeng)
746f4b814c
uart: move frequency of clock sources out of HAL
2022-08-15 18:55:43 +00:00
laokaiyao
62ab4456a8
touch_sleep: complete the support for touch sleep
2022-08-15 20:04:57 +08:00
morris
6f2ac1ce2a
rmt: add iram safe test
...
Closes https://github.com/espressif/esp-idf/issues/9487
2022-08-12 11:30:14 +08:00
morris
cf4cfc69ed
esp_adc: add test with -O0
2022-08-02 23:07:06 +08:00
morris
a5a171926b
rmt: add test with -O0
2022-08-02 23:07:06 +08:00
morris
031adc01c4
gpio: add test with -O0
2022-08-02 23:07:06 +08:00
morris
ca175857d1
pcnt: add test with -O0
2022-08-02 23:07:06 +08:00
morris
7faf1bee73
gptimer: add test with -O0
2022-08-02 22:53:36 +08:00
Armando
f325ad2211
mmu: fix wrong mmu end check
...
In mmu code, we follow the rule that the `end` address shouldn't be
touched. This commit fix wrong end address check in mmu_ll.h
2022-07-27 10:22:09 +00:00
morris
d94432fea8
systimer: refactor hal to accomodate more xtal choices
2022-07-25 16:08:52 +08:00
laokaiyao
edee3ee3cd
i2s: add slot sequence table
...
Closes: https://github.com/espressif/esp-idf/issues/9208
When I2S is configured into different modes, the slot sequence varies.
This commit updates slot sequence tables and corresponding descriptions
in (both code and programming guide).
2022-07-21 15:52:39 +08:00
laokaiyao
90866e99fb
i2s: add basic examples for STD/TDM/PDM mode
2022-07-21 15:52:39 +08:00
morris
4154eaec93
sdm: clean up soc/hal/ll code
2022-07-20 14:59:50 +08:00
Song Ruo Jing
4734b1433b
Merge branch 'bugfix/gpio_hal_coverity_fix' into 'master'
...
gpio: Fix ESP32S3 GPIO48 does not support hold function bug and Fix coverity report
Closes IDF-4901
See merge request espressif/esp-idf!18805
2022-07-19 21:37:15 +08:00
Armando (Dou Yiwen)
9f6f61345b
Merge branch 'feature/adc_driver_ng' into 'master'
...
ADC Driver NG
Closes IDF-4560, IDF-3908, IDF-4225, IDF-2482, IDF-4111, IDF-3610, IDF-4058, IDF-3801, IDF-3636, IDF-2537, IDF-4310, IDF-5150, IDF-5151, and IDF-4979
See merge request espressif/esp-idf!17960
2022-07-19 21:28:31 +08:00
Cao Sen Miao
53580a62b5
I2C: Fullfill the I2C clock tree, and support 26M XTAL on ESP32-C2
2022-07-19 11:41:42 +08:00
Armando
5b523a3313
esp_adc: new esp_adc component and adc drivers
2022-07-15 18:31:00 +08:00
songruojing
0c4b9a0101
gpio: Fix HAL bad bit shift operation on gpio_num_t reported from coverity
...
All gpio hal and ll functions input arguments gpio_num_t are changed to uint32_t type.
Validation of gpio num should be guaranteed from the driver layer.
2022-07-15 16:51:25 +08:00
Jiang Jiang Jian
b610b47a83
Merge branch 'feature/esp32s3_memprot_additional_improvements' into 'master'
...
[System/Security] Memprot after-merge improvements (v5.0)
Closes IDF-5263 and IDF-5208
See merge request espressif/esp-idf!18893
2022-07-13 15:48:20 +08:00
Cao Sen Miao
683d92bc88
flash_encryption: Fix issue that flash encryption cannot work when 8-line psram enabled,
...
Closes https://github.com/espressif/esp-idf/issues/9244 ,
Closes https://github.com/espressif/esp-idf/issues/9287
2022-07-12 16:08:57 +08:00
Song Ruo Jing
ea97cc93ea
Merge branch 'feature/c2_systimer_26mhz' into 'master'
...
esp32c2: 26 MHz XTAL support: Kconfig option, systimer support
Closes IDF-5412 and IDF-5413
See merge request espressif/esp-idf!18835
2022-07-11 16:17:25 +08:00
Ivan Grokhotkov
5b54ae76d4
esp_timer, hal: add support for non-integer systimer frequency
...
When ESP32-C2 is paired with a 26 MHz XTAL, the systimer tick
frequency becomes equal to 26 / 2.5 = 10.4 MHz. Previously we always
assumed that systimer tick frequency is integer (and 1 MHz * power of
two, above that!).
This commit introduces a new LL macro, SYSTIMER_LL_TICKS_PER_US_DIV.
It should be set in such a way that:
1. SYSTIMER_LL_TICKS_PER_US / SYSTIMER_LL_TICKS_PER_US_DIV equals the
actual systimer tick frequency,
2. and SYSTIMER_LL_TICKS_PER_US is integer.
For ESP32-C2 this means that SYSTIMER_LL_TICKS_PER_US = 52 and
SYSTIMER_LL_TICKS_PER_US_DIV = 5.
This introduced two possible issues:
1. Overflow when multiplying systimer counter by 5
- Should not be an issue, since systimer counter is 52-bit, so
counter * 5 is no more than 55-bit.
2. The code needs to perform:
- divide by 5: when converting from microseconds to ticks
- divide by 52: when converting from ticks to microseconds
The latter potentially introduces a performance issue for the
esp_timer_get_time function.
2022-07-11 12:24:37 +08:00
Martin Vychodil
0c87ae2a91
System/Security: Memprot API unified (ESP32S3)
...
Added missing features and improvements
2022-07-09 22:57:51 +02:00
Jiang Jiang Jian
a7bf3af687
Merge branch 'bugfix/reset_ble_hw_on_inititalization' into 'master'
...
component/bt: reset Bluetooth hardware during controller inititalization on ESP32-C3/ESP32-S3
Closes BT-2402
See merge request espressif/esp-idf!18831
2022-07-08 16:21:41 +08:00
Michael (XIAO Xufeng)
a58362a429
Merge branch 'feature/efuse_rev_major_minor' into 'master'
...
efuse: Adds major and minor versions
See merge request espressif/esp-idf!18255
2022-07-07 11:48:54 +08:00
wangmengyang
1d55f12c2d
component/bt: reset Bluetooth hardware during controller inititalization on ESP32-C3/ESP32-S3
...
1. Rename MACROs SYSTEM_WIFI_RST_EN register bit fields to be more recognizable
2. reset Bluetooth baseband and clock bits to fix the issue of task watchdog triggered during controller initialization due to invalid hardware state
2022-07-06 16:23:48 +08:00
Cao Sen Miao
e218723e0e
I2C: Make I2C clock frequency accurate
2022-07-06 11:58:08 +08:00
KonstantinKondrashov
0f8ff5aa15
efuse: Adds major and minor versions and others
2022-07-05 14:38:27 +08:00
Omar Chebib
cd48baf979
Refactor: move regi2c_*.h header files from esp_hw_support to soc component
...
When creating G0 layer, some regi2c_*.h headers were moved out from
esp_hw_support (G1) to soc (G0). In order to be consistent with that change,
move all the remaining regi2c_*.h headers to soc too.
2022-06-30 09:40:44 +00:00
Armando
31b3f31ef4
ext_mem: make memory region check strict
2022-06-28 14:17:44 +08:00
Cao Sen Miao
2c0651a671
Add regi2c enable/disable reference count
2022-06-23 15:36:44 +08:00
Cao Sen Miao
3a820462ac
temperature_sensor: Add temperature sensor support for ESP32-C2
2022-06-23 15:36:43 +08:00
Omar Chebib
8fae0f0753
G0: Support Xtensa targets for G0-only compilation
...
G0-only example now supports Xtensa targets. This means that G0 layer
does not depend on G1+ layers anymore
2022-06-20 11:34:20 +00:00
Martin Vychodil
339fcbf14d
System/Security: Memprot API unified (ESP32S3)
...
Unified Memory protection API for all PMS-aware chips - ESP32S3 port
2022-06-20 02:36:44 +00:00
laokaiyao
28b8fc6a7e
i2s: update documents for driver-NG
2022-06-15 10:30:04 +08:00
laokaiyao
0fe3bb8ab7
i2s: update examples and unit-tests
2022-06-15 10:29:06 +08:00
laokaiyao
621d0aa942
i2s: Introduced a brand new driver
2022-06-15 10:29:06 +08:00
Darian
e213e66ba3
Merge branch 'refactor/esp_hw_support_cpu' into 'master'
...
esp_hw_support: Add new esp_cpu.h abstraction
Closes IDF-4769
See merge request espressif/esp-idf!17091
2022-06-14 21:11:30 +08:00
morris
919344547b
Merge branch 'bugfix/rmt_register_file_s3' into 'master'
...
rmt: update register file after fixing csv of RMT peripheral (esp32s2/s3)
Closes IDFGH-7537
See merge request espressif/esp-idf!18392
2022-06-14 18:24:28 +08:00
Michael (XIAO Xufeng)
7b8e5888ca
Merge branch 'refactor/add_clk_tree_ll' into 'master'
...
clk_tree: Stage3 - HAL for clock subsystem
Closes IDF-4334
See merge request espressif/esp-idf!18270
2022-06-14 17:16:29 +08:00
Darian Leung
a8a3756b38
hal: Route CPU and Interrupt Controller HAL/LL to esp_cpu calls
...
This commit makes changes to cpu_ll.h, cpu_hal.h, and interrupt_controller_hal.h:
- Moved to esp_hw_support in order to be deprecated in the future
- HAL/LL API now route their calls to esp_cpu.h functions instead
Also updated soc_hal.h as follows:
- Removed __SOC_HAL_..._OTHER_CORES() macros as they dependend on cpu_hal.h
- Made soc_hal.h and soc_ll.h interfaces always inline, and removed soc_hal.c.
This commit also updates the XCHAL_ERRATUM_572 workaround by
- Removing it's HAL function and invoking the workaround it directly the bootloader
- Added missing workaround for the ESP32-S3
2022-06-14 14:40:03 +08:00
Darian Leung
149872131a
hal: Move dedicated GPIO LL and HAL
...
This commit moves the dedicated GPIO LL and HAL functions from
cpu_ll.h to dedic_gpio_cpu_ll.h.
- cpu_ll_enable_cycle_count() has also been removed due to lack of feasible usage scenarios
2022-06-14 14:38:29 +08:00
morris
843279d287
rgb_lcd: support fractional clock divisor
2022-06-14 02:20:47 +00:00
songruojing
c8752cee6a
clk_tree: Refactor rtc_clk.c by adding HAL layer for clock subsystem
2022-06-13 17:47:50 +08:00
morris
4094f13fd3
rmt: fix error in rmt register file
...
Closes https://github.com/espressif/esp-idf/issues/9100
2022-06-10 18:38:42 +08:00
morris
5daa73d236
Merge branch 'refactor/mcpwm_hal_driver_doc' into 'master'
...
mcpwm: don't support disable carrier one-shot pulse
Closes IDFGH-7406
See merge request espressif/esp-idf!18295
2022-06-10 10:28:59 +08:00
Cao Sen Miao
6589daabb9
MMU: Add configurable mmu page size support on ESP32C2
2022-06-08 19:34:31 +08:00
morris
f7ff7ac4d0
mcpwm: clean up hal driver and add doc
2022-06-02 15:01:18 +08:00
morris
4352c39e3e
Merge branch 'feature/cache_c2_support' into 'master'
...
cache: access error & illegal error ll functions
Closes IDF-3820
See merge request espressif/esp-idf!18203
2022-05-30 11:40:11 +08:00
Jiang Jiang Jian
f3922f1b7f
Merge branch 'feature/flash_mmap_refactor' into 'master'
...
flash mmap: abstract R/W of MMU table instead of reg access
See merge request espressif/esp-idf!16882
2022-05-29 13:56:37 +08:00
Marius Vikhammer
415ab25a49
HAL: place cpu_ll_get_cycle_count in IRAM
...
Closes https://github.com/espressif/esp-idf/issues/9008
2022-05-26 14:42:41 +08:00
Gustavo Henrique Nihei
c946c80415
hal: Fix max value for clkdiv_pre in ESP32-S3 SPI master clock config
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-05-23 10:13:07 -03:00
Armando
8532d09259
cache: access error & illegal error ll functions
2022-05-23 15:00:47 +08:00
jiangguangming
9c6afee12f
flash mmap: abstract R/W MMU table instead of reg access
2022-05-20 16:46:27 +08:00
Omar Chebib
477bc9e64c
I2C: Fix SCL period timings on ESP targets
...
The output frequency is now more accurate as the SCL period timings have been fixed.
This fix applies for ESP32, ESP32S3, ESP32C3, ESP32C2 and ESP32H2
2022-05-18 05:36:08 +00:00
Jing Li
ac0d16cdc8
Merge branch 'bugfix/fix_cannot_lslp_again_after_ulp_wakeup' into 'master'
...
sleep: fix cannot lightsleep again after a wakeup from ULP
Closes IDFGH-4396
See merge request espressif/esp-idf!17970
2022-05-13 22:25:23 +08:00
jingli
a85e187ea7
remove wrong function rtc_cntl_ll_ulp_wakeup_enable for esp32s2 and esp32s3
2022-05-12 21:51:21 +08:00
jingli
dd414b9305
esp_hw_support/sleep: fix cannot lightsleep again after a wakeup from ULP
...
Since ulp wakeup signal are connected to ulp int raw(except esp32), we
need to clear ulp int raw before sleep when ulp wakeup enabled. Otherwise,
if the ulp int raw is already set, chip will not sleep properly.
Closes https://github.com/espressif/esp-idf/issues/6229
2022-05-12 17:57:08 +08:00
Armando
49747bb486
adc: create common adc hal layer
2022-05-07 19:20:44 +08:00
Armando (Dou Yiwen)
76be0c2624
Merge branch 'bugfix/fix_esp32_mmu_init_issue' into 'master'
...
mmu: add ll functions for mmu unmap
Closes OCD-526 and IDF-4962
See merge request espressif/esp-idf!17868
2022-05-05 22:21:18 +08:00
Armando
b748a4fe5e
mmu: improve vaddr range check
2022-04-27 11:35:07 +08:00
Armando
e09787d851
mmu: fix macro MMU_ENTRY_NUM and add new macro MMU_MAX_PADDR_PAGE_NUM
2022-04-27 11:35:07 +08:00
Armando
2764cd5682
mmu: simplify mmu_hal_init
2022-04-27 11:35:07 +08:00