Commit Graph

539 Commits

Author SHA1 Message Date
Armando
9b9ea71ff9 spi: remove HSPI macro on esp32c3 and esp32s3 2021-04-06 13:42:49 +08:00
Jakob Hasse
b23c9142d5 [hal]: cleaned up interrupt mask functions
* Functions for setting and clearing interrupts
  as well as function to read interrupt mask
  should be clearer now.
* Using hal layer interrupt set and clear
  functions in esp_wifi component
2021-04-06 11:54:13 +08:00
aleks
193f1f9b4e driver: fix uart handler in iram calls inline uart_ll_is_tx_idle 2021-03-31 14:39:59 +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
cc6bfcd9ac adc: apply adc power API to adc driver
Closes https://github.com/espressif/esp-idf/issues/6269
Closes https://github.com/espressif/esp-idf/issues/6682
2021-03-26 17:58:00 +08:00
Armando
0e0baee25a adc: add implementation of missed public API
Added ``adc1_pad_get_io_num``, ``adc2_pad_get_io_num`` and
``adc_vref_to_gpio``.
2021-03-26 12:04:46 +08:00
Armando
e9995fe165 adc: add pm_lock to adc driver on esp32c3 2021-03-26 12:04:46 +08:00
Armando
00a3f48bd8 adc: refactor adc single read api on esp32c3 2021-03-26 12:04:46 +08:00
Armando
69a0f8b9bb adc: seperate hal layer and driver layer 2021-03-26 12:04:46 +08:00
Armando
bee90f57f1 adc: remove unused functions on esp32c3 2021-03-26 12:04:45 +08:00
Angus Gratton
fa2946d651 Merge branch 'feature/support_esp32s3_beta_3' into 'master'
Support ESP32S3 beta 3 target

Closes IDF-2908

See merge request espressif/esp-idf!12661
2021-03-23 10:17:58 +00:00
Michael (XIAO Xufeng)
67ba80f2ec Merge branch 'bugfix/reduce_the_consumption_of_touch_sensor_during_deep_sleep' into 'master'
fix: reduce the consumption of touch sensor during deep sleep

See merge request espressif/esp-idf!12248
2021-03-22 07:10:44 +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
Michael (XIAO Xufeng)
4028d4e083 Merge branch 'feature/mcpwm_add_peripheral_signal_list' into 'master'
mcpwm: added peripheral signal description list

See merge request espressif/esp-idf!12480
2021-03-18 10:07:59 +00:00
Jiang Jiang Jian
d38eabf0c2 Merge branch 'bugfix/spi_flash_compatible_with_rom_c3_and_s3' into 'master'
spi_flash: make spiflash compatible with ESP32C3 and ESP32S3 ROM

See merge request espressif/esp-idf!12713
2021-03-18 04:08:06 +00: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
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
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
jiangguangming
ae04518a32 spi_flash: make spiflash compatible with ESP32C3 and ESP32S3 ROM 2021-03-12 17:31:13 +08: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
Michael (XIAO Xufeng)
fc61e60948 uart: fixed incorrect baudrate on C3 and S3 when target is too slow
The integer part of the divider is only 12-bit now. We used prescaler to get low frequency instead.
2021-03-09 20:09:42 +08:00
Michael (XIAO Xufeng)
e9ecc4a0af Merge branch 'bugfix/esp32s3_flash_read_write' into 'master'
spi_flash: modify nvs reading writing issue on esp32s3

Closes WIFI-3438 and IDF-2866

See merge request espressif/esp-idf!12604
2021-03-04 03:53:35 +00:00
Cao Sen Miao
0b7caf96a9 spi_flash:modify nvs reading writing issue on esp32s3 2021-03-03 22:02:32 +08:00
Angus Gratton
d6f4d99d93 core system: Fix warnings in compilation when assertions are disabled
Adds a CI config for hello world that sets this, to catch future regressions
2021-03-03 10:26:57 +11:00
Michael (XIAO Xufeng)
2e0e583ad1 Merge branch 'bugfix/clear_interrupt_in_touch_sensor_initialization' into 'master'
fix: clear interrupt in touch sensor initialization

See merge request espressif/esp-idf!12201
2021-03-02 08:09:23 +00:00
fuzhibo
cfe59031a5 fix: clear interrupt in touch sensor initialization 2021-03-01 03:57:01 +00:00
Darian Leung
424e1e1886 Add USB HCD
This commit adds the USB HCD (Host Controller Driver) and accompanying unit tests.
2021-02-26 23:13:42 +08:00
Renz Bagaporo
1efdcd69d9 xtensa: move out trax 2021-02-26 19:45:48 +08:00
Cao Sen Miao
a8343bc470 esp_system: support gpio wakeup from deep sleep on esp32c3 2021-02-26 12:26:49 +08:00
morris
7b37158ede rmt: distinguish group and channel in HAL layer 2021-02-25 12:42:23 +08:00
Armando
346dea206e spi_slv_hd: add hal_trans_finish comments for clarifying risk 2021-02-24 12:01:31 +08:00
Armando
8d90d3072c spi_slave_hd: refactor the hal append api to remove the spinlock 2021-02-24 12:01:31 +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
db3bf8b544 spi: refactor spi_common dma allocator 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
Marius Vikhammer
04df1f3a42 CI: enable example builds for C3
Enables building C3 examples in CI.

Fixes related warnings/errors and disables examples that cannot run.
2021-02-09 12:04:02 +08:00
Armando
5427c18781 adc: apply gdma api to adc on esp32c3 2021-02-08 11:41:21 +08:00
Michael (XIAO Xufeng)
423a5458dc Merge branch 'bugfix/support_new_BYflash_chip_boot' into 'master'
spi_flash: add external flash support on esp32c3

Closes IDF-2650, IDF-2651, and IDF-2399

See merge request espressif/esp-idf!12121
2021-02-05 20:03:24 +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
Michael (XIAO Xufeng)
351ba5ff9e adc: fixed the issue that ADC power is left on after the calibration is done
Also refactor the locks in the adc_common.c file.
2021-02-05 14:17:52 +08:00
Michael (XIAO Xufeng)
52a76867d1 Merge branch 'bugfix/spi_lose_last_3_bytes' into 'master'
spi_master: fix an issue where master cannot correctly receive data when using DMA in halfduplex mode.

Closes IDFGH-612

See merge request espressif/esp-idf!11354
2021-02-04 18:35:48 +08:00
Cao Sen Miao
e38326d715 spi_flash: fix the issue that ext flash hold is not controlled properly 2021-02-04 14:44:51 +08:00
Angus Gratton
6252446b7d Merge branch 'bugfix/s3_dma_enable_crypto' into 'master'
sha: dont enable/disable GDMA when enable/disable SHA module

See merge request espressif/esp-idf!12247
2021-02-04 11:30:10 +08:00
morris
e361498a2a intr_alloc: re-enable unit test 2021-02-02 20:25:50 +08:00
Marius Vikhammer
245a2469f6 sha: dont enable/disable GDMA when enable/disable SHA module
Enabling and disabling of the GDMA module is done by the GDMA driver.
2021-02-02 19:24:57 +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
Ivan Grokhotkov
bb1f75179b Merge branch 'bugfix/freertos_systimer_stall_when_cpu_halted' into 'master'
freertos: stall systimer while CPU is in debug mode

See merge request espressif/esp-idf!12063
2021-01-29 07:02:30 +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
Michael (XIAO Xufeng)
673937087e Merge branch 'feature/usb_host_hal' into 'master'
Add USB Host HAL

Closes IDF-2633

See merge request espressif/esp-idf!11784
2021-01-28 00:58:11 +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)
da4b4fc565 Merge branch 'bugfix/mcpwm_can_set_two_falut_signal' into 'master'
mcpwm: fix second fault line broken issue

Closes IDFGH-4194

See merge request espressif/esp-idf!12119
2021-01-27 11:36:30 +08:00
Krzysztof Budzynski
9a5bd86d54 Merge branch 'docs/update_docs_based_on_the_second_batch_of_customer_feedbacks' into 'master'
docs: update documents based on doc-855, doc-885, doc-889, doc-897

See merge request espressif/esp-idf!12124
2021-01-26 16:21:26 +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
Wang Fang
7df1cad1d6 docs: This MR does the following updates:
1. Provided more information regarding I2S_COMM_FORMAT_STAND_PCM_SHORT and I2S_COMM_FORMAT_STAND_PCM_LONG
2. Added --output flag for partition table read instructions
3. Reordered the header files for esp-ble-mesh
4. Reordered the setup instructions for Ubuntu and CentOS
2021-01-25 11:10:08 +00: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
Michael (XIAO Xufeng)
3d7da2c8ff adc: simplify LL on C3 2021-01-25 15:08:55 +08:00
Armando
f9ec7ddda3 adc: add comment for ADC sampling frequency 2021-01-25 04:51:40 +00:00
Armando
d8a4b247b9 adc_digi: update_adc_api_for_5M_freq_limit
The ``adc_digi_config_t`` struct is modified on esp32c3: configuration
of clock divider factors are not provided anymore. The SARADC sampling
frequency is provided instead. In this way, we can handle the frequency
limit better.
2021-01-25 04:51:40 +00:00
Michael (XIAO Xufeng)
56919682be adc: remove useless adc_ll_set_sar_clk_div in LL 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
fuzhibo
19fb11549b driver(adc): update adc ll and hal driver for esp32c3 2021-01-25 04:51:40 +00:00
Armando
02600309c8 adc: fix some regression issues 2021-01-25 04:51:40 +00:00
Armando
2b737c1927 adc: fix adc invalid data issue by update adc_reset 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
Armando
d35173c147 small fix for cherrypick 2021-01-25 04:51:40 +00:00
Armando
b38f4646de adc_digi: add dma drivers 2021-01-25 04:51:40 +00:00
Cao Sen Miao
f3e79ca166 spi_flash(c3): add boya chip support for suspend feature 2021-01-25 11:14:06 +08:00
Cao Sen Miao
9905da46e0 spi_flash: Add auto suspend mode on esp32c3 2021-01-25 11:14:02 +08:00
KonstantinKondrashov
1f37a5f162 spi_flash(esp32-s2): Add the workaround of a reboot issue when SPI HW suspend is enabled 2021-01-25 11:13:38 +08:00
Ivan Grokhotkov
d7bac619ec freertos: stall systimer while CPU is in debug mode 2021-01-24 11:32:17 +00:00
Michael (XIAO Xufeng)
06f22fc4b0 Merge branch 'feature/new_restart_mode_driver_and_ut_for_spi_slave_hd' into 'master'
spi_slave_halfduplex: append mode driver

See merge request espressif/esp-idf!10845
2021-01-24 09:27:12 +08:00
morris
ceab7daea8 mcpwm: fix wrong capture edge 2021-01-22 16:17:59 +08:00
Armando
0538dc2d93 spi_slave_hd: add DMA Append Mode feature 2021-01-21 18:53:53 +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
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
Jiang Jiang Jian
26ae354dc5 Merge branch 'feature/support_esp32c3_lightsleep_master' into 'master'
support esp32c3 lightsleep for master

Closes IDF-2106

See merge request espressif/esp-idf!11975
2021-01-20 16:00:06 +08:00
Angus Gratton
55970fe3a2 Merge branch 'feature/esp32c3_support_brownout' into 'master'
esp32c3: Adds support BROWNOUT reset

Closes IDF-2397

See merge request espressif/esp-idf!11910
2021-01-20 12:19:56 +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
355dd10257 light sleep: dfs support for esp32c3 2021-01-19 14:50:58 +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
KonstantinKondrashov
e62d4a6b81 esp32s3: BROWNOUT reset reason is set directly without using the brownout ISR 2021-01-18 15:38:09 +08:00
KonstantinKondrashov
f58c296336 esp32s2: BROWNOUT reset reason is set directly without using the brownout ISR 2021-01-18 15:38:09 +08:00
KonstantinKondrashov
d81a93ae4c esp32c3: Adds support BROWNOUT reset 2021-01-18 15:38:09 +08:00
ninh
659d805411 esp_wifi: light sleep optimization 2021-01-18 15:31:03 +08:00
Darian Leung
40bff84803 Add USB Host HAL
This commit adds the USB Host Driver HAL
2021-01-18 05:02:10 +08:00
Jiang Jiang Jian
8b33695495 Merge branch 'feature/support_esp32c3_s3_ble_5.0_and_bug_fix' into 'master'
Feature/support esp32c3 s3 ble 5.0 and bug fix

See merge request espressif/esp-idf!12007
2021-01-17 17:06:12 +08:00
zwj
7c1c669799 component/bt: add BLE v5.0 feature for bluedroid host 2021-01-15 17:55:12 +08:00
ninh
27aa6c289f components/pm: Add slp gpio configure workaround 2021-01-15 15:34:45 +08:00
Angus Gratton
19883d9799 Merge branch 'bugfix/fix_sign_conversion_warnign' into 'master'
freertos: Silence sign-conversion warning

Closes IDFGH-3949

See merge request espressif/esp-idf!10724
2021-01-15 14:40:59 +08:00
Michael (XIAO Xufeng)
b94c99a033 Merge branch 'feature/c3_twai_bringup' into 'master'
TWAI: bringup for S3 & C3

Closes IDF-2109 and IDF-1770

See merge request espressif/esp-idf!11984
2021-01-15 13:46:21 +08:00
Marius Vikhammer
0713e93b8f TWAI: bringup for S3 and C3 2021-01-14 20:30:31 +08:00
Jakob Hasse
b51889dccb system: stack watchpoint support on C3
Closes IDF-2307
2021-01-14 17:46:44 +08:00
Michael (XIAO Xufeng)
2d3f22918f Merge branch 'feature/gdma_channel_allocator' into 'master'
gdma channel allocator

Closes IDF-2124

See merge request espressif/esp-idf!11570
2021-01-14 10:52:49 +08:00
Renz Bagaporo
ff2d9fd96c [freertos] Silence sign-conversion warning 2021-01-14 10:54:15 +11:00
Angus Gratton
f683db7aea Merge branch 'feature/c3_IDF-2554' into 'master'
global: Uses CCOUNT API instead of XTHAL macro

Closes IDF-2554

See merge request espressif/esp-idf!11954
2021-01-13 12:55:21 +08:00
morris
40a6a0fac6 async_mcp: apply gdma driver 2021-01-13 10:52:27 +08:00
morris
e6d23a35ec gdma: dynamic alloc DMA channels 2021-01-13 10:52:27 +08:00
KonstantinKondrashov
dada7cd035 global: Uses CCOUNT API instead of XTHAL macro 2021-01-12 16:24:23 +08:00
morris
753a929525 global: fix sign-compare warnings 2021-01-12 14:05:08 +08:00
Michael (XIAO Xufeng)
caf1e9d570 Merge branch 'bugfix/soc_caps_implicit_inc' into 'master'
HAL: explicitly include soc_caps.h

Closes IDFGH-4547

See merge request espressif/esp-idf!11895
2021-01-11 14:18:10 +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
Marius Vikhammer
58c3f6a421 hal: explicitly include soc_caps.h
Many files in the HAL layer depended on SOC_ macros without
explicitly including soc_caps.h
2021-01-07 10:13:17 +08:00
Armando
0c3653b1fd spi_master: fix master HD mode cannot correctly receive data issue when using DMA.
Issue Description:
If master is in HD mode, if it sends data without receiving data, it will
still enable the RX DMA because of old version ESP32 silicon issue. And
because there is no correctly linked RX DMA descriptor, an
``inlink_dscr_error`` intr will be seen, which will influence the
following RX transactions.

Solution:
Trigge this workaround only in FD mode.

TODO:
Add a test to check if this workaround related issue does exit. If so,
reporting to Digital Team is also needed.
2021-01-05 18:16:49 +08:00
morris
7a71cedf87 interrupt: filter out reserved int number by decoding risc-v JAL instruction 2021-01-05 15:39:46 +08:00
morris
1f9629da9f hal: put cpu_ll_get_core_id to IRAM 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
72e4655d4e interrupt: removed descriptor table from esp32c3 interrupt hal. 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
Felipe Neves
544a3f7df5 interrupt-allocator: reject vector allocation if its marked as not-implemented. and search to next available 2021-01-05 15:39:46 +08:00
Felipe Neves
f4781d3b1d freertos: riscv port now uses interrupt allocator and crosscore interrupt 2021-01-05 15:39:46 +08:00
Felipe Neves
09bc1580be intr_allocator: add abstractions for priority, type and edge-ack interrupt controller functions 2021-01-05 15:39:46 +08:00
Jakob Hasse
e532a29288 [Peripheral/Security] DS peripheral driver 2021-01-05 12:26:59 +08:00
Omar Chebib
c218f669ba panic on RISC-V: Take into account Merge Request comments 2020-12-31 15:46:17 +08:00
Omar Chebib
b6a450f824 panic: Add support for SoC-level panic
SoC level exceptions such as watchdog timer and cache errors are now supported.
Such exceptions now triggers a panic, giving more information about how
and when it happened.
2020-12-31 15:46:17 +08:00
Marius Vikhammer
f54e9269f3 esp_system: Don't compile sleep_mode.c on c3 2020-12-31 15:20:05 +11:00
Marius Vikhammer
68608f804c esp32c3: Misc fixes needed to build & run 2020-12-31 15:20:05 +11: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
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
Michael (XIAO Xufeng)
d5e1f43175 Merge branch 'feature/support_ext_flash_c3' into 'master'
esp_flash: support external flash on C3

Closes IDF-2123

See merge request espressif/esp-idf!11648
2020-12-24 10:30:20 +08:00
Angus Gratton
04c681443e hal esp32c3: Add placeholder rtc_io_ll.h 2020-12-23 09:53:24 +11: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
75dede2344 esp_hw_support: Add esp32c3 regi2c headers 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
Michael (XIAO Xufeng)
7f3e61cf63 esp_flash: add support for external flash on C3 2020-12-22 13:31:04 +08:00
Angus Gratton
c3cc5b17e0 Merge branch 'feature/esp32c3_spi_flash' into 'master'
spi_flash: Add esp32c3 support

Closes IDF-2362

See merge request espressif/esp-idf!11639
2020-12-18 14:02:04 +08:00
Angus Gratton
d4c9a45675 spi_flash: Add ESP32-C3 support
Based on internal commit 3ef01301fff
2020-12-17 15:34:13 +11:00
Marius Vikhammer
dc0e80a4c8 Docs: fix doxygen warnings 2020-12-16 14:37:14 +08:00
Michael (XIAO Xufeng)
40b08e33c9 Merge branch 'bugfix/touch_sensor_reading_error_in_light_sleep_process' into 'master'
driver(touch): fix touch sensor false trigger in sleep mode

See merge request espressif/esp-idf!10983
2020-12-14 14:51:51 +08:00
fuzhibo
985e94139d driver(touch): fix touch sensor false trigger in sleep mode 2020-12-10 17:43:14 +08: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
Michael (XIAO Xufeng)
04d6b115ae adc: fixed efuse called in critical section issue 2020-12-08 17:41:49 +08:00
Wu Bo Wen
5cc329b9d0 driver/adc: support for esp32s2 adc calibration scheme V2
notice that the o_code is now pulled from efuse instead of automatically calibrated. This may influence other parts of the system.

Closes https://github.com/espressif/esp-idf/issues/5455
2020-12-03 20:08:59 +08:00
Armando
f80bcb733a uart: modify s3 ll functions of reading/writing fifo 2020-11-30 15:23:15 +11:00
Armando
d393699ab6 uart: bringup on esp32c3 2020-11-30 15:23:15 +11:00
Angus Gratton
7c08be5771 hal: Add initial ESP32-C3 support
From internal commit 7761d6e8
2020-11-30 15:23:15 +11:00
Armando
05a4a8d864 uart: seperate sclk and baudrate setting 2020-11-24 19:12:52 +08:00
Armando
fb8b905539 uart: add uart support on esp32s3 2020-11-24 19:12:51 +08:00
Michael (XIAO Xufeng)
af992c26bc Merge branch 'bugfix/fix_x32k_startup_slow_bug' into 'master'
bugfix: Fix xtal 32k not oscillate or oscillate too slowly issue for esp32

See merge request espressif/esp-idf!10519
2020-11-24 17:37:29 +08:00
chaijie
a48b5246cc ESP32: Fix xtal 32k not oscillate or oscillate too slowly issue
ESP32 in revision0 and revision1 uses touchpad to provide
current to oscillate xtal 32k. But revision2 and revision3
do not need to do that.
Note: touchpad can not work and toupad/ULP wakeup sources
are not available when toupad provides current to xtal 32k
2020-11-23 19:38:11 +08:00
Armando
9c507982aa spi: fix spi_ll.h func name
On esp32 and esp32s2:
``spi_ll_dma_set_out_eof_generation`` is modified to
``spi_ll_dma_set_rx_eof_generation``.

``spi_dma_ll_set_rx_eof_generation`` is modified to
``spi_dma_ll_set_out_eof_generation``.

Because on ESP32S3, this bit ``out_eof_mode`` is moved to DMA related
registers.
2020-11-19 19:33:02 +08:00
Michael (XIAO Xufeng)
db0fec51e8 Merge branch 'feat/esp_flash_freq_using_divider' into 'master'
esp_flash: use divider rather than hard-coded freq in init code

See merge request espressif/esp-idf!10993
2020-11-13 11:43:22 +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
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
deea402cf4 timer: pooling update bit before reading count value 2020-11-12 10:31:38 +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
e82eac4354 cmake: Apply cmakelint fixes 2020-11-11 07:36:35 +00:00
Angus Gratton
ad4a10d7c1 Merge branch 'bugfix/efuse_change_burn_order_for_s2_s3' into 'master'
efuse: Fix the order of writing in batch mode

See merge request espressif/esp-idf!11067
2020-11-11 14:49:20 +08:00
Michael (XIAO Xufeng)
ee40f02afc esp_flash: use divider rather than hard-coded freq in init code 2020-11-10 19:09:17 +08: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
Angus Gratton
79e68ffaae esp32s2: Disable ADC calibration routine if running on FPGA 2020-11-06 07:25:35 +00: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
Jiang Jiang Jian
5ad2ec79fd Merge branch 'bugfix/fix_reject_using_rtc_gpio' into 'master'
fix reject lightsleep when using rtc gpio to wakeup

See merge request espressif/esp-idf!11027
2020-11-02 16:13:33 +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
ninh
19fd0f5634 fix reject lightsleep when using rtc gpio to wakeup 2020-10-29 02:47:58 +00:00
Renz Bagaporo
79887fdc6c soc: descriptive part occupy whole component 2020-10-28 07:21:29 +08:00
morris
d084ef4473 gdma: fix wrong m2m mode wrong config 2020-10-27 16:53:19 +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
Angus Gratton
f806261964 Merge branch 'bugfix/fix_rtc_io_hal_desc' into 'master'
Sleep related minor description fixes

Closes IDFGH-3868

See merge request espressif/esp-idf!10725
2020-10-26 18:48:03 +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
Renz Bagaporo
0aa9ee5b24 esp32s3: delete duplicate esp32s3 2020-10-22 20:01:59 +11:00
Renz Bagaporo
e19f5d8955 hal: fix wrong description on rtc io hal
Closes https://github.com/espressif/esp-idf/issues/5770
2020-10-22 20:01:41 +11: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
153e819e8a pcnt: add rotary encoder example 2020-10-19 11:56:18 +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
Angus Gratton
4504318a28 Merge branch 'feature/esp32s2_bootloader_random' into 'master'
bootloader_support: Enable RNG entropy source for ESP32-S2

Closes IDF-1347

See merge request espressif/esp-idf!8965
2020-10-19 07:12:59 +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
699742acc6 esp32s2: Support bootloader_random_enable() 2020-10-16 18:48:26 +11:00
fuzhibo
6773df88f2 feature(rtc): rename i2c_xxx to regi2c_xxx 2020-10-14 21:15:24 +08:00
Michael (XIAO Xufeng)
fc7433d610 Merge branch 'feature/twai_isr_runs_with_cache_disabled' into 'master'
TWAI: ISR runs when cache is disabled

See merge request espressif/esp-idf!9920
2020-10-12 20:18:36 +08:00
fuzhibo
9cd5e6f8c9 bugfix(adc): missing ranges of ADC codes in ESP32 2020-10-12 07:41:03 +00:00
Darian Leung
4c57f50fe4 TWAI: ISR runs when cache is disabled
This commit adds the feature where the TWAI ISR will continue to
run even if the cache is disabled. Whilst cache is disabled, any
received messages will go into the RX queue, and any pending TX
messages in the TX queue will be transmitted. This feature should
be enabled using the CONFIG_TWAI_ISR_IN_IRAM option.
2020-10-10 14:19:32 +08: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
Martin Vychodil
497b730e8f * memprot support for RTC_SLOW
* API upgrade
JIRA IDF-1636
2020-10-08 11:19:23 +08:00
Michael (XIAO Xufeng)
fe37db3271 esp_flash: fix the incorrect check_idle logic in LL and chip_driver 2020-10-02 05:34:36 +00:00
Angus Gratton
83a7891f84 Merge branch 'feature/intr_alloc' into 'master'
feature/intr_alloc: moved interrupt allocator to the esp-system and refactored it moving all platform specific code to its place

Closes IDF-1913

See merge request espressif/esp-idf!10267
2020-09-30 07:44:12 +08:00
Felipe Neves
2e826b7a8f intr_alloc: split interrupt allocator into common-code and platform-code
esp_system: removed repeated interrupt allocator code and moved common code to esp_system

xtens: moved xtensa specific code from freertos to the xtensa component

hal/interrupt_controller: added interrupt controller hal and ll files

docs: update the doxyfile with new location of esp_itr_alloc.h file

xtensa: fixed dangerous relocation problem after moving xtensa interrupt files out of freertos

docs: removed Xtensa reference from intr_allocator api-reference

xtensa: pushed the interrupt function that manages non iram interrupts to the xtensa layer

esp_system/test: fixed platform dependent setting for intr_allocator tests

hal: rename the functions used to manage non iram interrupt mask.
2020-09-30 07:44:12 +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
Michael (XIAO Xufeng)
c449a0efe2 Merge branch 'bugfix/gdma_ll_tx_fifo' into 'master'
gdma: fix incorrect calculation of tx fifo size

See merge request espressif/esp-idf!10610
2020-09-28 15:51:25 +08:00
Michael (XIAO Xufeng)
c7264f04c6 Merge branch 'bugfix/fix_incorrect_i2s_pdm_clk_issue' into 'master'
Bugfix(I2S):  Fix I2S PDM clock incorrect issue when using APLL.

Closes IDFGH-3423 and IDFGH-3106

See merge request espressif/esp-idf!9101
2020-09-28 11:35:31 +08:00
Michael (XIAO Xufeng)
60fb1a6ef3 Merge branch 'bugfix/spi_add_flash' into 'master'
spi_flash: fix a logic bug in checking ex_flash and psram

Closes IDFGH-2230

See merge request espressif/esp-idf!10009
2020-09-28 10:47:07 +08:00
fuzhibo
247789bb2e rtc: support access internal i2c register 2020-09-27 12:12:17 +08:00
Marius Vikhammer
4d57a5c2c7 gdma: fix incorrect calculation of tx fifo size 2020-09-25 16:15:56 +08:00
Cao Sen Miao
4ce8b59016 spi_flash: fix initialization failure when ex_flash with psram on
non-SPI1 bus.

Close https://github.com/espressif/esp-idf/issues/4379
2020-09-25 10:22:24 +08:00
Armando
1e1beb69aa spi: fix build fail issue when target is esp32s3 2020-09-24 10:51:23 +08:00
Michael (XIAO Xufeng)
4b95f7efa8 Merge branch 'feature/spi_dma_hal_ll_refactor' into 'master'
spi: refactor DMA ll layer functions

Closes IDFGH-3538 and IDFGH-2555

See merge request espressif/esp-idf!9929
2020-09-23 15:32:41 +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
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
Marius Vikhammer
bff0016eb8 crypto accelerator support on esp32s3
SHA: passing unit tests
RSA: pass tests
AES: tests passing
2020-09-22 15:15:03 +08:00
morris
cc66334014 esp_timer: initial support on 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
Armando
59e350b195 spi: seperate the pointer for the TX and RX DMA 2020-09-21 20:33:56 +08:00
Armando
27a6f2666a spi_master: refactor hal context structures
This commit seperates the hal context into different configuration
structures based on their members' definitions. Through refactoring
spi_master.c, the device related configuration should be passed in and
set each time before a new transaction. The transaction related
configuration now is a local variable in case of the fact that error
occurs without any notice when user forgets to pass new transaction
configuration in (which means the old driver will use the trans_config
that is saved from last transaction).

Besides, via above refactor, this commit fixs a bug which leads to
wrong cs polarity setting.
Closes https://github.com/espressif/esp-idf/pull/5490

Moreover, via above refactor, this commit also fixs a bug about duplex
mode switching when multiple devices are added to the bus.
Closes https://github.com/espressif/esp-idf/issues/4641
2020-09-21 20:32:41 +08:00
Wielebny666
db6fbba73e spi_master: correctly set cs polarity
All devices must be added to the same spi line before use.

Partly solve this problem: https://github.com/espressif/esp-idf/pull/5490
2020-09-17 12:05:57 +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
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
Ivan Grokhotkov
fa8e0438b4 Merge branch 'bugfix/deepsleep_flush_uarts_correct' into 'master'
esp32s2/soc: Fix periph_ll_periph_enabled

See merge request espressif/esp-idf!10083
2020-09-08 23:21:43 +08:00
Ivan Grokhotkov
3a51584fbb Merge branch 'bugfix/uart_read_o2' into 'master'
hal: workaround for UART FIFO read on ESP32 with -O2 optimization

Closes IDFCI-97

See merge request espressif/esp-idf!10263
2020-09-08 00:01:48 +08:00
KonstantinKondrashov
0319eb5984 esp32s2/soc: Fix periph_ll_periph_enabled
Logs, before to go the deepsleep, were not completely flushed.
2020-09-07 08:32:18 +00:00
Zhang Hu
6a5faa0fd7 Driver(I2S): Fix I2S PDM clock incorrect issue when using APLL.
closes https://github.com/espressif/esp-idf/issues/5127

closes https://github.com/espressif/esp-idf/issues/5386
2020-09-07 08:08:22 +00:00
Michael (XIAO Xufeng)
91af5eaf4f Merge branch 'refactor/twai_hal_state' into 'master'
Refactor TWAI HAL to store state information

Closes IDF-1633

See merge request espressif/esp-idf!9789
2020-09-03 23:22:30 +08:00
Ivan Grokhotkov
c3008e8ae1 hal: workaround for UART FIFO read on ESP32 with -O2 optimization 2020-09-03 12:13:11 +02:00
Wu Bo Wen
658b56a690 doc/adc: modifications in the adc documentation and adc headers 2020-09-02 11:30:48 +00:00
Darian Leung
7398390049 TWAI: Track HW state in HAL
This commit refactors the TWAI HAL such that it
now tracks  harwdare state instead of the driver
layer. Some HAL and LL cleanup was also done.
2020-09-02 13:03:41 +08:00
Michael (XIAO Xufeng)
ea63bd3de4 Merge branch 'feat/extract_hal_from_soc' into 'master'
hal: extract hal component from soc component

See merge request espressif/esp-idf!9992
2020-09-01 23:56:15 +08:00
Michael (XIAO Xufeng)
5425ef4ee4 hal: extract hal component from soc component 2020-09-01 13:25:32 +08:00