SalimTerryLi
874a720286
soc/ll: workaround compiler bug that generate 8/16 bits inst instead of 32 bits one
...
update all struct headers to be more "standardized":
- bit fields are properly wrapped with struct
- bitwidth sum should be 32 within same struct, so that it's correctly padded with reserved bits
- bit field should be uint32_t
- typedef volatile struct xxx{} yyy;: xxx must exists. refer: https://github.com/espressif/esp-idf/pull/3199
added helper macros to force peripheral registers being accessed in 32 bitwidth
added a check script into ci
2021-08-30 13:50:58 +08:00
Cao Sen Miao
c860b3ead6
gpio: fix issue that gpio cannot hold during deep-sleep on c3, Closes https://github.com/espressif/esp-idf/issues/7455
2021-08-25 15:16:08 +08:00
SalimTerryLi
443845fd54
timer_group: update reg headers for c3&s2&h2 and fix direct 8/16bit reg access
2021-08-19 18:56:32 +08:00
wuzhenghui
f913a10a22
update reset reason for c3/s3/h2
2021-08-13 17:45:53 +08:00
Michael (XIAO Xufeng)
947980ecac
Merge branch 'bugfix/uart_set_pin_use_iomux' into 'master'
...
uart: uart_set_pin function will now use IOMUX whenever possible
Closes IDF-3183
See merge request espressif/esp-idf!14318
2021-08-05 04:17:29 +00:00
Omar Chebib
779e7400b0
uart: uart_set_pin function will now use IOMUX whenever possible
...
By using IOMUX instead of GPIO Matrix for UART, it is now possible
on ESP32 boards to use the UART as a wake up source even if it is
not used as a console.
For other boards where this issue was not present, using IOMUX has
the advantage to be faster than using GPIO matrix, so a highest
baudrate can be used
2021-08-04 12:48:30 +08:00
laokaiyao
f863998e90
driver/i2s: support mclk
2021-08-04 10:20:03 +08:00
laokaiyao
3c57a6ac36
driver/i2s: refactor ll and hal
2021-08-04 10:20:03 +08:00
laokaiyao
d51b85989b
doc/i2s: update i2s programming guide on s3 & c3
2021-08-04 10:20:03 +08:00
laokaiyao
f7f8c9c11f
driver/i2s: support i2s on c3 and s3
...
1. Support i2s on esp32c3 and esp32s3
2. Refactor i2s_config_t to avoid breaking change
2. Fix a bug that receiving unavailable values from message queue when dma queue has been re-allocted
4. Support i2s unit test on esp32c3 and esp32s3
2021-08-04 10:20:03 +08:00
houwenxiang
2f1247e1c4
driver: support I2S on ESP32-S3 & ESP32-C3
...
1. refactor I2S driver.
2. support TDM mode for esp2s3 & esp32c3.
2021-08-04 10:20:03 +08:00
Konstantin Kondrashov
4972605b16
esp_common: Add API for IPC to run small pieces of code on the other CPU, in the context of the level 4 interrupt
2021-08-03 14:35:29 +08:00
Cao Sen Miao
24529a6aec
usb_serial_jtag: enable blocking implementation on esp32s3
2021-07-31 16:32:09 +08:00
Armando
3ce2d85e9e
adc: support adc2 working with WiFi
2021-07-28 17:50:14 +08:00
Li Hang Fan
61f79cbf9c
Merge branch 'refactor/move_ldscript_to_soc' into 'master'
...
refactor/soc: Move peripheral linker scripts out of target component
Closes IDF-3580
See merge request espressif/esp-idf!14474
2021-07-23 11:54:56 +00:00
Michael (XIAO Xufeng)
fbb6b1b11a
Merge branch 'bugfix/fix_uart_reset_issue_on_esp32c3' into 'master'
...
bugfix(uart): reset uart0 core before uart apb reset
Closes IDF-3362
See merge request espressif/esp-idf!12749
2021-07-22 07:20:58 +00:00
SalimTerryLi
2347e68e6b
soc: move peripheral linker scripts out of target component
2021-07-22 12:55:01 +08:00
Cao Sen Miao
69ad24c943
temp_sensor: add docs for esp32c3
2021-07-21 13:34:52 +08:00
Chen Yi Qun
6317f5b481
add uart core reset in uart_module_enable()
2021-07-21 11:41:04 +08:00
Omar Chebib
c4f57af6c9
G0: Memory layouts are now part of heap components
2021-07-15 11:38:23 +10:00
Angus Gratton
6f0b36f7be
Merge branch 'doc/flash_manual_encrypt' into 'master'
...
docs: Add manual encryption docs, fix flash encryption efuse bug
Closes IDFGH-3006
See merge request espressif/esp-idf!14178
2021-07-14 09:27:34 +00:00
Angus Gratton
fcd193b024
docs: Use soc_caps instead of chip names for flash encryption docs
...
Clears the way for ESP32-S3 and future chips.
2021-07-14 16:57:31 +10:00
morris
1560d6f1ba
soc: add reset reasons in soc component
2021-07-13 10:45:38 +08:00
Cao Sen Miao
3aa9ac2469
usb_serial_jtag: Add blocking driver to support vfs.
2021-07-05 11:22:38 +08:00
Shu Chen
75bd02bd46
esp32h2: add some more fixes and TODOs
2021-07-01 20:36:39 +08:00
Michael (XIAO Xufeng)
e8ff60544d
Merge branch 'bugfix/channel_clk_independent' into 'master'
...
rmt: clean up and support esp32-s3 (no DMA support)
Closes IDF-3296 and IDFGH-5350
See merge request espressif/esp-idf!13244
2021-07-01 04:37:07 +00:00
Alexey Gerenkov
20fd09728f
apptrace: Adds ESP32-C3 support
2021-06-24 13:16:14 +03:00
morris
8e483e34a8
rmt: restructure rmt_signal_conn_t
2021-06-22 15:29:11 +08:00
Konstantin Kondrashov
f339b3fc96
efuse(esp32): Deprecate esp_efuse_burn_new_values() & esp_efuse_write_random_key()
...
These functions were used only for esp32 in secure_boot and flash encryption.
Use idf efuse APIs instead of efuse regs.
2021-06-17 07:21:36 +08:00
Jiang Jiang Jian
3c30e688c4
Merge branch 'feature/support_auto_adjust_voltage_storingInEfuse_openGlitchRst' into 'master'
...
ESP32C3: auto adjust voltage dbias storing in efuse and open glitch reset for ECO3
See merge request espressif/esp-idf!13395
2021-05-13 03:49:59 +00:00
chaijie
eea76d14bb
ESP32C3: auto adjust voltage dbias storing in efuse and open glitch reset for ECO3
...
1. add some efuse api to get rtc & digital voltage
2. set dig_rtc voltage to a fix value storing in efuse no mater which cpu frequency
3. modify hardware code in bootloader to fit all c3 ECO3 version
2021-05-08 17:56:54 +08:00
morris
6e981af406
gdma: separate tx/rx channel interrupt
2021-05-06 15:06:37 +08:00
Michael (XIAO Xufeng)
58490418ad
Merge branch 'feature/merge_c3_caps' into 'master'
...
soc: merge C3 caps into a single soc_caps.h
See merge request espressif/esp-idf!13337
2021-05-06 05:56:42 +00:00
Michael (XIAO Xufeng)
76fbb689fd
Merge branch 'bugfix/remove_uart2_c3' into 'master'
...
uart: remove misleading ld files and soc defs for UART2
See merge request espressif/esp-idf!13340
2021-04-29 05:18:25 +00:00
Jeroen Domburg
644f430a31
Merge branch 'feature/esp32c3_usbjtagserial_console' into 'master'
...
USB serial/jtag controller: Add vfs (logging/printf), panic handler, gdb support.
See merge request espressif/esp-idf!12925
2021-04-28 08:38:31 +00:00
Jeroen Domburg
2c75f63f89
* ets_delay_us(1) has too much overhead; change logic
...
* Fix MR comments
2021-04-28 16:38:24 +08:00
Marius Vikhammer
504a1e6102
soc: merge C3 caps into a single soc_caps.h
2021-04-28 14:42:35 +08:00
Michael (XIAO Xufeng)
a0d13a31ec
uart: fix misleading files for UART2
...
Includes: header files, ld files and clk.c
ESP32-C3 only have UART0 and UART1.
2021-04-27 17:40:19 +08:00
Armando
b53a68bf70
spi: update spi_struct and spi_reg to 727
2021-04-27 11:11:00 +08:00
Cao Sen Miao
0d81edb174
spi_flash: refactoring flash encryption into new api
2021-04-25 17:09:25 +08:00
Ivan Grokhotkov
ea7d020f20
Merge branch 'feature/ubsan' into 'master'
...
system: add option to enable undefined behavior sanitizer (UBSAN)
Closes IDF-166 and IDF-1824
See merge request espressif/esp-idf!11318
2021-04-23 09:27:42 +00:00
Ivan Grokhotkov
da90775d98
hal: mpu: fix signed overflow error
2021-04-22 23:33:47 +02:00
morris
7c1e1c9e2d
systimer: update soc data
2021-04-22 21:07:35 +08:00
Darian Leung
7087f80b1e
Update TWAI driver docs and registers for esp32c3
...
This commit updates the documentation and register struct
of the TWAI driver for the ESP32-C3. Note that the register
fields for ESP32-S3 have also been updated.
2021-04-14 15:00:07 +08:00
Michael (XIAO Xufeng)
f5f3c7143c
Merge branch 'feat/c3_driver_api_cleanup_gpio' into 'master'
...
gpio, rtcio: removed unsupported features on different targets
See merge request espressif/esp-idf!13103
2021-04-13 06:51:33 +00:00
Michael (XIAO Xufeng)
6ab5b9cbf9
gpio, rtcio: removed unsupported features on different targets
2021-04-13 13:21:08 +08:00
morris
75dfd970b4
dac: added DAC support macro
...
Remove DAC support on ESP32-S3
2021-04-12 12:04:46 +08:00
Michael (XIAO Xufeng)
925dacd7fb
Merge branch 'bugfix/remove_HSPI_macro_on_c3' into 'master'
...
spi: remove HSPI macros on esp32c3 and esp32s3
Closes IDF-2535
See merge request espressif/esp-idf!12637
2021-04-08 09:33:18 +00:00
Armando
9b9ea71ff9
spi: remove HSPI macro on esp32c3 and esp32s3
2021-04-06 13:42:49 +08:00
chaijie
f9de69586b
esp32s2/esp32s3/esp32c3: Decrease bootloader cost time
2021-04-01 06:19:34 +00:00
chaijie
c101fc3e3d
fix c3 hardware bug before ECO3 and optimizate bbpll config:
...
1. deepsleep poweron reset bug in high temperature before ECO3;
2. brownout reset bug before ECO2;
3. bbpll voltage low bug before ECO3;
4. need xpd iph for xtal before ECO3;
2021-03-31 13:08:56 +00:00
Darian Leung
2f58060921
TWAI: FIFO overrun handling and errata workarounds
...
This commit adds handling for FIFO overruns and
adds workarounds for HW errats on the ESP32.
Closes https://github.com/espressif/esp-idf/issues/2519
Closes https://github.com/espressif/esp-idf/issues/4276
2021-03-30 14:17:31 +08:00
Armando
a5295af829
adc: update adc header files on c3
2021-03-26 12:04:46 +08:00
Krzysztof Budzynski
1953af4fb2
Merge branch 'doc/c3_system_api' into 'master'
...
docs: update system api reference chapters for C3
Closes IDF-2327 and IDF-2320
See merge request espressif/esp-idf!12730
2021-03-24 10:28:19 +00:00
Angus Gratton
54edd4fc58
Merge branch 'feature/wdt_c3' into 'master'
...
wdt: Fix RTC_SLOW_CLK for chips, corrects WDT timeout.
Closes IDF-2118 and IDF-2332
See merge request espressif/esp-idf!12796
2021-03-22 06:48:58 +00:00
Michael (XIAO Xufeng)
3a90d51831
Merge branch 'refactor/using_isr_callback_in_timer_example' into 'master'
...
TIMG: clean up timer example and add example test
Closes IDF-2722, IDF-2766, and IDF-2347
See merge request espressif/esp-idf!12218
2021-03-22 06:36:32 +00:00
KonstantinKondrashov
aa1338bf23
wdt: Fix timeout and RTC_SLOW_CLK
...
RTC_SLOW_CLK
ESP32: 150kHz
ESP32-S2: 90kHz
ESP32-S3: 150kHz
ESP32-C3: 150kHz
2021-03-19 00:15:18 +08:00
Mahavir Jain
277e277690
esp32c3: correct name for RTC memory region in heap
2021-03-18 17:53:26 +05:30
morris
5a520cacf1
timer_group: correct timer_ll_set_divider
2021-03-16 17:56:37 +08:00
Marius Vikhammer
91439e3818
docs: updated system api-reference chapters for C3
2021-03-15 18:51:12 +08:00
Li Shuai
92ddbcda05
deep sleep: power down wifi and bt during deep sleep
2021-03-10 18:22:41 +00:00
Angus Gratton
70e13752ae
Merge branch 'feature/rtc_time_get' into 'master'
...
rtc: Clean up for S2,S3,C3
Closes IDF-2569
See merge request espressif/esp-idf!12336
2021-03-05 01:16:15 +00:00
KonstantinKondrashov
b31bf01484
rtc: Clean up for S2,S3,C3
2021-03-01 16:51:15 +08:00
Marius Vikhammer
6334b5e56f
docs: update api-reference chapters for C3
...
Checked and updated the following chapters:
* api-reference/network
* api-reference/protocols
* api-reference/provisioning
* api-reference/storage
* api-reference/peripherals/ds
* api-reference/peripherals/hmac
* api-reference/peripherals/secure_element
2021-03-01 14:58:08 +08:00
Jiang Jiang Jian
53cd589bcc
Merge branch 'bugfix/wifi_phy_register_backup' into 'master'
...
esp_wifi: store PHY digital registers before disabling PHY and load them after enabling PHY
See merge request espressif/esp-idf!12059
2021-02-26 10:01:52 +00:00
Cao Sen Miao
a8343bc470
esp_system: support gpio wakeup from deep sleep on esp32c3
2021-02-26 12:26:49 +08:00
Xia Xiaotian
ce8b996ca0
esp_wifi: synchronize Wi-Fi adapter between different chips
...
Support preferring to allocate Wi-Fi memory from PSRAM on ESP32-S3
Support Wi-Fi TX cache buffer on ESP32-S3
2021-02-26 11:29:50 +08:00
Xia Xiaotian
f53c0c5b87
esp_wifi: store PHY digital registers before disabling PHY and load
...
them after enabling PHY
2021-02-26 11:29:50 +08:00
morris
7b37158ede
rmt: distinguish group and channel in HAL layer
2021-02-25 12:42:23 +08:00
Omar Chebib
727481d71c
gpio: enable GPIO19 on ESP32C3 boards
2021-02-22 08:44:55 +00:00
Armando
d0415bd8f6
spi: remove hard-coded DMA chan in soc_caps.h
2021-02-22 07:06:05 +00:00
Armando
c438ad5d72
spi: apply gdma allocator to SPI
2021-02-22 07:06:05 +00:00
Michael (XIAO Xufeng)
f5f6c59e63
Merge branch 'feature/apply_gdma_new_channel_api_to_adc' into 'master'
...
adc: apply gdma new channel api to adc
Closes IDF-2500
See merge request espressif/esp-idf!12008
2021-02-19 13:07:32 +00:00
KonstantinKondrashov
43ebb8ea61
efuse: Updates description of uart_print_control efuse
2021-02-08 18:02:55 +08:00
Armando
5427c18781
adc: apply gdma api to adc on esp32c3
2021-02-08 11:41:21 +08:00
Michael (XIAO Xufeng)
822a40a6cf
Merge branch 'fix/adc_xpd_calibration' into 'master'
...
adc: fixed the issue that ADC power is left on after the calibration is done
See merge request espressif/esp-idf!12207
2021-02-05 16:28:53 +08:00
Angus Gratton
018d7c2551
Merge branch 'feature/add_pkg_and_revision_for_c3' into 'master'
...
efuse(esp32c3): Adds getting chip_revision and chip_pkg
See merge request espressif/esp-idf!12060
2021-02-04 16:04:36 +08:00
Michael (XIAO Xufeng)
0700129c5a
soc: merge dac_caps.h into soc_caps.h for C3
2021-02-04 13:15:10 +08:00
Marius Vikhammer
548fd02d10
docs: initial update of programming guide for C3
...
Updates "front page" content, get-started, and api-guides with C3 content
Enable building and publishing of C3 docs in CI
2021-02-01 15:40:02 +08:00
baohongde
eef66789d4
Mac BB power down in light sleep
...
components/bt: Do not use feature: timer support isr dispatch method
disable controller after wake up finished.
protect critical section of power down
choose clk in sleep
components/coex: mac bb power down in light sleep
components/coex: Macro changed
components/os: protect reserved interrupt number
update phy to phy_version 300,6e46ba7,Jan 25 2021
some bugfix
2021-01-28 22:28:04 +08:00
Martin Vychodil
69096ddce5
Security: ESP32C3 memory protection feature (IRAM0/DRAM0)
...
Software support for PMS module.
Allows controlled memory access to IRAM (R/W/X) and DRAM0 (R/W)
On/locked by default, configurable in Kconfig (esp_system)
Closes https://jira.espressif.com:8443/browse/IDF-2092
2021-01-27 08:44:03 +01:00
Michael (XIAO Xufeng)
c99e891201
Merge branch 'feature/sync_adc_changes_from_c3_to_master_last' into 'master'
...
adc: sync adc changes from c3 to master (last time)
Closes IDF-2694
See merge request espressif/esp-idf!12134
2021-01-26 12:52:20 +08:00
Michael (XIAO Xufeng)
2b83418141
adc: add fallback calibration method
...
Also:
1. Separate static configuration into init phase to improve
performance
2. Add a init code config layer to avoid duplicated configuration
3. Add a HW_CALIBRATION_V1 caps
2021-01-25 20:30:42 +08:00
KonstantinKondrashov
3ed226c362
efuse(esp32c3): Adds getting chip_revision and chip_pkg
2021-01-25 19:37:40 +08:00
Michael (XIAO Xufeng)
7a20ea5f0e
Merge branch 'feature/support_flash_sus_res_c3' into 'master'
...
spi_flash: Add flash auto-suspend auto-resume mode on esp32c3
Closes IDF-2591
See merge request espressif/esp-idf!11888
2021-01-25 17:41:32 +08:00
Armando
f9ec7ddda3
adc: add comment for ADC sampling frequency
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
90fc3e7030
adc: update the monitor and filter in the HAL on C3
...
On C3 ADC has no enable bit for monitor and filter. However we can use context variables to implement one
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
d7d1dee208
system: reset dma when soft reset
2021-01-25 04:51:40 +00:00
Cao Sen Miao
9905da46e0
spi_flash: Add auto suspend mode on esp32c3
2021-01-25 11:14:02 +08:00
Angus Gratton
fe8a891de9
Merge branch 'feature/support_esp32c3_master_cmake_secure_boot' into 'master'
...
bootloader/esp32c3: Support secure boot
Closes IDF-2115
See merge request espressif/esp-idf!11797
2021-01-21 08:42:49 +08:00
Michael (XIAO Xufeng)
db45f00860
Merge branch 'bugfix/fix_esp32c3_rf_40M_loss_package_bug' into 'master'
...
esp32c3: fix rf 40M loss package bug when CPU run 80M
See merge request espressif/esp-idf!12057
2021-01-20 18:48:52 +08:00
Angus Gratton
cfdd7f0f22
Merge branch 'feature/c3_crypto_gdma' into 'master'
...
AES/SHA: GDMA crypto driver
Closes IDF-2192 and IDF-2501
See merge request espressif/esp-idf!12014
2021-01-20 16:42:39 +08:00
Li Shuai
3170ecf268
deep sleep: add empty interface rtc_deep_sleep_start for esp32c3
2021-01-20 13:28:34 +08:00
KonstantinKondrashov
98f726fa4b
bootloader/esp32c3: Adds secure boot (not yet supported)
2021-01-19 20:51:13 +08:00
Li Shuai
f168ac3b39
light sleep: add cpu power down support for esp32c3
2021-01-19 14:51:50 +08:00
Li Shuai
a43de3a44b
fix set UART_FORCE_XOFF
can't stop new Tx request issue
2021-01-19 14:51:22 +08:00
Li Shuai
6d12fdd6e7
light sleep: add gpio configure workaround at slept status for esp32c3
2021-01-19 14:51:22 +08:00
Li Shuai
ac7d1bec76
light sleep: overhead time accuracy optimization for esp32c3
2021-01-19 14:50:58 +08:00
Li Shuai
aa7fd175b9
light sleep: light sleep support for esp32c3
2021-01-19 14:50:58 +08:00
chaijie
180d3fe44a
esp32c3: fix rf 40M loss package bug
2021-01-19 14:09:00 +08:00