Omar Chebib
e533431095
espcoredump: Fix bugs related to (fake) stacks
...
Add support to tasks stacks in RTC DRAM. Before this fix, any stack
in RTC DRAM would have been considered as corrupted, whichi is not
the case.
Fix a bug related to wrong parameters passed to esp_core_dump_get_stack.
Fix a bug reading fake stack memory, triggering a memory violation.
* Closes https://github.com/espressif/esp-idf/issues/6751
* Merges https://github.com/espressif/esp-idf/pull/6750
2021-03-22 11:38:21 +08:00
Mahavir Jain
6b1a83b38b
Merge branch 'bugfix/fix_rtc_memory_region_name' into 'master'
...
esp32c3: correct name for RTC memory region in heap
See merge request espressif/esp-idf!12790
2021-03-19 04:53:39 +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
Marius Vikhammer
e83d213c56
rtc: add rtc related changes from feature/support_7.2.7_soc
2021-03-18 15:23:31 +08:00
Marius Vikhammer
2aead8ba57
Support ESP32S3 Beta 3 target
...
Update ROM API. Port changes from bringup branch.
2021-03-18 10:24:22 +08:00
Marius Vikhammer
e2919eca8e
soc: add soc headers from S3 fpga bringup branch
2021-03-17 18:47:51 +08:00
morris
3b66958b33
mcpwm: added peripheral signal description list
2021-03-16 21:54:00 +08:00
morris
f5ca47c0fc
mcpwm: rename macros related to soc capbility
2021-03-16 21:53:59 +08:00
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
fuzhibo
6b361ed70f
fix: reduce the consumption of touch sensor during deep sleep
2021-03-15 03:59:54 +00:00
morris
d0be56b8fe
lcd: add LL driver for esp32-s3
2021-03-13 22:31:30 +08:00
Jiang Jiang Jian
ae65cffff0
Merge branch 'bugfix/esp32c3_light_sleep_default_params_optimize' into 'master'
...
light sleep: some default parameters optimization
See merge request espressif/esp-idf!12461
2021-03-11 03:33:46 +00:00
Angus Gratton
fd164b82b6
Merge branch 'refactor/move_from_xtensa' into 'master'
...
Movements from xtensa
Closes IDF-2164
See merge request espressif/esp-idf!10556
2021-03-11 00:24:25 +00:00
Li Shuai
92ddbcda05
deep sleep: power down wifi and bt during deep sleep
2021-03-10 18:22:41 +00:00
Marius Vikhammer
fe71a8e340
aes/sha: use a shared lazy allocated GDMA channel for AES and SHA
...
Removed the old dynamically allocated GDMA channel approach.
It proved too unreliable as we couldn't not ensure consumers of the mbedtls
would properly free the channels after use.
Replaced by a single shared GDMA channel for AES and SHA, which won't be
released unless user specifically calls API for releasing it.
2021-03-09 09:23:05 +08: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
Renz Bagaporo
1efdcd69d9
xtensa: move out trax
2021-02-26 19:45:48 +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
morris
6dc7f95342
mcpwm: fix wrong meta information
2021-02-22 20:23:35 +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
Ivan Grokhotkov
a57d5813bf
Merge branch 'bugfix/esp32_rtc_mem_registers_llvm_assembler' into 'master'
...
soc esp32: Removes parentheses from RTC_MEM_xyz macros that expand directly to single numbers
See merge request espressif/esp-idf!12331
2021-02-19 15:58:36 +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
Angus Gratton
2ec04b57de
soc esp32: Removes parentheses from RTC_MEM_xyz macros that expand directly to single numbers
...
Not necessary in these cases, and prevents parens from expanding into the
assembly code such as added in 562ab01046
-
a pattern which is accepted by GCC assembler but illegal syntax for LLVM assembler.
As reported https://github.com/espressif/llvm-project/issues/35#issuecomment-726853574
2021-02-08 10:08:01 +11: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
Jiang Jiang Jian
28faf93c51
Merge branch 'feature/esp32c3_power_down' into 'master'
...
esp32c3 : power down MAC and BB only if both Wi-Fi and BT power down
Closes FC3-99
See merge request espressif/esp-idf!12076
2021-01-28 23:27:19 +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
Jiang Jiang Jian
9eae54f3be
Merge branch 'bugfix/fix_a2dp_sink_crash_due_to_ble5.0_code' into 'master'
...
fix a2dp sink crash due to ble 5.0 code
Closes BT-1358, BT-1354, and BT-1356
See merge request espressif/esp-idf!12170
2021-01-28 19:41:54 +08:00
Angus Gratton
ae165c9b52
Merge branch 'bugfix/esp32s2_rom_address_range' into 'master'
...
soc: Fix SOC_IROM_MASK_HIGH address
Closes IDF-2672
See merge request espressif/esp-idf!12126
2021-01-28 13:49:27 +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
zhiweijian@espressif.com
28fd413bf5
fix ble restart faild when enable ble sleep
2021-01-27 14:45:03 +08: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
Darian Leung
1fabfd005b
soc: Fix SOC_IROM_MASK_HIGH address
...
The high address limit IROM on the esp32s2 is incorrect, thus
causing backtrace printing to think valid function PCs are invalid.
2021-01-25 14:54:25 +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
KonstantinKondrashov
afef16c2e9
spi_flash: Support suspend/resume mode for operations
...
- Adds arbitration between the erase and write in suspend mode
(If the flash memory is suspended then only a read operation can be performed.)
- espcoredump: Dump does not use suspend feature, just resume before continue.
- spi_flash: Add release_cpu() to do suspend/release_cpu/resume
2021-01-25 11:13:38 +08:00
Chen Jian Xing
f71adec8fb
Support ESP32S3 (beta2) WiFi
2021-01-25 00:18:42 +08:00
Michael (XIAO Xufeng)
68034a5149
Merge branch 'bugfix/soc_rtcperi_rtcldo' into 'master'
...
fix rtc peripheral wakeup fail bug & clear rtc regulator force on configuration when in deepsleep
See merge request espressif/esp-idf!9709
2021-01-22 16:55:55 +08:00
Michael (XIAO Xufeng)
a08265aad8
Merge branch 'bugfix/fix_x32k_config_param' into 'master'
...
esp32s2/esp32s3: Improve 32k xtal startup time
See merge request espressif/esp-idf!11836
2021-01-22 16:42:54 +08:00
Angus Gratton
3532f52f60
Merge branch 'bugfix/ldgen_ignore_nonexistent_archives_and_obj' into 'master'
...
ldgen: check mappings
Closes IDF-1624
See merge request espressif/esp-idf!8557
2021-01-21 15:59:35 +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
chaijie
f6c61544ae
esp32s2/esp32s3: Improve 32k xtal startup time
2021-01-20 03:51:21 +00:00
chaijie
7cf32b4387
esp32s2: Fix wakeup fail issue when pd peripheral in lightsleep.
...
esp32s2: fix wrong deepsleep configuration issue.
1. if RTC_CK8M_ENABLE_WAIT_DEFAULT set to 1, rtc peripherals will not poweron successfully if pd peripherals in light_sleep, the minimum RTC_CK8M_ENABLE_WAIT_DEFAULT is RTC_POWERUP_CYCLES + RTC_WAIT_CYCLES + 2;
2. when goto deepsleep after lightsleep waking up, rtc regulator should not force pu.
2021-01-20 03:51:07 +00:00
KonstantinKondrashov
88c5fe49b8
soc: Adds a soc_caps define for all chips to define the number of boot key digests
2021-01-19 20:51:13 +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
Renz Bagaporo
d1c800fbbb
components: fix ldgen check errors
2021-01-19 11:17:18 +08:00
Marius Vikhammer
51169b0e0c
AES/SHA: use GDMA driver instead of LL
2021-01-19 11:02:51 +08:00
Angus Gratton
5938b9a892
Merge branch 'feature/support_esp32c3_master_cmake_reset_reason' into 'master'
...
esp32c3: Add UTs for reset_reason
Closes IDF-2091
See merge request espressif/esp-idf!11546
2021-01-18 07:12:21 +08:00
Konstantin Kondrashov
d23c7690f2
esp32c3: Add UTs for reset_reason
2021-01-18 07:12:21 +08:00
ninh
27aa6c289f
components/pm: Add slp gpio configure workaround
2021-01-15 15:34:45 +08:00
Marius Vikhammer
0713e93b8f
TWAI: bringup for S3 and C3
2021-01-14 20:30:31 +08:00
morris
e6d23a35ec
gdma: dynamic alloc DMA channels
2021-01-13 10:52:27 +08:00
Chen Jian Xing
5b44295cb9
esp_wifi: fix esp32c3 code issues
...
1. enable wifi clk and rm dport header
2.syn phy_init_data.h from esp32
2021-01-10 16:16:28 +08:00
Angus Gratton
5b68cf9de4
Merge branch 'feature/c3_ds' into 'master'
...
ESP32-C3 Digital Signature, HAL layer for DS.
Closes IDF-2111
See merge request espressif/esp-idf!10813
2021-01-07 13:07:28 +08:00
Jiang Jiang Jian
c05321424f
Merge branch 'bugfix/lightsleep_accuracy_opt' into 'master'
...
Lightsleep overhead time accuracy optimization
See merge request espressif/esp-idf!11291
2021-01-06 14:02:10 +08:00
ninh
dc7bdb9857
adjust lightsleep overhead time and cali slowclk
2021-01-06 03:40:28 +00:00
morris
7a71cedf87
interrupt: filter out reserved int number by decoding risc-v JAL instruction
2021-01-05 15:39:46 +08:00
morris
9e7d2c0065
esp32c3: format and clean up interrupt and os port code
2021-01-05 15:39:46 +08:00
Felipe Neves
5d316ac142
interrupt: added INTC FLEXIBLE capabillity to esp32c3 CPU caps
2021-01-05 15:39:46 +08:00
Jakob Hasse
e532a29288
[Peripheral/Security] DS peripheral driver
2021-01-05 12:26:59 +08:00
Michael (XIAO Xufeng)
6b5377f11a
gpio: fixed GPIO47 not available issue on ESP32s3
2021-01-04 20:21:06 +08:00
Marius Vikhammer
68608f804c
esp32c3: Misc fixes needed to build & run
2020-12-31 15:20:05 +11:00
chaijie
d505474f78
1. Fix CPU switch to 160M issue;
...
2. increase lightsleep voltage to make sure wakeup successfully;
3. add judgement code to whether wait or not when switch CPU frequency.
2020-12-30 12:32:31 +08:00
Marius Vikhammer
eb788deb03
esp_hw_support: merge C3 changes to master
...
Merge RTC related C3 changes to master
2020-12-30 12:20:41 +08:00
Angus Gratton
629b4270b4
Merge branch 'feature/c3_mbedtls_merge' into 'master'
...
mbedtls: merge changes from C3 to master
Closes IDF-2544 and IDF-2114
See merge request espressif/esp-idf!11718
2020-12-29 12:37:08 +08:00
Angus Gratton
1b0442b963
Merge branch 'feature/unify_rtc_fast_mem_as_heap_config_across_chips' into 'master'
...
esp_system: make rtc fast memory to heap configuration unified across chips
Closes IDF-2503
See merge request espressif/esp-idf!11693
2020-12-29 11:41:05 +08:00
Marius Vikhammer
1b6891c5d8
mbedtls: merge changes from C3
2020-12-29 10:56:13 +08:00
Darian Leung
602a747b31
Add USB Host registers and types and LL layer
...
This commit adds the register struct, Low Level Layer, and
protocol types for USB Host
2020-12-24 19:43:42 +08:00
Angus Gratton
c3ba995f2c
Merge branch 'ci/ccomp_performance_tests' into 'master'
...
unit_test: Refactor all performance tests that rely on cache compensated timer
See merge request espressif/esp-idf!11709
2020-12-24 13:44:52 +08:00
Mahavir Jain
880a63b2e9
esp_system: make rtc fast memory to heap configuration unified across chips
...
Closes IDF-2503
2020-12-24 09:46:35 +05:30
Angus Gratton
ed737becde
soc: Move esp32c3 soc_memory_layout.c to soc component
...
Was incorrectly placed in esp_hw_support
2020-12-24 13:40:01 +11:00
Angus Gratton
b7f4c46a82
soc: Update esp32c3 soc headers
...
From internal commit 6d894813
2020-12-24 10:47:34 +11:00
Angus Gratton
6d6510c39b
soc: Move esp32c3 soc_memory_layout.c to soc component
...
Was incorrectly placed in esp_hw_support
2020-12-23 11:49:16 +11:00
Angus Gratton
705d797b41
Merge branch 'feature/esp32c3_drivers' into 'master'
...
driver: Add esp32c3
Closes IDF-2363
See merge request espressif/esp-idf!11650
2020-12-23 08:43:31 +08:00
Armando
2d37bfa126
driver: Add adc_digi single conversion mode
...
- add lock for single read and continuous read APIs
- update onetime read start singal delay for hardware limitation[*]
- move adc_caps to soc_caps.h
- update license dates
[*] There is a hardware limitation. If the APB clock frequency is high, the
step of this reg signal: ``onetime_start`` may not be captured by the
ADC digital controller (when its clock frequency is too slow). A rough
estimate for this step should be at least 3 ADC digital controller
clock cycle.
2020-12-23 09:53:24 +11:00
Angus Gratton
fa892eb017
soc: Explain units for rtc_clk_cal() function, fix typo
2020-12-23 09:53:24 +11:00
Cao Sen Miao
e338a2e3df
rtc: add function to en/disable the rtc clock
2020-12-23 09:53:24 +11:00
Angus Gratton
f09b8ae7a4
driver: Add esp32c3 ADC driver
...
Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Angus Gratton
27a9cf861e
driver: Add esp32c3 drivers (except ADC/DAC) and update tests
...
Some ESP32-C3 drivers are still pending.
Based on internal commit 3ef01301fffa552d4be6d81bc9d199c223224305
2020-12-23 09:53:24 +11:00
Marius Vikhammer
0a95151a75
unit_test: Refactor all performance tests that rely on cache compensated timer
...
There is no ccomp timer on C3, which means our performance tests will start
failing again due to variance caused by cache misses.
This MR adds TEST_PERFORMANCE_CCOMP_ macro that will only fail
performance test if CCOMP timer is supported on the target
2020-12-22 18:56:24 +11:00
boarchuz
06d6146445
fix rtc_gpio_desc_t compilation error
...
Closes https://github.com/espressif/esp-idf/pull/6029
Closes https://github.com/espressif/esp-idf/issues/6301
Closes IDFGH-4470
Closes IDFGH-4167
2020-12-21 13:54:52 +05:30
Cao Sen Miao
0736c91d68
soc: Remove cache constants from soc.h
2020-12-17 15:34:13 +11:00
Marius Vikhammer
457ce080ae
AES: refactor and add HAL layer
...
Refactor the AES driver and add HAL, LL and caps.
Add better support for running AES-GCM fully in hardware.
2020-12-10 09:04:47 +00:00
Armando
d393699ab6
uart: bringup on esp32c3
2020-11-30 15:23:15 +11:00
Angus Gratton
b68094199f
esp_rom: Add initial ESP32-C3 support
...
From internal commit 7761d6e8
2020-11-30 11:12:56 +11:00
Angus Gratton
c29d93986d
soc: Add initial ESP32-C3 support
...
From internal commit 7761d6e8
2020-11-30 11:12:56 +11:00
Armando
fb8b905539
uart: add uart support on esp32s3
2020-11-24 19:12:51 +08:00
morris
c5fe158929
doc: fix wrong register description regarding to ethernet SMI
2020-11-16 13:30:49 +08:00
Michael (XIAO Xufeng)
14944b181e
Merge branch 'fix/soc_caps_spi_dummy_output_esp32' into 'master'
...
soc_caps.h: remove spi cap that is defined to 0
See merge request espressif/esp-idf!11203
2020-11-16 10:39:27 +08:00
Michael (XIAO Xufeng)
099fca515d
Merge branch 'bugfix/move_crypto_caps' into 'master'
...
SHA/RSA: moved all caps to soc_caps.h
Closes IDF-2300
See merge request espressif/esp-idf!11032
2020-11-13 11:06:44 +08:00
Angus Gratton
935e4b4d62
Merge branch 'feature/riscv_arch' into 'master'
...
Add RISC-V support
Closes IDF-2359
See merge request espressif/esp-idf!11140
2020-11-13 07:50:31 +08:00
Angus Gratton
420aef1ffe
Updates for riscv support
...
* Target components pull in xtensa component directly
* Use CPU HAL where applicable
* Remove unnecessary xtensa headers
* Compilation changes necessary to support non-xtensa gcc types (ie int32_t/uint32_t is no
longer signed/unsigned int).
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
Michael (XIAO Xufeng)
caf83b88ba
Merge branch 'feature/bringup_i2c_for_s3' into 'master'
...
I2C: Add support for esp32s3 and add source clock allocator
Closes IDF-2011
See merge request espressif/esp-idf!10923
2020-11-12 22:12:58 +08:00
Cao Sen Miao
6eee601cf6
i2c: Add supports on esp32s3
2020-11-12 11:32:45 +08:00
morris
dc227c78e1
rmt: fix wrong signal assign on esp32
2020-11-12 10:31:38 +08:00
Michael (XIAO Xufeng)
5b6c965e99
soc_caps.h: remove spi cap that is defined to 0
...
According to the caps rule, for unsupported feature we don't define anything.
Remove the define 0 that violates this rule.
2020-11-12 10:29:42 +08:00
Marius Vikhammer
488f46acf5
SHA/RSA: moved all caps to soc_caps.h
2020-11-12 02:15:46 +00:00
Angus Gratton
66fb5a29bb
Whitespace: Automated whitespace fixes (large commit)
...
Apply the pre-commit hook whitespace fixes to all files in the repo.
(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00:00
Angus Gratton
3882c2b8ed
Merge branch 'feature/bringup_esp32s3_fpga_update_rmt_driver' into 'master'
...
rmt: support esp32s3
Closes IDF-1773
See merge request espressif/esp-idf!10292
2020-11-07 07:15:53 +08:00
Michael (XIAO Xufeng)
d7ce8a537f
Merge branch 'feature/bringup_esp32s3_fpga_rtc_sleep' into 'master'
...
feature (rtc): update rtc related code(rtc_sleep rtc_init) to support esp32s3
See merge request espressif/esp-idf!10404
2020-11-05 19:19:36 +08:00
morris
ff976867b3
rmt: split TX and RX in LL driver
...
Split TX and RX function in LL driver.
Channel number is encoded in driver layer.
Added channel signal list in periph.c
2020-11-05 19:00:55 +08:00
chenjianqiang
9465af0066
rmt: support esp32s3
2020-11-05 19:00:55 +08:00
fuzhibo
93c7cf094e
rtc: update rtc related code(rtc_sleep rtc_init) to support esp32s3
2020-11-04 02:43:41 +00:00
morris
e4c8ec6174
timergroup: move interrupt index into peripheral description file
...
1. Added timer_group_periph.c file, describing module global signals
(e.g. interrupt index)
2. Added more caps in soc_caps.h
2020-11-03 18:16:50 +08:00
Michael (XIAO Xufeng)
35faecea1d
Merge branch 'feature/support_sigma_delta_on_s3' into 'master'
...
sigma_delta: add periph signal list and support esp32-s3
See merge request espressif/esp-idf!10945
2020-10-30 17:22:02 +08:00
Michael (XIAO Xufeng)
8337f0afa2
spi_flash: fix LL of esp32s3 and add 32-bit support
2020-10-29 18:21:42 +08:00
Michael (XIAO Xufeng)
3bacf35310
esp_flash: support high capacity flash chips (32-bit address)
2020-10-29 18:20:11 +08:00
morris
17808b3ff8
sigma_delta: add periph signal list and support esp32-s3
2020-10-29 11:06:28 +08:00
Renz Bagaporo
6b0a5af73e
soc: move implementations to esp_hw_support
2020-10-28 22:38:50 +08:00
Renz Bagaporo
79887fdc6c
soc: descriptive part occupy whole component
2020-10-28 07:21:29 +08:00
Renz Bagaporo
988be69466
esp_hw_support: create component
2020-10-28 07:21:29 +08:00
Michael (XIAO Xufeng)
9a394e1aa0
Merge branch 'feature/spi_bringup_esp32s3' into 'master'
...
spi: bringup on esp32s3
See merge request espressif/esp-idf!10107
2020-10-27 00:51:42 +08:00
Michael (XIAO Xufeng)
bcb5c3506d
Merge branch 'feature/dedicated_gpio' into 'master'
...
Dedicated GPIO driver on ESP32-S2 and ESP32-S3
Closes IDF-1672
See merge request espressif/esp-idf!8716
2020-10-26 15:33:33 +08:00
Michael (XIAO Xufeng)
8926216723
Merge branch 'bugfix/esp32s2_adc_rng_registers' into 'master'
...
esp32s2: Use regi2c registers to enable bootloader RNG
See merge request espressif/esp-idf!10941
2020-10-26 13:55:05 +08:00
Armando
f7e91ef6c1
spi: esp32s3 bringup for spi
2020-10-26 11:28:34 +08:00
Renz Bagaporo
e7460c1f00
soc: remove unecessary headers in dport_access.h
2020-10-22 19:42:34 +08:00
Angus Gratton
57d6026f97
Merge branch 'feature/efuse_support_for_esp32s3' into 'master'
...
efuse: Adds support for esp32-s3 chip
See merge request espressif/esp-idf!10491
2020-10-22 13:53:01 +08:00
Angus Gratton
639e97437f
esp32s2: Use regi2c registers to enable bootloader RNG
2020-10-22 14:39:59 +11:00
morris
bb1369b922
dedicated gpio: add driver
2020-10-20 21:06:09 +08:00
morris
74d78148bc
pcnt: add pcnt peripheral signal connections
...
pcnt: fix bug in clear interrupt status
2020-10-19 11:56:18 +08:00
Michael (XIAO Xufeng)
1966f00f0b
soc: updates caps usage
...
We should define caps as 1 if true. When use the caps macros, #if and
#if ! should be used instead of #ifdef/#ifndef.
2020-10-17 16:10:17 +08:00
Michael (XIAO Xufeng)
647dea9395
soc: combine xxx_caps.h into one soc_caps.h
...
During HAL layer refactoring and new chip bringup, we have several
caps.h for each part, to reduce the conflicts to minimum. But this is
The capabilities headers will be relataive stable once completely
written (maybe after the featues are supported by drivers).
Now ESP32 and ESP32-S2 drivers are relative stable, making it a good
time to combine all these caps.h into one soc_caps.h
This cleanup also move HAL config and pin config into separated files,
to make the responsibilities of these headers more clear. This is
helpful for the stabilities of soc_caps.h because we want to make it
public some day.
2020-10-17 16:10:15 +08:00
Michael (XIAO Xufeng)
ecca44df93
Merge branch 'bugfix/fix_adc-dma_reading_gap_for_esp32' into 'master'
...
bugfix(adc): missing ranges of ADC-DMA codes in ESP32
Closes DIG-53
See merge request espressif/esp-idf!10521
2020-10-16 23:02:35 +08:00
Angus Gratton
67baa8371a
Merge branch 'feature/rename_analog_i2c_files' into 'master'
...
feature(rtc): rename i2c_xxx to regi2c_xxx
See merge request espressif/esp-idf!10672
2020-10-15 11:16:14 +08:00
fuzhibo
6773df88f2
feature(rtc): rename i2c_xxx to regi2c_xxx
2020-10-14 21:15:24 +08:00
KonstantinKondrashov
66b9b589cb
efuse: Adds support for esp32-s2 chip
2020-10-14 16:26:51 +08:00
Felipe Neves
3057b76a7e
tests: re-add all disabled tests and all disabled configurations
2020-10-14 16:11:49 +11:00
Felipe Neves
a3c90bf59a
freertos: merged freertos 10 kernel files into IDF
...
freertos/port: update the port files and split into xtensa and riscv ports
freertos: separated cpu files from rest of the kernel sources
freertos/port_xtensa: separated private include files into a folder
freertos/tasks: added task create pinned to core function do not break current IDF API
freertos/tasks: mimiced task create pinned function into tasks.c to do not break the IDF API.
freertos: freertos component now compiling
freertos: freertos component now building
freertos: moved critical sections outside from FR kernel section to portable section
portmacro_xtensa: add void indentifier on functions that take no arguments
freertos: fix critical sections implementation to match with their function prototype
freertos: add cmake changes of freertos into make
freertos: remove portDONT_DISCARD attribute from switch context function, it was breaking the docs building.
freertos: fix conflicitng types of vApplicationSleep function
license: update the license of freertos
freertos: Doxygen comments refactored to render them correctly on docs
freertos: added new functions of freertos into the documentation
freertos: added message buffers and stream buffers to documentation
sysview: update freertos system view to the compatible with version 10
freertos: fixed event group documentation rendering
freertos: update static task structure to match the actual tcb size
freertos: removed backported test functions
freertos/smp: brought SMP code to FreeRTOS 10 port
freertos/portmacro: added missing crosscore interrupt for yielding tasks
freertos: replaced soft-critical sections with hard-critical sections used by SMP
freertos: placed muxes inside of kernel objects
freertos: replaced original FR critical sections with SMP enabled spinlocks critical sections
freertos: moved xtensa port files to a separated folder
freertos: added multiple instance of global variables required to SMP
freertos: added SMP modifications on specific tasks module functions
freertos: added TLS deletion function to task module
freertos/tls: initialize TLS deletion callback to avoid crashing when calling task delete
freertos: modified vTaskDelete to do not erase current task that runs on other core
freertos: reverted taskhandle and timerhandle as void* type
freertos: fixed de-referencing void pointer to get run time counter
freertos: fix system view trace enter macro arguments
freertos: Replaced soft critical sections with spinlocks on event_groups
freertos: fixed tick function to avoid calling tick hooks twice
freertos: Nofity give checking per CPU if schedule is suspended
freertos: added mpu release on TCB deletion
freertos: Added SMP changes when deleting a TCB on idle task
freertos/license: update freertos license in COPYRIGHT.rst
freertos: unicore configurations can use task create pinned to core, it will be always pinned to core 0
freertos/portmacro: added cpu_hal_get_core_id() function instead of inline assembly
freertos/xtensa: update xtensa specific files used in master branch
newlib/locks: revert the preemption checking in lock acquisition and release
ref_clock: fix initial state of ref_clock interrupt handler
freertos: added missing critical sections and yielding checkings
freertos: remove magic numbers in vTaskDelete
freertos: added missing critical section in prvIsQueueEmpty
2020-10-13 23:52:03 +00:00
Angus Gratton
ff8d05466e
Merge branch 'bugfix/deep_sleep_stub_heap_rtc_fast_mem' into 'master'
...
deep sleep: Calculate RTC CRC without using any stack or other RTC heap memory
Closes IDF-2242
See merge request espressif/esp-idf!10741
2020-10-13 06:17:50 +08:00
fuzhibo
9cd5e6f8c9
bugfix(adc): missing ranges of ADC codes in ESP32
2020-10-12 07:41:03 +00:00
Angus Gratton
562ab01046
deep sleep: Calculate RTC CRC immediately before deep sleep, without using RAM
...
Fix for issues where RTC FAST memory is updated as part of going into deep
sleep. Very high risk if heaps are in RTC memory - in particular task stacks
may be in RTC memory, but also other variables.
Also fixes potential concurrency problems as RTC FAST memory is not accessible
by CPU during the CRC calculation itself.
Method:
- Disable interrupts (currently for single core only, will need update for S3)
- Load all registers before calculating CRC or going to sleep
2020-10-12 11:19:56 +11:00
Marius Vikhammer
949fb8e63a
SHA: add HAL layer and refactor driver
...
Add a LL and HAL layer for SHA.
2020-10-09 08:24:08 +00:00
Angus Gratton
d6f8e9dfa8
Merge branch 'bugfix/delete_unneeded_cpu_h' into 'master'
...
esp32s2, esp32s3: delete unneeded cpu.h
See merge request espressif/esp-idf!10716
2020-10-09 13:54:56 +08:00
Martin Vychodil
497b730e8f
* memprot support for RTC_SLOW
...
* API upgrade
JIRA IDF-1636
2020-10-08 11:19:23 +08:00
Angus Gratton
1eefe6494c
Merge branch 'feature/rsa_caps' into 'master'
...
RSA: add max RSA bit len as a soc caps
See merge request espressif/esp-idf!10594
2020-10-05 12:56:28 +08:00
Renz Bagaporo
72176e275d
esp32s2, esp32s3: delete unneeded cpu.h
2020-09-30 17:58:00 +08:00
Michael (XIAO Xufeng)
f4aacbef9b
Merge branch 'feature/support_access_internal_i2c_register' into 'master'
...
feature(rtc): add new APIs support access internal i2c register
See merge request espressif/esp-idf!10039
2020-09-29 08:08:51 +08:00
fuzhibo
247789bb2e
rtc: support access internal i2c register
2020-09-27 12:12:17 +08:00
Renz Bagaporo
6462f9bfe1
esp32, esp32s2: create esp_pm component
2020-09-25 05:24:10 +00:00
Marius Vikhammer
3c14900a95
RSA: add max RSA bit len as a soc caps
2020-09-24 16:52:50 +08:00
Armando
1e1beb69aa
spi: fix build fail issue when target is esp32s3
2020-09-24 10:51:23 +08:00
Michael (XIAO Xufeng)
3c2f2aaffe
Merge branch 'docs/spi_flash_readme_update' into 'master'
...
hal: Update readme aftering extracting hal document from soc document
See merge request espressif/esp-idf!10453
2020-09-23 13:33:08 +08:00
Cao Sen Miao
5baf124219
docs: update readme aftering extracting hal document from soc document
2020-09-23 11:47:23 +08:00
Renz Bagaporo
6d7606aee5
soc: remove unecessary compile line include dir orderding control
2020-09-23 02:53:03 +00:00
Renz Bagaporo
7f5893d53c
soc: move dac_hal to hal
2020-09-23 02:53:03 +00:00
Renz Bagaporo
01d9aa8070
soc: move mpu_hal test to hal component
2020-09-23 02:53:03 +00:00
Renz Bagaporo
2bcf99527c
soc: move out rtc_hal to hal component
2020-09-23 02:53:03 +00:00
morris
9fa06719fa
global: enable build uinit test for esp32-s3
2020-09-22 15:15:03 +08:00
morris
75a372a9f0
unit_test: support reference clock, test delay function
2020-09-22 15:15:03 +08:00
morris
61f89b97c6
bringup esp32-s3 on FPGA
2020-09-22 15:15:03 +08:00
Cao Sen Miao
d7e50c6457
spi_flash:bringup some flash supports for esp32s3
2020-09-22 15:15:03 +08:00
chenjianqiang
f19cabb7e4
psram: support psram for esp32s3
2020-09-22 15:15:03 +08:00
Angus Gratton
3f034a5005
spiram: Add soc macro for SPIRAM address space size, use it where applicable
...
Reference https://github.com/espressif/esp-idf/pull/5373
2020-09-21 11:43:55 +10:00
negativekelvin
5eb5bb5f72
Fix reserved psram region
...
Closes https://github.com/espressif/esp-idf/pull/5373
Closes https://github.com/espressif/esp-idf/issues/5821
2020-09-21 11:39:54 +10:00
Michael (XIAO Xufeng)
fefdee1349
bootloader: fix the WRSR format for ISSI flash chips
...
1. The 2nd bootloader always call `rom_spiflash_unlock()`, but never help to clear the WEL bit when exit. This may cause system unstability.
This commit helps to clear WEL when flash configuration is done.
**RISK:** When the app starts, it didn't have to clear the WEL before it actually write/erase. But now the very first write/erase operation should be done after a WEL clear. Though the risk is little (all the following write/erase also need to clear the WEL), we still have to test this carefully, especially for those functions used by the OTA.
2. The `rom_spiflash_unlock()` function in the patch of ESP32 may (1) trigger the QPI, (2) clear the QE or (3) fail to unlock the ISSI chips.
Status register bitmap of ISSI chip and GD chip:
| SR | ISSI | GD25LQ32C |
| -- | ---- | --------- |
| 0 | WIP | WIP |
| 1 | WEL | WEL |
| 2 | BP0 | BP0 |
| 3 | BP1 | BP1 |
| 4 | BP2 | BP2 |
| 5 | BP3 | BP3 |
| 6 | QE | BP4 |
| 7 | SRWD | SRP0 |
| 8 | | SRP1 |
| 9 | | QE |
| 10 | | SUS2 |
| 11 | | LB1 |
| 12 | | LB2 |
| 13 | | LB3 |
| 14 | | CMP |
| 15 | | SUS1 |
QE bit of other chips are at the bit 9 of the status register (i.e. bit 1 of SR2), which should be read by RDSR2 command.
However, the RDSR2 (35H, Read Status 2) command for chip of other vendors happens to be the QIOEN (Enter QPI mode) command of ISSI chips. When the `rom_spiflash_unlock()` function trys to read SR2, it may trigger the QPI of ISSI chips.
Moreover, when `rom_spiflash_unlock()` try to clear the BP4 bit in the status register, QE (bit 6) of ISSI chip may be cleared by accident. Or if the ISSI chip doesn't accept WRSR command with argument of two bytes (since it only have status register of one byte), it may fail to clear the other protect bits (BP0~BP3) as expected.
This commit makes the `rom_spiflash_unlock()` check whether the vendor is issi. if so, `rom_spiflash_unlock()` only send RDSR to read the status register, send WRSR with only 1 byte argument, and also avoid clearing the QE bit (bit 6).
3. `rom_spiflash_unlock()` always send WRSR command to clear protection bits even when there is no protection bit active. And the execution of clearing status registers, which takes about 700us, will also happen even when there's no bits cleared.
This commit skips the clearing of status register if there is no protection bits active.
Also move the execute_flash_command to be a bootloader API; move
implementation of spi_flash_wrap_set to the bootloader
2020-09-19 10:51:51 +08:00
Angus Gratton
0fe231d2b3
Merge branch 'feature/pkg_ver_uses_4_bits' into 'master'
...
efuse/esp32: Expands PKG_VER from 3 bit to 4 bits
Closes IDF-1919
See merge request espressif/esp-idf!9949
2020-09-17 18:21:08 +08:00
KonstantinKondrashov
2373f115fc
efuse/esp32: Expands PKG_VER from 3 bit to 4 bits
...
Closes: IDF-1919
2020-09-17 07:44:37 +00:00
morris
a3cc43485f
async memcpy: support async memcopy on esp32s2/s3
...
Added async memory copy API:
on esp32-s2, the implementation is based on CP_DMA
on esp32-s3, the implementation is based on GDMA
2020-09-16 21:30:54 +08:00
Michael (XIAO Xufeng)
1a1e1911f9
Merge branch 'bugfix/spi_dma_close_before_cpu_reset' into 'master'
...
spi: fix issue with closing DMA before CPU reset
Closes FCS-484
See merge request espressif/esp-idf!9844
2020-09-14 23:02:05 +08:00
Marius Vikhammer
b2f390df01
hal: update link to HAL readme.md
...
The HAL readme was moved during refactoring, but links were not updated.
2020-09-11 15:48:08 +08:00
Jakob Hasse
20c068ef3b
cmock: added cmock as component
...
* changing dependencies from unity->cmock
* added component.mk and Makefile.projbuild
* ignore test dir in gen_esp_err_to_name.py
* added some brief introduction of CMock in IDF
2020-09-02 16:38:37 +08:00
Michael (XIAO Xufeng)
5425ef4ee4
hal: extract hal component from soc component
2020-09-01 13:25:32 +08:00
Krzysztof Budzynski
94cc8fc4b3
Merge branch 'doc/tinyusb' into 'master'
...
TinyUSB documentation
See merge request espressif/esp-idf!8862
2020-08-31 20:57:29 +08:00
Michael (XIAO Xufeng)
2b323e7180
Merge branch 'bugfix/fix_dac_driver_ut' into 'master'
...
Driver(dac): fix DAC-DMA driver and unit test
Closes IDF-1407
See merge request espressif/esp-idf!8814
2020-08-31 00:05:34 +08:00
Andrei Gramakov
c863b4c777
docs: tinyusb documentation
2020-08-27 13:49:33 +02:00
fuzhibo
0914dfbb6a
dfiver(dac): add dac dma driver and unit test
2020-08-26 06:23:24 +00:00
fuzhibo
bd92e95160
driver(adc): add adc-dma code for esp32
2020-08-26 03:54:02 +00:00
me-no-dev
0aa1c13027
Fix USB CLK always reset and USB with swapped pins not working
2020-08-25 10:59:59 +03:00
Michael (XIAO Xufeng)
8a9dc46b14
Merge branch 'bugfix/spi_master_add_dummy_check' into 'master'
...
spi_master: add dummy check when both mosi and miso are set
Closes IDF-1872 and IDF-266
See merge request espressif/esp-idf!9406
2020-08-23 12:47:18 +08:00
David Čermák
e2f72f449c
Merge branch 'feature/ethernet_flow_control' into 'master'
...
ethernet: support flow control
Closes IDF-1207, WIFI-2510, WIFI-2290, WIFI-2291, WIFI-2507, WIFI-2508, WIFI-2612, and IDFGH-3465
See merge request espressif/esp-idf!9643
2020-08-21 14:33:30 +08:00
Armando
aa93347972
spi: remove spi4 related macros and codes
2020-08-17 21:32:15 +08:00
Renz Bagaporo
4f5135030f
esp_system: remove register level operations for timer wakeup
2020-08-17 19:09:24 +08:00
Renz Bagaporo
0b6ead74b5
soc: ll and hal for sleep related code
2020-08-17 19:09:24 +08:00
Armando
e58ce2141d
spi_master: rename the hal layer function that calculates clock and timing
2020-08-17 17:04:07 +08:00
Michael (XIAO Xufeng)
dc22501b47
Merge branch 'bugfix/mcpwm_capture_getedge_null_deref' into 'master'
...
Bugfix(MCPWM): Fix dereferencing of a null pointer in function mcpwm_capture_signal_get_edge
See merge request espressif/esp-idf!9255
2020-08-17 15:52:24 +08:00
Angus Gratton
62c4b569ad
Merge branch 'refactor/timekeeping_init' into 'master'
...
Timekeeping refactor
Closes IDF-1864
See merge request espressif/esp-idf!7824
2020-08-17 08:13:44 +08:00
morris
a3da67a97a
ethernet: set DMA owner after all descriptors have configured
2020-08-10 18:54:25 +08:00
morris
f4131b9b42
ethernet: handle early rx interrupt
2020-08-10 18:54:25 +08:00
morris
4e38aab1b0
ethernet: support flow control for esp32 emac
2020-08-10 18:54:25 +08:00
wubowen
de72ef2c1a
bugfix: Fixed the issue that calling mcpwm_capture_signal_get_edge causes a crash
2020-08-10 09:31:03 +00:00
Darian Leung
fdbda1ce78
TWAI: Simplify caps header
...
This commit simplies the defines made in the _caps.h header. Kconfig
option dependencies were moved into the LL, and the check for a
valid BRP has bee simplified.
2020-08-10 17:01:32 +08:00
Darian Leung
d814a40c1d
TWAI: Fix ESP32-S2 register field name
2020-08-10 17:01:32 +08:00
Darian Leung
6983d1e0bb
TWAI: Fix BRP field initialization onf ESP32 ECO3
...
This commit zero initializes the brp_div field on ESP32 ECO3
to prevent incorrect timing configuration.
2020-08-10 17:01:32 +08:00
Renz Bagaporo
5785e4dfb6
newlib: move some functions to soc, esp32, esp32s2
2020-08-10 15:11:38 +08:00
Michael (XIAO Xufeng)
cda9c595d7
Merge branch 'feature/mcpwm_capture_on_both_edge' into 'master'
...
MCPWM: add an option to do mcpwm capture on both edges
See merge request espressif/esp-idf!9850
2020-08-10 11:48:50 +08:00
morris
edb5ddf63b
soc: placeholder for esp32s3 HAL driver
...
soc rtc
2020-08-07 11:59:00 +08:00
Michael (XIAO Xufeng)
bfd71ae7ec
Merge branch 'feature/dma_memcpy' into 'master'
...
esp32s2: async memcpy
Closes IDF-1573
See merge request espressif/esp-idf!8436
2020-08-06 11:32:43 +08:00
dongyou
97ae87df41
wifi, bt: move esp_phy_common_clock_disable into periph_ctrl and put it into IRAM
...
Replace periph_module_enable/disable by periph_wifi_bt_common_module_enable which are in IRAM.
AddIRAM_ATTR periph_ll_wifi_bt_module_enable_clk_clear_rstandIRAM_ATTR periph_ll_wifi_bt_module_disable_clk_set_rstto fit O0 optimization level.
Delete duplicated spinlock and counter.
2020-08-05 11:04:16 +08:00
morris
b30bd7a2ef
esp32s2: add CP_DMA driver
2020-08-04 15:28:32 +08:00
Wu Bo Wen
14a6b1db56
driver/mcpwm: add an option to capture on both edges.
...
However, The functionality of capturing on both edges is alternatively done with passing in the two flags ORed together: MCPWM_NEG_EDGE|MCPWM_POS_EDGE
closes https://github.com/espressif/esp-idf/issues/4446
closes https://github.com/espressif/esp-idf/issues/2943
2020-08-03 14:58:45 +08:00
Ivan Grokhotkov
0ee714e1fa
soc: move RTC initialization out of IRAM
...
Saves approximately 870 bytes of IRAM.
2020-08-01 00:52:43 +02:00
Darian Leung
662864f5bc
twai: Fix size of RX msg count field on the esp32
...
This commit fixes the size of the RX message count register field
on the esp32.
2020-07-30 15:45:58 +08:00
Angus Gratton
75402afcae
Merge branch 'feature/esp32s3_clk_memory_layout' into 'master'
...
esp32s3: memory layout
See merge request espressif/esp-idf!9753
2020-07-29 13:48:25 +08:00
Michael (XIAO Xufeng)
6434c1e2bd
Merge branch 'feat/esp_flash_enable_s2_ut' into 'master'
...
esp_flash: fix several issues and enable unit test for ESP32-S2
Closes IDF-1409
See merge request espressif/esp-idf!8259
2020-07-28 18:15:41 +08:00
Ivan Grokhotkov
16c73edc67
Merge branch 'refactor/add_alias_name_for_ets_common_api' into 'master'
...
esp_rom: extract common ets apis into esp_rom_sys.h
See merge request espressif/esp-idf!9701
2020-07-28 15:04:55 +08:00
morris
2917651478
esp_rom: extract common ets apis into esp_rom_sys.h
2020-07-27 15:27:01 +08:00
morris
19761e3113
esp32s3: clk, memory layout
2020-07-27 13:05:22 +08:00
Michael (XIAO Xufeng)
30fa716376
spi: fix cs num support for different SPI hosts.
...
For esp32, all SPI hosts have 3 CS pins, however, on ESP32, SPIMEM1 has
two CS pins, FSPI has six, while HSPI has three.
2020-07-27 12:27:03 +08:00
Michael (XIAO Xufeng)
4bad988317
esp_flash: fix slow read on ESP32-S2
2020-07-27 12:20:19 +08:00
fuzhibo
1568b6913d
driver(touch): fix touch sensor driver redundancy
2020-07-27 03:37:29 +00:00
Angus Gratton
442736c5d6
Merge branch 'refactor/common_rom_uart_apis' into 'master'
...
esp_rom: extract common uart apis into esp_rom_uart.h
See merge request espressif/esp-idf!9313
2020-07-21 15:24:21 +08:00
Angus Gratton
3755fb6597
Merge branch 'feature/add_esp32s3_bootloader_ld_file' into 'master'
...
move part of esp32-s3 codes to master (bootloader linker, esp32s3 empty componnet)
See merge request espressif/esp-idf!9608
2020-07-21 14:51:04 +08:00
chenjianqiang
e9dd4f283a
feat(esp32): support for esp32-pico-v3-02
2020-07-20 12:21:32 +08:00
morris
6316e6eba2
esp_system: add CONFIG_ESP_SYSTEM_RTC_EXT_CRYS
2020-07-20 11:15:24 +08:00
Angus Gratton
f83a61e2c8
Merge branch 'feature/ulp_riscv' into 'master'
...
feature/components: Initial support for ULP-RISC-V Coprocessor on esp32s2
Closes IDF-521
See merge request espressif/esp-idf!8781
2020-07-20 08:27:20 +08:00
morris
345606e7f3
esp_rom: extract common uart apis into esp_rom_uart.h
2020-07-17 16:00:59 +08:00
Felipe Neves
b6dba84323
ulp: added support to building code for riscv ULP coprocessor
2020-07-15 15:28:49 -03:00
Michael (XIAO Xufeng)
c796bd5e63
esp_flash: refactor to make host driver function a const table
...
This is also part of ESP32-S3 ROM changes
2020-07-13 03:10:00 +08:00
Michael (XIAO Xufeng)
a9c8895bb2
esp_flash: refactor to be compatible with the latest ROM
...
Including:
1. Change the write bytes/read bytes parameter in the host driver into slicers to meet the requirements of complicated cases.
2. Refactor the esp_flash_api code a bit so that we can use the code in the ROM laster
3. Provide get_temp_buffer and release_temp_buffer in the os_functions when the buffer passed by application cannot be used directly.
4. Make timeout of operations configurable in the chip_driver.
5. Make dummy number configurable.
2020-07-12 02:09:45 +08:00
Michael (XIAO Xufeng)
f6dd63d03d
spi_slave_hd: new driver for spi slave in half duplex mode
2020-07-11 00:00:50 +08:00
Angus Gratton
fb192fd313
Merge branch 'bugfix/spinlock_coredump_regressions' into 'master'
...
Bugfix/spinlock coredump regressions
Closes IDF-1901
See merge request espressif/esp-idf!9559
2020-07-10 14:01:08 +08:00
houwenxiang
166d5f17f3
driver(I2S): Fix I2S reset issue
...
`i2s_start` reseting I2S in incorrect order causeing the word-order error.
closes https://github.com/espressif/esp-idf/issues/5410
2020-07-09 15:42:09 +00:00
Ivan Grokhotkov
4cdc5edb4e
Revert "freertos, soc: don't lower INTLEVEL when entering critical sections"
...
This reverts commit 614a580bbb
.
2020-07-09 17:15:54 +02:00
morris
a4d0033c03
esp_rom: extract common GPIO apis into esp_rom_gpio.h
2020-07-07 11:40:19 +08:00
fuzhibo
8d922847af
driver(adc): esp32s2 support API adc2_vref_to_gpio
2020-07-01 06:21:45 +00:00
Darian Leung
97721d469c
TWAI: Add ESP32-S2 support
...
This commit adds TWAI driver support for the
ESP32-S2. The following features were added:
- Expanded BRP support
- Expanded CLKOUT Divider Support
- Updated example READMEs
2020-06-30 16:56:03 +08:00
Ivan Grokhotkov
84833bf0df
Merge branch 'feature/light_sleep_reject' into 'master'
...
sleep: enable sleep reject when entering light sleep
Closes IDF-1678 and WIFI-1185
See merge request espressif/esp-idf!9242
2020-06-29 15:57:49 +08:00
Ivan Grokhotkov
4e30e8801c
sleep: enable sleep reject when entering light sleep
2020-06-24 15:45:42 +00:00
Ivan Grokhotkov
0620890028
bootloader, rtc: don't disable PLL if it is already enabled
2020-06-24 15:50:51 +02:00
morris
4857dc5e2b
soc: add soc descriptions for esp32s3
2020-06-23 15:10:09 +08:00
Renz Bagaporo
08cbfa6187
esp_system: fix various review issues
2020-06-19 18:40:10 +10:00
Renz Christian Bagaporo
62ef63e835
esp32, esp32s2: move clk init functions to esp_system
2020-06-19 18:40:09 +10:00
Renz Bagaporo
39ef904fba
soc: introduce hal function for cpu delay
2020-06-19 18:40:09 +10:00
Ivan Grokhotkov
194353af07
soc: add periph_ll_periph_enabled to clk_gate_ll.h
2020-06-16 18:13:14 +02:00
Angus Gratton
61ab64439b
Merge branch 'bugfix/spi_flash_yield_coredump' into 'master'
...
fixes for core dump regressions
See merge request espressif/esp-idf!8978
2020-06-16 12:15:50 +08:00
Angus Gratton
8193b188e8
driver: Fix some doxygen warnings
2020-06-12 14:31:37 +10:00
Ivan Grokhotkov
58e1100473
Merge branch 'bugfix/cast_int_to_size_t_in_cpu_ll' into 'master'
...
soc: cast int to size_t in cpu_ll
Closes IDFGH-3352
See merge request espressif/esp-idf!9077
2020-06-08 15:40:42 +08:00
Michael (XIAO Xufeng)
1a6191debe
Merge branch 'bugfix/fix_ledc_unable_to_work_in_light_sleep_mode' into 'master'
...
bugfix (Ledc): fix the bug that ledc low-speed channel can not work when chip in light-sleep mode
See merge request espressif/esp-idf!8392
2020-06-08 14:25:43 +08:00
Michael (XIAO Xufeng)
099f2706aa
Merge branch 'bugfix/fix_adc_dac_conflict' into 'master'
...
Driver(adc): Disable the synchronization operation function of ADC1 and DAC
Closes IDF-1585
See merge request espressif/esp-idf!8364
2020-06-03 12:41:50 +08:00
Michael (XIAO Xufeng)
1a1b0574ac
Merge branch 'bugfix/fix_fifo_cnt_bug' into 'master'
...
bugfix(uart): fix esp32 uart fifo_cnt bug
See merge request espressif/esp-idf!8974
2020-06-03 11:44:39 +08:00
Ivan Grokhotkov
614a580bbb
freertos, soc: don't lower INTLEVEL when entering critical sections
...
This fixes the issue where XTOS_SET_INTLEVEL would lower INTLEVEL from
4 to 3, when eTaskGetState is invoked during the core dump, triggered
from the interrupt watchdog.
2020-06-02 15:42:24 +02:00
xiongyu
eea38d7698
bugfix(uart): fix esp32 fifo_cnt bug
...
When using DPort to read fifo, fifo_cnt is not credible, we need to calculate the real cnt based on the fifo read and write pointer. When using AHB to read FIFO, we can use fifo_cnt to indicate the data length in fifo.
2020-06-02 21:38:31 +08:00
Michael (XIAO Xufeng)
d2bb1e1b75
Merge branch 'bugfix/fix_adc_dac_driver_ut' into 'master'
...
Driver(adc): fix adc driver and UT
See merge request espressif/esp-idf!8482
2020-06-02 17:46:45 +08:00
fuzhibo
3cc2d0e9a4
Driver(adc): Disable the synchronization operation function of ADC1 and DAC
...
Closes IDF-1585
2020-06-01 16:23:47 +08:00
fuzhibo
d90e0e4345
driver(adc): fix unit test for ADC-DMA (test_esp32s2.c); fix unit test for ADC-DMA (test_esp32s2.c); fix commit in adc dirver.
2020-06-01 15:00:08 +08:00
houwenxiang
46713a5275
driver(uart): fix uart module reset issue
...
On ESP32, due to fifo reset issue, UART2 will work incorrectly if reset the fifo of UART1(TX fifo and RX fifo). The software can workaround the RX fifo reset issue,
while the TX fifo reset issue can not. When UART2 is used and UART1 is used as the log output port, a software reset can reproduce this issue. So we should reset the UART memory
before the software reset to solve this problem.
2020-06-01 11:01:26 +08:00
houwenxiang
73384adfbe
driver(Ledc): fix the bug that ledc low-sleep channel can not work when chip in light-sleep mode
...
`esp_light_sleep_start` will disable the RTC8M_CLK, which will cause the LEDC low-speed channel to not work in light-sleep mode
2020-06-01 09:51:32 +08:00
Angus Gratton
baedfab382
Merge branch 'feature/dis_uart_dl_mode' into 'master'
...
feature: Disable UART download mode
Closes IDF-1386
See merge request espressif/esp-idf!8590
2020-05-29 14:09:54 +08:00
Angus Gratton
59f29cbca8
Merge branch 'feature/allow_rtc_memory_for_task_stacks' into 'master'
...
Add RTC Fast Memory to Dynamic Memory Pool
See merge request espressif/esp-idf!8390
2020-05-29 14:07:01 +08:00
Angus Gratton
f4edc52fa0
efuse: Have support for secure DL mode depend on a soc_caps flag
2020-05-28 18:02:02 +10:00
Michael (XIAO Xufeng)
0d90861984
Merge branch 'bugfix/fix_rmt_driver_breaking_change_issue' into 'master'
...
Bugfix(RMT): Fix the breaking change issue of RMT driver.
Closes IDFGH-2837, IDFGH-2579, and IDFGH-2915
See merge request espressif/esp-idf!8006
2020-05-25 15:27:24 +08:00
Michael (XIAO Xufeng)
b3587ff88c
Merge branch 'bugfix/fix_i2s_comm_format_unclear_description_bug' into 'master'
...
Bugfix(I2S): Fix i2s_comm_format_t configuration parameter does not match the TRM bug
Closes IDFGH-3040, IDFGH-2913, IDFGH-578, IDFGH-2408, and IDFGH-3117
See merge request espressif/esp-idf!8339
2020-05-25 15:00:10 +08:00
Krzysztof Budzynski
56635f22b8
Merge branch 'doc/add_types_api_ref' into 'master'
...
doc: add peripheral_types.h as API reference for peripheral docs
Closes DOC-136 and IDF-1673
See merge request espressif/esp-idf!8528
2020-05-25 03:22:22 +08:00
FredrikFornstad
9d58219557
Bugfix: Casting int to size_t
2020-05-20 19:32:18 +02:00
Ivan Grokhotkov
948580d1a2
Merge branch 'gdb/bt_on_invalid_pc' into 'master'
...
gdb: Modify PC in case of invalid PC
See merge request espressif/esp-idf!8391
2020-05-19 16:44:07 +08:00
houwenxiang
0bf2906bc9
driver(RMT): Fix the breaking change issue of RMT driver introduced by refactoring.
...
After RMT driver refactor, two breaking change are introduced:
1. Users needs to call `rmt_driver_install` before `rmt_config`.
2. Do not support memory block count > 1,
fix this two issues
closes https://github.com/espressif/esp-idf/issues/4664
closes https://github.com/espressif/esp-idf/issues/4959
2020-05-19 11:39:38 +08:00
houwenxiang
b35d9002f3
driver(I2S): Fix i2s_comm_format_t configuration parameter does not match the TRM bug.
...
When I2S `i2s_comm_format_t` is set to `I2S_COMM_FORMAT_I2S_MSB`, the data should launch at first BCK. But not in fact, this MR fixed this issue.
For compatibility, several nwe parameters have been added, and the old parameters will be removed in the future.
closes https://github.com/espressif/esp-idf/issues/5065
closes https://github.com/espressif/esp-idf/issues/4957
closes https://github.com/espressif/esp-idf/issues/2978
closes https://github.com/espressif/esp-idf/issues/5136
Merges https://github.com/espressif/esp-idf/pull/4522
2020-05-18 19:55:30 +08:00
Michael (XIAO Xufeng)
f67044c822
spi: simplify the caps header
...
The mapping logic from register address to instance number is moved into the LL
2020-05-17 22:06:01 +08:00
Jiang Jiang Jian
26ab1c54ec
Merge branch 'bugfix/esp32s2_wifi_skip_light_sleep' into 'master'
...
esp_wifi: When WiFi TSF is active, skip light sleep
Closes WIFI-2305 and WIFI-2306
See merge request espressif/esp-idf!8639
2020-05-15 11:41:45 +08:00
Mahavir Jain
1aac284dda
heap: add rtc fast memory region to dynamic pool
...
- for ESP32 only enabled in case of unicore config
- capability wise this region (8K) is same as DRAM, except non-DMA capable
- also fixed small issue in reserved memory region processing when (start == end)
2020-05-14 13:12:26 +00:00
Xia Xiaotian
526a3e49ed
esp_wifi: When WiFi TSF is active, skip light sleep
...
* Add an API for peripherals to set callbacks to skip light sleep
* Make WiFi power save example work
2020-05-13 19:31:36 +08:00
fuzhibo
8256b5f32b
driver(adc): fix adc io init bug; add unit test to check;
2020-05-12 06:52:26 +00:00
Marius Vikhammer
27fa1dc0dd
doc: add peripheral_types.h as API reference for peripheral docs
...
Closes DOC-136
Closes IDF-1673
2020-05-11 11:20:39 +08:00
Sachin Parekh
c0a33487b1
gdbstub_xtensa.c: Replace with cpu_ll_pc_to_ptr macro
...
Signed-off-by: Sachin Parekh <sachin.parekh@espressif.com>
2020-05-08 18:35:48 +05:30
Ivan Grokhotkov
d311144a00
soc/usb: use new headers in LL, move some code out of LL
...
* Keep only USB related register operations in the LL.
* Move pad-related logic into the driver.
* Driver is now responsible for enabling the peripheral.
2020-04-29 10:04:13 +02:00
Ivan Grokhotkov
897e69cc9d
soc, esp32s2: add usb_wrap peripheral
2020-04-29 10:04:13 +02:00
Felipe Neves
f7ccc081a5
flash_encryption: replace spi crypt count efuse burning function by a esp_efuse_API
...
flash_encryption: modify additional efuses burning method to fix them are not being written
flass_encryption: burn efuse to disable boot from RAM space
flash_encryption: added better checking for key generation state plus set read and write protect for them
soc esp32s2: Add register-level bit definitions for read & wrote protect bits
esp32s2: Fixes for flash encryption
- Write efuses in a batch
- Fix some detection of whether existing efuse blocks are read/write protected
2020-04-24 12:43:47 -03:00
Ivan Grokhotkov
cd1aba595e
Merge branch 'bugfix/mpu_panic' into 'master'
...
Fix issue with mpu illegal access test
See merge request espressif/esp-idf!8418
2020-04-24 20:54:08 +08:00
Michael (XIAO Xufeng)
77d5e4b4e2
Merge branch 'bugfix/timer_group_intr_enable' into 'master'
...
Bugfix/timer group intr enable
Closes IDFGH-3082
See merge request espressif/esp-idf!8340
2020-04-24 18:28:36 +08:00
Renz Bagaporo
4571fb219f
soc: change region in mpu test
...
Previously, the test uses region 3 for the illegal access test
(0x60000000 - 0x7fffffff). This caused issues with there being
peripherals located in that memory range. Change to use region 4
(0x8000000 - 0x9fffffff) instead).
2020-04-24 16:34:15 +08:00
morris
91e62f4e37
timer_group: update hal api && fix intr_enable
...
timer group interrupt enable is controled by level_int_ena instead of int_ena
Closes https://github.com/espressif/esp-idf/issues/5103
2020-04-23 19:29:15 +08:00
morris
e0b9f7be6d
periph_clk_gating: add reference counter
2020-04-23 19:29:15 +08:00
morris
99f0dc78c8
soc: remove mcpwm description file from esp32s2
2020-04-23 19:26:55 +08:00
Martin Vychodil
7491ea677a
esp32s2: IRAM/DRAM memory protection
...
* new mem_prot API
* mem_prot on & locked by default (see Kconfig)
* feature activated in start_cpu0_default()
JIRA IDF-1355
2020-04-21 15:10:58 +02:00
Michael (XIAO Xufeng)
69b6ca6a70
Merge branch 'bugfix/mcpwm_period_error_MR' into 'master'
...
bugfix(mcpwm_period_error): fix the issue of wrong period
See merge request espressif/esp-idf!7734
2020-04-10 15:26:12 +08:00
Wang Jia Lin
b3d8b6a250
Merge branch 'bugfix/fix_esp32s2_soc_bug' into 'master'
...
RTC regulator & voltage calibration fixes
See merge request espressif/esp-idf!8137
2020-04-10 14:25:41 +08:00
Chai Ji’e
dac17709ec
RTC regulator & voltage calibration fixes
2020-04-10 14:25:40 +08:00
Renz Bagaporo
d2ad5d937e
soc: add test for setting mpu illegal access
2020-04-07 11:38:26 +08:00
Renz Bagaporo
ece80dbc8e
soc: mpu hal fixes
2020-04-07 11:38:26 +08:00
Jiang Jiang Jian
7d0f1536e4
Merge branch 'bugfix/fix_adc_init_code_setting_for_esp32s2' into 'master'
...
driver(adc): fix adc calibration for esp32s2
See merge request espressif/esp-idf!8209
2020-04-04 16:06:16 +08:00
fuzhibo
406b8f423d
driver(adc): add adc initial code before app_main for esp32s2.
...
update phy v301
2020-04-04 10:15:30 +08:00
Ivan Grokhotkov
60086d1bd0
Merge branch 'refactor/systimer_hal' into 'master'
...
systimer: add HAL layer
See merge request espressif/esp-idf!8115
2020-04-03 18:17:18 +08:00