Li Shuai
4e2a32d9b3
soc_cap: add SOC_PM_SUPPORT_VDDSDIO_PD soc_caps
...
soc_cap: add SOC_PM_CPU_RETENTION_BY_SW/REGDMA
soc caps: add SOC_PMU_SUPPORTED
2023-01-31 22:12:18 +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
laokaiyao
3b450fb865
refactor soc CMakeLists
2023-01-20 22:07:50 +08:00
Marius Vikhammer
e2d3f7c54c
Merge branch 'feature/c6_wdt' into 'master'
...
wdt: add support for WDTs on C6
Closes IDF-5935 and IDF-5340
See merge request espressif/esp-idf!21038
2023-01-20 10:36:42 +08:00
Marius Vikhammer
5e9e8c396f
wdt: add support for WDTs on C6
2023-01-19 12:58:26 +08:00
Kevin (Lao Kaiyao)
668e125dd4
Merge branch 'feature/support_i2s_on_h2' into 'master'
...
i2s: support i2s on esp32h2
Closes IDF-6219 and IDF-6700
See merge request espressif/esp-idf!21948
2023-01-19 10:47:33 +08:00
Wan Lei
e7c520e849
Merge branch 'feature/add_spi_ckl_source_selectable' into 'master'
...
spi_master: add feature spi periph clk source selectable
Closes IDF-6289
See merge request espressif/esp-idf!21324
2023-01-19 00:54:24 +08:00
laokaiyao
c79187fdeb
i2s: support i2s on esp32h2
2023-01-18 18:42:56 +08:00
wanlei
184145817c
spi_master: add feature spi periph clk source selectable
2023-01-18 15:40:12 +08:00
Armando
f1de9faa71
sdio: c6 support
2023-01-18 02:34:46 +00: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
Mahavir Jain
fd34bdb70a
Merge branch 'feature/secure_features_are_enabled_correctly' into 'master'
...
security: Adds new APIs to check that all eFuse security features are enabled correctly
Closes IDF-1814
See merge request espressif/esp-idf!19532
2023-01-13 15:09:55 +08:00
morris
ce84476870
gptimer: support esp32h2
2023-01-12 14:10:11 +00:00
Armando (Dou Yiwen)
297c7852a5
Merge branch 'bugfix/fix_adc_channel_h_not_aligned_to_ng_driver_issue' into 'master'
...
adc: make adc_channel.h macros work with ng driver
Closes IDFGH-9105
See merge request espressif/esp-idf!21946
2023-01-12 11:07:20 +08:00
KonstantinKondrashov
696f7495a0
security: Adds new APIs to check that all eFuse security features are enabled correctly
2023-01-10 23:35:13 +08:00
morris
d0b7f3214a
gdma: correct the dma trigger of uart
...
GDMA trigger actually is not assigned to UART controller, but for UHCI
controller
2023-01-10 16:37:01 +08:00
Cao Sen Miao
56a2d0b8a2
BOD: Bringup for ESP32C6
2023-01-10 10:37:30 +08:00
Armando
349922dcee
adc: make adc_channel.h macros work with ng driver
...
Closes https://github.com/espressif/esp-idf/issues/10508
2023-01-09 14:25:24 +08:00
morris
cb7e957cc4
Merge branch 'feature/io_mux_use_pll80_c6' into 'master'
...
io_mux: support change clock source to PLL_F80M
Closes IDF-6342 and IDF-6345
See merge request espressif/esp-idf!21613
2022-12-29 22:06:52 +08:00
Jiang Guang Ming
8464186e67
Merge branch 'bugfix/update_esp_rom_rtc_header' into 'master'
...
update esp rom rtc header
See merge request espressif/esp-idf!21802
2022-12-29 18:16:13 +08:00
morris
ca1b182b25
glitch_filter: support derive clock source form IO MUX
2022-12-29 14:46:16 +08:00
morris
cbe297e5a0
sdm: support derive clock source from IO MUX
2022-12-29 14:46:16 +08:00
Cao Sen Miao
4713a9a7f2
ESP32H2: Introduce new chip target esp32h2, hello_world example supported
2022-12-29 12:29:14 +08:00
jiangguangming
42144a7e45
soc: H4/H2/C6 support SOC_PM_SUPPORT_DEEPSLEEP_CHECK_STUB_ONLY
2022-12-28 17:35:07 +08:00
wuzhenghui
aa20825659
soc_caps: rename ESP_PD_DOMAIN_RTC8M to ESP_PD_DOMAIN_FOSC
2022-12-27 21:31:21 +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
Armando
6aa7091199
adc: added a soc macro indicating digital controller supported unit
2022-12-16 02:06:03 +00: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
Song Ruo Jing
9402ab427b
ledc: Add basic support for esp32c6
2022-12-07 18:40:50 +08:00
Ivan Grokhotkov
29430e464d
Merge branch 'fix/esp32s3_memprot' into 'master'
...
ESP32S3: Add memory protection for Icache region
Closes IDF-6390
See merge request espressif/esp-idf!21329
2022-12-01 11:41:47 +08:00
Jiang Jiang Jian
236a5301a0
Merge branch 'bugfix/fix_bt_sleep_hangs_when_enable_light_sleep' into 'master'
...
bt: fix bt sleep flow hangs in btdm_sleep_clock_sync
Closes BT-2990
See merge request espressif/esp-idf!21311
2022-11-30 21:55:40 +08:00
Sachin Parekh
97709b899f
esp32s3/memprot: Fix DRAM fault address calculation
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
Konstantin Kondrashov
0786539047
Merge branch 'feature/remove_efuse_dependency' into 'master'
...
esp_hw_support: Removes efuse dependency
Closes IDF-4713
See merge request espressif/esp-idf!21212
2022-11-29 18:12:26 +08:00
jingli
cf244a14f0
bt: fix bt sleep flow hangs in btdm_sleep_clock_sync
...
Bluetooth low power related logic and regs have separate power domain from MAC and BB,
and do not power down during light sleep. If reset when power up MAC and BB in sleep
flow, it may destroy the state of bt low power part.
2022-11-29 14:28:32 +08:00
KonstantinKondrashov
741e89cbaa
esp_hw_support: Removes efuse dependency
2022-11-25 19:27:33 +08:00
Armando (Dou Yiwen)
2ad7b85a9e
Merge branch 'bugfix/improve_ext_virtual_memory_allocation_in_2nd_btld' into 'master'
...
bootloader: improve irom & drom mapping way in 2nd bootloader on esp32c6
Closes IDF-6331
See merge request espressif/esp-idf!21173
2022-11-25 15:24:06 +08:00
Armando
9d9d1e4bf3
soc: remove unused macro in ext_mem_defs.h
...
ESP_CACHE_TEMP_ADDR is not used in IDF
2022-11-24 10:29:35 +08:00
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
Armando
c3682bf0a4
soc: update iram/dram addr range in ext_mem_defs.h
...
IRAM0/DRAM0 addr range update, on s3, c3, c2, h4, c6:
IRAM0_ADDRESS_LOW ~ IRAM0_ADDRESS_HIGH
DRAM0_ADDRESS_LOW ~ DRAM0_ADDRESS_HIGH
now are for the real IRAM0 and DRAM0
2022-11-22 18:53:50 +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
David McCurley
0c89ab3b58
soc: update SOC_GPIO_VALID_GPIO_MASK doc
...
Merges https://github.com/espressif/esp-idf/pull/10165
2022-11-17 06:24:11 +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
morris
f69a53f56d
Merge branch 'feature/twai_bringup_esp32c6' into 'master'
...
TWAI: initial driver bring up on esp32c6 (TWAI0 only)
Closes IDF-5313 and IDF-5940
See merge request espressif/esp-idf!20735
2022-11-07 18:00:05 +08:00
morris
a25123f703
twai: bringup on esp32c6
2022-11-04 17:40:29 +08:00
morris
6828c011d9
twai: define clock source name
...
twai clock source is target-specific,
this commit is to define them in the soc layer
2022-11-04 17:40:29 +08:00
morris
f02facbe28
twai: describe peripheral info
...
Describe peripheral informations in the twai_peirph.c, including:
Interrupt number, GPIO matrix signal ID, etc
2022-11-04 17:40:29 +08:00
laokaiyao
fa9b022f68
i2s: support 4 line pdm rx on esp32s3
2022-11-04 15:46:34 +08:00
laokaiyao
9b8a78153f
i2s: refactor soc caps
2022-11-04 12:31:12 +08:00
Song Ruo Jing
be0fdfa176
soc: Add a soc cap, SOC_CLK_RC_FAST_D256_SUPPORTED, for whether the target has the RC_FAST_D256 clock
2022-11-01 11:23:26 +08:00
Jiang Jiang Jian
f191b2f034
Merge branch 'bugfix/fix_xtal_related_rtc_params_for_esp32' into 'master'
...
esp32/rtc: fix xtal unstable in some cases when sleep
Closes ESPCS-869
See merge request espressif/esp-idf!20425
2022-10-26 15:57:48 +08:00
morris
f997b81242
mcpwm: support esp32c6
2022-10-20 11:55:03 +08:00
Song Ruo Jing
c8c9ce0a8b
Merge branch 'feature/esp32c6_gpio_support' into 'master'
...
gpio: bringup driver on esp32c6 FPGA
Closes IDF-5870 and IDF-5937
See merge request espressif/esp-idf!20364
2022-10-19 18:44:30 +08:00
Tomas Rezucha
dc705312a3
usb: Allow settings of all signals in usb_phy
...
Until now, only usb_phy signals for external PHY were defined.
This is now extended with all OTG signals.
2022-10-18 09:18:29 +02:00
Song Ruo Jing
6d24e8bcf4
gpio: Add support for esp32c6
2022-10-18 12:38:36 +08:00
Jiang Jiang Jian
e08e2f071f
Merge branch 'bugfix/fix_part_of_modem_not_reset_when_power_on' into 'master'
...
Coexistence: fix part of modem module not reset when power up
See merge request espressif/esp-idf!19849
2022-10-18 11:13:10 +08:00
Wan Lei
f98a37f571
Merge branch 'docs/add_flash_to_psram_feature' into 'master'
...
docs: add the flash content moved to psram feature
Closes IDF-5885
See merge request espressif/esp-idf!19908
2022-10-17 14:51:15 +08:00
gaoxu
2cb2ff99af
docs: add description about flash content moved to psram feature
2022-10-11 15:15:04 +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
jingli
0a44d09f4f
esp32/rtc: fix xtal unstable in some cases when sleep
...
1. add xtal buf wait to fix high temperature restart issue
2. add min sleep value to fix xtal stop due to too short sleep time issue
2022-10-09 19:58:58 +08:00
jingli
42699637ec
soc: remove unused DR_REG_DPORT_END macro for c2/c3/s2/s3
2022-09-22 11:45:20 +08:00
jingli
cce2af9193
wifi/bt: fix part of modem module not reset when power up
2022-09-22 11:45:20 +08:00
jingli
05a2fbe810
esp_hw_support/clk_cali: fix xtal32k error detect
2022-09-21 03:03:25 +00:00
Jiang Jiang Jian
9d8d118397
Merge branch 'feature/add_mesh_support_macro' into 'master'
...
ble_mesh: docs: Remove BLE Mesh related reference for C2
Closes IDF-4215
See merge request espressif/esp-idf!19513
2022-09-20 11:06:25 +08:00
wangjialiang
6e79d05814
ble_mesh: docs: Remove BLE Mesh related reference for C2
2022-09-16 19:39:51 +08:00
Darian Leung
d333833f59
usb_host: Rename struct/ll/hal symbols to use "usb_dwc" prefix
...
Following the file renaming to use the "usb_dwc" prefix, this commit
updates the symbol names of those files to use the "usb_dwc" as well.
Some LL functions were also renamed so that the register name is
mentioned.
2022-09-16 16:45:26 +08:00
Darian Leung
d8d4e3acb0
usb_host: Rename struct/ll/hal files to use "usb_dwc" prefix
...
This commit updates the DWC_OTG based struct/ll/hal file names to
use the prefix "usb_dwc". This naming scheme reduces ambiguity if
another USB controller implementation is added.
As a result, "hcd.c" has been renamed to "hcd_dwc.c"
2022-09-16 16:45:26 +08:00
Kevin (Lao Kaiyao)
04b4bc6cb5
Merge branch 'feature/support_i2s_on_esp32c6' into 'master'
...
i2s: support i2s on esp32c6
See merge request espressif/esp-idf!19989
2022-09-16 12:31:24 +08:00
Omar Chebib
4f1a9e436e
Merge branch 'feature/add_int_task_wdt_esp32c2' into 'master'
...
WDT: implement interrupt wdt and task wdt for ESP32-C2
Closes IDF-4035, IDF-4205, and IDF-5055
See merge request espressif/esp-idf!18918
2022-09-16 10:43:34 +08:00
laokaiyao
7197e987cb
i2s: add XTAL clock source
2022-09-15 19:32:06 +08:00
Omar Chebib
53c7dd4efc
WDT: implement interrupt wdt and task wdt for ESP32-C2
...
ESP32-C2 has a single group timer, thus it will use it for the interrupt watchdog,
which is more critical than the task watchdog. The latter is implement in
software thanks to the `esp_timer`component.
2022-09-15 14:37:59 +08:00
morris
1fc458b3f7
mcpwm: check sync direction is valid
2022-09-14 11:49:37 +08:00
Wan Lei
f7748beb4d
Merge branch 'bugfix/spi2_add_device_cs_more_than_3' into 'master'
...
spi_master: fix error when use `spi_bus_add_device` add more than 3 devices
Closes IDFGH-7288
See merge request espressif/esp-idf!19798
2022-09-14 10:33:37 +08:00
morris
6539aa2275
pcnt: support esp32c6
2022-09-08 18:26:04 +08:00
Sudeep Mohanty
4fde033a5f
ulp: Added support for RTC I2C driver for ULP RISC-V on esp32s2 and esp32s3
...
This commit adds support for using the RTC I2C peripheral on the ULP
RISC-V core for esp32s2 and esp32s3. It also adds an example to demonstrate the
usage of the RTC I2C peripheral.
This commit also modifies the rtc_i2c register structure files to enable
the use of bitfields in the ULP RISC-V RTC I2C driver.
2022-09-05 10:21:43 +02:00
wanlei
96aa2792f8
spi_master:fix error when use spi_bus_add_device
more than 3 device
...
update gpio_sig at `spics_out` array in each spi_periph.c of chips later than s2
then `spi_bus_add_device` can correctly distribute gpio_signals for cs_signal
Closes https://github.com/espressif/esp-idf/issues/8876
2022-09-05 12:10:22 +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
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
songruojing
9d515185d0
esp32c6: clean up existing soc files and header file inclusion in IDF to be compatible with the new chip
2022-09-01 12:28:06 +08:00
Song Ruo Jing
6a60ecf780
soc_caps: Introduce SOC_LEDC_SUPPORTED and SOC_I2C_SUPPORTED caps to IDF
...
Wrap the ledc, i2c source files with the new caps in CMakeLists and linker.lf.
This could avoid potential source file not found warning during linking time.
2022-08-31 20:43:22 +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
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
Michael (XIAO Xufeng)
e7dbfd65cb
Merge branch 'feature/support_7.2.8_soc/pvt-dig' into 'master'
...
rtc: auto adjust LDO voltage based on pvt-dig saved in efuse
Closes IDF-4873
See merge request espressif/esp-idf!16365
2022-08-22 11:43:07 +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
zlq
80c821a9aa
1.add ldo parameters in efuse table; 2.set ldo based on pvt-efuse; 3.ldo voltage is changed based on cpu freq
2022-08-15 18:03:55 +08:00
Sudeep Mohanty
6b010612a2
rtci2c: Corrected the register base addr reference for RTC I2C on esp32s3
...
This commit corrects the register base address reference for RTC I2C on
esp32s3.
2022-08-15 10:46:40 +02:00
Erhan Kurubas
66e3a6f6a3
esp32s3: fix interrupt names used by SystemView
2022-08-11 11:23:03 +02:00
Island
fd8101498b
Merge branch 'bugfix/fix_bluetooth_cap_define_and_doc' into 'master'
...
Bugfix/fix bluetooth cap define and doc
Closes BC-1298 and BC-1297
See merge request espressif/esp-idf!19149
2022-08-11 16:51:08 +08:00
Sachin Parekh
41c5359703
esp32s3: Update world controller headers
2022-08-10 07:22:02 +00:00
Geng Yuchao
0a1d8c1e09
Fix soc caps define for all chips
2022-08-08 20:50:28 +08:00
jingli
ee3423834e
kconfig: refactor xtal freq kconfig to common configuration item
2022-08-05 19:12:29 +08:00
Wan Lei
1265a2db9d
Merge branch 'refactor/add_missing_include_path_for_soc_struct_files' into 'master'
...
Fix check_public_headers violations for soc component
Closes IDF-5397
See merge request espressif/esp-idf!19158
2022-08-01 10:14:04 +08:00
wuzhenghui
7cb9304b65
Clean IRAM and DRAM address space conversion macros
2022-07-29 17:07:39 +08:00
wanlei
bb5a95f1aa
soc: fix register header files not self-contain
2022-07-29 11:18:06 +08:00
wuzhenghui
21a4eda4d4
Use the entire sharedbuffer space as the heap of the D/IRAM attribute
2022-07-29 10:51:47 +08:00
morris
d94432fea8
systimer: refactor hal to accomodate more xtal choices
2022-07-25 16:08:52 +08:00
morris
c4e84751a5
driver: fix public header exceptions for driver
2022-07-22 00:12:36 +00:00
morris
741b031e83
soc: added SOC_TOUCH_SENSE_SUPPORTED macro
2022-07-22 00:12:36 +00: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
145454356b
gpio: Fix ESP32S3 GPIO48 does not support hold function bug
...
GPIO_HOLD_MASK array was missing the last item
Add __Static_assert to check array sizes for all gpio_periph.c files to prevent same mistake in the future.
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
Jiang Jiang Jian
3630713e5f
Merge branch 'docs/esp32c2_sys_feature_api_guides' into 'master'
...
docs: update system API-guides for ESP32-C2
Closes IDF-4202, IDF-4213, and IDF-4222
See merge request espressif/esp-idf!18979
2022-07-12 10:59:12 +08:00
Marius Vikhammer
d62421619c
docs: update system API-guides for ESP32-C2
2022-07-12 09:32:43 +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
songruojing
b3d8db3ae2
bootloader, esp_system: esp32c2 console uart to support 26MHz xtal
...
Gets the XTAL frequency from the RTC storage register, remove UART_CLK_FREQ_ROM macro from soc.h
2022-07-11 12:24:58 +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
morris
75bd6fc2d9
Merge branch 'contrib/github_pr_9302' into 'master'
...
ESP32S3 USB external PHY pinout (GitHub PR)
Closes IDFGH-7761
See merge request espressif/esp-idf!18909
2022-07-07 16:17:26 +08:00
morris
b0e228f756
soc: update copyright for usb phy pins
2022-07-07 11:50:06 +08:00
lsita
9ceff23c6d
USB external PHY pinout set as in Reference Manual Figure 29-3.
2022-07-06 14:54:35 +02:00
wangmengyang
f86efb2bc2
fix licence copyright for header file syscon_reg.h on ESP32C3 and ESP32S3
2022-07-06 16:24:03 +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
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
Mahavir Jain
c619e2162d
Merge branch 'feature/memprot_settings_to_soc_caps' into 'master'
...
esp_system: move MEMPROT related configuration to soc capability header
Closes IDF-4506
See merge request espressif/esp-idf!18645
2022-06-24 18:08:19 +08:00
Cao Sen Miao
3a820462ac
temperature_sensor: Add temperature sensor support for ESP32-C2
2022-06-23 15:36:43 +08:00
Mahavir Jain
0a12eab32e
esp_system: move MEMPROT related configuration to soc capability header
...
Closes IDF-4506
2022-06-23 10:29:42 +05:30
Zim Kalinowski
136c873364
Merge branch 'refactor/g0_for_xtensa' into 'master'
...
G0: Support Xtensa targets for G0-only compilation
Closes IDF-3087
See merge request espressif/esp-idf!18538
2022-06-23 07:28:37 +08:00
muhaidong
96f86e0bb4
esp_wifi: esp32c2 does not support wifi mesh
2022-06-21 16:48:52 +08:00
muhaidong
b48b9beace
esp_wifi: esp32c2 does not support csi.
2022-06-20 21:47:51 +08:00
morris
865937fba3
Merge branch 'bugfix/fix_esp32c2_dose_not_support_wapi' into 'master'
...
esp_wifi: esp32c2 does not support wapi
Closes IDF-4216
See merge request espressif/esp-idf!18573
2022-06-20 21:31:54 +08:00
muhaidong
2ccce0ca41
esp_wifi: update comments of WI-FI CAPS in soc_caps.h
2022-06-20 19:43:16 +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
692b9980b5
Merge branch 'feature/memprot_api_unified_s3_2' into 'master'
...
System/Security: Memprot API unified (ESP32S3)
See merge request espressif/esp-idf!16169
2022-06-20 17:34:22 +08:00
muhaidong
6ca2804107
esp_wifi: esp32c2 does not support wapi.
2022-06-20 11:42:12 +08: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
Ivan Grokhotkov
3973db7664
soc: make register access macros compatible with C++20
...
In C++20, using the result of an assignment to a 'volatile' value is
deprecated.
Breaking change: register "setter" or modification macros can no
longer be used as expressions.
Closes https://github.com/espressif/esp-idf/issues/9170
2022-06-17 18:09:22 +02:00
laokaiyao
28b8fc6a7e
i2s: update documents for driver-NG
2022-06-15 10:30:04 +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
Darian Leung
61eb7baa6b
esp_hw_support: Add esp_cpu.h abstraction and API
...
This commit updates the esp_cpu.h API. The new API presents a new
abstraction of the CPU where CPU presents the following interfaces:
- CPU Control (to stall/unstall/reset the CPU)
- CPU Registers (to read registers commonly used in SW such as SP, PC)
- CPU Interrupts (to inquire/allocate/control the CPUs 32 interrupts)
- Memory Port (to configure the CPU's memory bus for memory protection)
- Debugging (to configure/control the CPU's debugging port)
Note: Also added FORCE_INLINE_ATTR to the DoxyFile in order to pass doc
builds for esp_cpu.h
2022-06-14 14:30:58 +08: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
Michael (XIAO Xufeng)
773715d900
Merge branch 'feature/support_refresh_brownout_v1' into 'master'
...
spi_flash: send reset when brownout detected on XMC flash
Closes IDF-3882
See merge request espressif/esp-idf!16873
2022-06-06 16:27:58 +08:00
Jiang Jiang Jian
b617ccfb4c
Merge branch 'feature/esp32c2_eco1_bluetooth_update_0525_for_MR' into 'master'
...
Support bluetooth for esp32c2 chip
See merge request espressif/esp-idf!18243
2022-06-04 17:35:17 +08:00
Michael (XIAO Xufeng)
d798662421
Merge branch 'bugfix/s3_sleep_voltage' into 'master'
...
esp32s3: fixed dangerous power parameters in sleep modes
See merge request espressif/esp-idf!18168
2022-06-04 00:47:32 +08:00
Geng Yuchao
8012af37d1
Fix soc caps for BT
2022-06-03 21:45:40 +08:00
morris
f7ff7ac4d0
mcpwm: clean up hal driver and add doc
2022-06-02 15:01:18 +08:00
Cao Sen Miao
6a2d3509dc
spi_flash: Making XMC flash works more stable when brownout detected
2022-06-02 10:38:55 +08:00
chaijie
e624206ca6
modify voltage param to fit all mode of S3
2022-06-01 21:03:54 +08:00
Michael (XIAO Xufeng)
ab69df3ea7
esp32s3: fixed dangerous power parameters in sleep modes
2022-06-01 21:03:54 +08:00
Konstantin Kondrashov
b824f68b35
Merge branch 'feature/move_dport_workaround_to_g0' into 'master'
...
dport_access: Move DPORT workaround to G0
Closes IDF-2177
See merge request espressif/esp-idf!17961
2022-06-01 12:11:12 +08:00
KonstantinKondrashov
505e18237a
bootloader: Support Flash Encryption for ESP32-C2
2022-05-31 11:12:21 +00:00
KonstantinKondrashov
ac4c7d99fe
dport: Move DPORT workaround to G0
2022-05-31 13:44:18 +08:00
Jiang Jiang Jian
2bc5d58807
Merge branch 'feature/support_sleep_for_esp32c2' into 'master'
...
esp32c2: support power management
Closes IDF-4440 and IDF-4617
See merge request espressif/esp-idf!18174
2022-05-30 17:57:18 +08:00
Jiang Jiang Jian
0e94779b2e
Merge branch 'feature/support_esp32c2_wifi_new' into 'master'
...
Bringup ESP32C2 Wi-Fi
Closes IDF-3905
See merge request espressif/esp-idf!18136
2022-05-29 18:25:24 +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
Wu Zheng Hui
b98622c624
efuse: update efuse name
2022-05-28 22:03:16 +08:00
Jessy Chen
7b9b448041
esp_wifi: optimize wifi kconfig
2022-05-28 08:52:55 +00:00
jingli
ae127b04cd
fix ld err since esp32c2 do not suport config gpio of spi flash via efuse
2022-05-27 19:29:38 +08:00
songruojing
74c99a8a07
rtc_clk: Add alias for the clock tree related enum and macros for backwards compatibility
2022-05-24 22:59:51 +08:00
songruojing
729d70129a
clk_tree: add initial docs for clock tree
2022-05-24 22:59:51 +08:00
morris
b26cd91537
doc: added clk_tree definitions to doc
2022-05-24 22:59:51 +08:00
songruojing
a5b09cf015
rtc_clk: Clean up some clock related enum and macro in soc/rtc.h, replace with new ones in
...
soc/clk_tree_defs.h
2022-05-24 22:59:41 +08:00
jiangguangming
42bc0b0643
soc: remove unused MMU related macros
2022-05-20 16:46:28 +08:00
Michael (XIAO Xufeng)
0adb814af3
Merge branch 'bugfix/fix_memory_miss_bug_esp32c3_esp32s3' into 'master'
...
ESP32C3/ESP32S3: Fix cpu crash bug when wakeup from lightsleep for memory data miss
Closes IDF-162 and IDF-4923
See merge request espressif/esp-idf!17823
2022-05-18 12:05:08 +08:00
chaijie
cc0a5a4edb
solve memory error bug when in lightsleep mode
2022-05-16 11:43:00 +08:00
Michael (XIAO Xufeng)
234628b3ea
pm: putting dbias and pd_cur code into same function
2022-05-14 02:35:11 +08: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
abb6bb1181
esp_hw_support/sleep: fix cannot enable sleep reject in some cases
...
When enable sleep reject before this fix, we have two limitations:
1. it must be light sleep
2. RTC GPIO wakeup source must be set
We require light sleep because `esp_deep_sleep_start` function has
been declared with "noreturn" attribute, So developers don't expect
that this function may return (due to an error or a sleep reject).
But the requirement for RTC GPIO wakeup source is not reasonable for
all chips. This requirement exists because ESP32 only supports RTC GPIO
and SDIO sleep reject sources. But later chips support all sleep reject
sources.
This fix brings the following changes:
for ESP32: RTC GPIO and SDIO sleep reject sources can be enabled
when corresponding wakeup source is set.
for later chips: all sleep reject sources can be enabled when
corresponding wakeup source is set.
2022-05-12 19:09:57 +08:00
Marius Vikhammer
c8617fe965
docs: fix all doxygen warnings
...
Doxygen warnings would previously not result in a failed pipeline.
Fixed this as well as all current warnings.
2022-05-12 14:50:03 +08:00
Michael (XIAO Xufeng)
2905cbbe03
pm: fixed RTC8M domain power issues
...
introduced in e44ead5356
1. The int8M power domain config by default is PD. While LEDC is using
RTC8M as clock source, this power domain will be kept on.
But when 8MD256 is used as RTC clock source, the power domain should
also be kept on.
On ESP32, there was protection for it, but broken by commit
e44ead5356
. Currently the power domain
will be forced on when LEDC is using RTC8M as clock source &&
!int8m_pd_en (user enable ESP_PDP_DOMAIN_RTC8M in lightsleep). Otherwise
the power domain will be powered off, regardless of RTC clock source.
In other words, int8M domain will be forced off (even when 8MD256
used as RTC clock source) if LEDC not using RTC8M as clock source, user
doesn't enable ESP_PDP_DOMAIN_RTC8M, or in deep sleep.
On later chips, there's no such protection, so 8MD256 could't be used as
RTC clock source in sleep modes.
This commit adds protection of 8MD256 clock to other chips. Fixes the
incorrect protection logic overriding on ESP32. Now the power domain
will be determiend by the logic below (order by priority):
1. When RTC clock source uses 8MD256, power up
2. When LEDC uses RTC8M clock source, power up
3. In deepsleep, power down
4. Otherwise determined by user config of ESP_PDP_DOMAIN_RTC8M,
power down by default. (This is preferred to have highest
priority, but it's kept as is because of current code structure.)
2. Before, after the macro `RTC_SLEEP_CONFIG_DEFAULT` decides dbias, the
protection above may force the int8m PU. This may cause the inconsistent
of dbias and the int8m PU status.
This commit lifts the logic of pd int8m/xtal fpu logic to upper layer
(sleep_modes.c).
Related: https://github.com/espressif/esp-idf/issues/8007 , https://github.com/espressif/esp-idf/pull/8089
temp
2022-05-11 11:30:47 +08:00
morris
523c51818c
Merge branch 'feature/c2_soc_hwsupport_code' into 'master'
...
ESP32-C2 (729) RTC update (Clock, PM)
Closes IDF-3833 and IDF-4874
See merge request espressif/esp-idf!17311
2022-05-11 11:23:57 +08:00
zlq
6336f8191e
C2 rtc code
2022-05-09 17:50:54 +08:00
morris
722fde218d
uart: add default source clock for all targets
2022-05-09 11:26:30 +08:00
Armando (Dou Yiwen)
03aeac1dde
Merge branch 'refactor/adc_hal_common_layer' into 'master'
...
adc: create common adc hal layer
See merge request espressif/esp-idf!17577
2022-05-08 15:45:56 +08:00
Armando
49747bb486
adc: create common adc hal layer
2022-05-07 19:20:44 +08:00
morris
2fb43820c2
driver_ng: implement new rmt driver
...
The legacy driver can't handle the breaking change between esp chips
very well.
And it's not elegant to extend new feature like DMA, ETM.
The new driver can return a opaque handle for each RMT channel.
An obvious transaction concept was also introduced.
TX and RX functionalities are splited out.
2022-05-07 10:34:50 +00:00
morris
3f66660444
Merge branch 'feature/bringup_esp32c2eco1' into 'master'
...
esp32c2:ECO1 ROM update
Closes IDF-4933
See merge request espressif/esp-idf!17723
2022-05-06 18:06:26 +08:00
Simon
0b00831703
Merge branch 'bugfix/i2c_timeout_issue' into 'master'
...
I2C: Patch for solving watchdog timeout issue
Closes IDFGH-6923, IDFGH-6463, and IDFGH-5558
See merge request espressif/esp-idf!17956
2022-05-06 10:38:38 +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
wuzhenghui
17b3d139d5
hal: use systimer HAL IMPL in ESP32C2 ROM
2022-05-05 17:41:11 +08:00
Cao Sen Miao
9a9f10e4c9
I2C: patch for solving watchdog timeout issue
2022-05-05 14:36:49 +08:00
Michael (XIAO Xufeng)
6bc8dd0f92
Merge branch 'feature/support_esp32s3_bbpll_fix' into 'master'
...
rtc: update esp32s3 bbpll config
Closes IDF-4872
See merge request espressif/esp-idf!14471
2022-04-27 22:52:21 +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
Cao Sen Miao
4418a855ba
spi_flash: refactor the spi_flash clock configuration, and add support for esp32c2
2022-04-26 15:22:37 +08:00
sly
117c30e835
fix S3 bbpll calibrate fail bug in high temperature
2022-04-25 16:41:04 +08:00
morris
4280164be4
rmt: add more clock source caps
2022-04-21 13:59:47 +00:00
Armando (Dou Yiwen)
5bb59b00e7
Merge branch 'feature/support_bss_on_psram' into 'master'
...
psram: support .bss on psram on esp32s3
Closes IDF-4814, IDF-4396, IDFGH-7148, and IDFGH-7153
See merge request espressif/esp-idf!17557
2022-04-20 11:16:28 +08:00
Armando
f8249550f8
psram: support .bss on psram on esp32s3
2022-04-19 19:48:00 +08:00
morris
373d9b3dbc
Merge branch 'feature/default_clk_for_gptimer' into 'master'
...
clk_tree: added default clock source for peripherals (GPTimer, RMT, LCD, TempSensor)
Closes IDF-4894
See merge request espressif/esp-idf!17759
2022-04-19 18:02:40 +08:00
songruojing
534346f4bb
ledc: Provide support for esp32c2 and esp32h2
...
LEDC examples, unit test, and programming guide are all updated.
2022-04-14 08:15:14 +00:00
morris
f32a89826c
clk_tree: added default clock source for peripheral
2022-04-14 15:44:56 +08:00
songruo
60bb5c913d
clk_tree: prework of introducing clk subsystem control
...
1. Clean up clk usage in IDF, replace rtc_clk_xtal/apb_freq_get with
upper level API esp_clk_xtal/apb_freq
2. Fix small errors and wrong comments related to clock
3. Add clk_tree_defs.h to provide an unified clock id for each chip
Modify the NGed drivers to adopt new clock ids
2022-04-11 12:09:06 +08:00