Commit Graph

126 Commits

Author SHA1 Message Date
Cao Sen Miao
aac5297f8a I2C: put some interrupt used functions into IRAM 2022-12-05 18:05:28 +08:00
jingli
b6896055a2 hal/gpio_ll: fix digital gpio can not enable hold during deep sleep when force_unhold set(32/s2/s3) 2022-11-18 03:00:01 +00:00
jingli
58e9ce6fe3 hal/gpio_ll: fix digital gpio can not disable hold during deep sleep 2022-11-18 03:00:01 +00:00
jingli
24eea75f9c esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep 2022-11-18 03:00:01 +00:00
liuning
dbe59eff86 esp_wifi: add protection for mac reset (backport 4.3) 2022-11-08 14:04:52 +08:00
Cao Sen Miao
32dca66fb6 I2C: Make I2C clock frequency accurate 2022-11-01 15:48:26 +08:00
gaoxu
8095142796 SPI: change the different soc's spi defintion location and fix the bug that wrong dummy cycle under quad spi mode 2022-09-15 16:03:54 +08:00
morris
a1c4397ce2 Merge branch 'bugfix/cpu_cycle_count_not_iram_v4.3' into 'release/v4.3'
HAL: place cpu_ll_get_cycle_count in IRAM (v4.3)

See merge request espressif/esp-idf!18294
2022-06-22 11:42:27 +08:00
Marius Vikhammer
537f802260 HAL: place cpu_ll_get_cycle_count in IRAM
Closes https://github.com/espressif/esp-idf/issues/9008
2022-05-28 14:31:33 +08:00
jingli
da08dab9e5 remove wrong function rtc_cntl_ll_ulp_wakeup_enable for esp32s2 and esp32s3 2022-05-19 23:58:29 +08:00
jingli
8309e3e5ce esp_hw_‎support/sleep: ‎fix cannot lightsleep again after a wakeup from ULP
Since ulp wakeup signal are connected to ulp int raw(except esp32), we
need to clear ulp int raw before sleep when ulp wakeup enabled. Otherwise,
if the ulp int raw is already set, chip will not sleep properly.

Closes https://github.com/espressif/esp-idf/issues/6229
2022-05-19 23:54:29 +08:00
Armando
f8c098658c adc: fix adc digital not reset issue 2022-04-21 19:29:15 +08:00
Marius Vikhammer
491b95925e spi flash: fix cache accessed while disabled issues at -O0
mask_get_id and gpio_hal_iomux_func_sel were called while cache
is disabled, but were not inlined as expected at -0O.
Force these functions to always be inlined.
2022-03-11 09:39:50 +08:00
Michael (XIAO Xufeng)
d04dacdaa1 Merge branch 'bugfix/usb_device_struct_cleanup_v4.3' into 'release/v4.3'
USB: Cleanup device side struct and fix incorrect DM pulldown configuration (v4.3)

See merge request espressif/esp-idf!17103
2022-02-12 20:53:02 +00:00
Michael (XIAO Xufeng)
dcfd5187ac Merge branch 'bugfix/fix_spi_cs_hold_time_issue_v4.3' into 'release/v4.3'
spi_master: fix spi cs_ena_posttrans issue (v4.3)

See merge request espressif/esp-idf!16687
2022-02-10 09:36:50 +00:00
Darian Leung
7f51eb7e7c Fix incorrect D- pulldown and cleanup USB device struct
This commit fixes the incorrect setting of the D- pulldown resistor in the USB LL.
The usb_struct.h used by USB device mode has also been cleaned up.
2022-02-10 17:20:39 +08:00
morris
81e3035f4d rmt: do not support rx wrap on esp32s2
Closes https://github.com/espressif/esp-idf/issues/8354
2022-02-09 18:23:44 +08:00
Armando
b3c51e74c8 spi_master: fix spi cs_ena_posttrans issue 2022-02-07 12:22:15 +08:00
Gustavo Henrique Nihei
880e96d7bb spi: Ensure DMA In-Link EOF is generated by trans_done on SPI Slave 2021-11-25 12:03:55 +08:00
Gustavo Henrique Nihei
2bc4a0836f spi: Remove Slave TX/RX set bitlen not effective for ESP32-S2/C3/S3
Furthermore, RX_EOF_EN should only be set when SPI Slave is configured
for segment transfer mode and the "ms_data_bitlen" field is configured
to control the "IN_SUC_EOF" interrupt. Since "ms_data_bitlen" is not
set anymore for S2, C3 and S3, "RX_EOF_EN" should be cleared.
2021-11-25 12:03:54 +08:00
Jiang Jiang Jian
b1290591df Merge branch 'bugfix/register_non_32bit_access_v4.3' into 'release/v4.3'
hal: avoid non-32bit access to registers (v4.3)

See merge request espressif/esp-idf!15616
2021-11-23 07:09:41 +00:00
Marius Vikhammer
79b59947d8 aes: fix potential unaligned access of buffers
https://github.com/espressif/esp-idf/issues/7236
2021-11-04 10:35:55 +08:00
morris
62bd98158f hal: avoid non-32bit access to registers 2021-10-25 11:33:50 +08:00
SalimTerryLi
29accf2533 soc/ll: workaround compiler bug that generate 8/16 bits inst instead of 32 bits one
Note: on ESP32 UART rxfifo seems to be read as u8 instead of u32 to make it work
2021-10-12 10:42:04 +08:00
Cao Sen Miao
9c7d2c7595 spi_flash: fix cs line setup to make the flash driver more stable 2021-06-15 15:27:51 +08:00
Kang Zuoling
d651e4e073 touch_sensor: fix esp32s2 touch sensor default power source 2021-05-08 13:54:59 +08:00
Darian Leung
07291fdd27 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-04-26 19:35:13 +08:00
Michael (XIAO Xufeng)
693aaef039 Merge branch 'bugfix/enable_gpio18_gpio19_esp32c3_v4.3' into 'release/v4.3'
gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3 (backport v4.3)

See merge request espressif/esp-idf!13112
2021-04-13 07:40:00 +00:00
Michael (XIAO Xufeng)
9a7deae742 Merge branch 'bugfix/reduce_the_consumption_of_touch_sensor_during_deep_sleep_backport_v4.3' into 'release/v4.3'
bugfix: reduce the consumption of touch sensor during deep sleep (backport v4.3)

See merge request espressif/esp-idf!12869
2021-04-13 04:16:01 +00:00
Omar Chebib
84dc42c4b0 gpio: Disable USB JTAG when setting pins 18 and 19 as GPIOs on ESP32C3
When `DIS_USB_JTAG` eFuse is NOT burned (`False`), it is not possible
to set pins 18 and 19 as GPIOs. This commit solves this by manually
disabling USB JTAG when using pins 18 or 19.
The functions shall use `gpio_hal_iomux_func_sel` instead of
`PIN_FUNC_SELELECT`.
2021-04-12 17:45:06 +08:00
fuzhibo
e310fb1393 fix: reduce the consumption of touch sensor during deep sleep 2021-04-12 12:24:53 +08:00
Martin Vychodil
6dfff2fdbd esp32c3: memprot API upgrade and test application
Closes IDF-2641
2021-04-12 10:21:58 +10:00
aleks
d761226f36 driver: fix uart handler in iram calls inline uart_ll_is_tx_idle 2021-04-01 09:56:56 +02:00
Michael (XIAO Xufeng)
b75a5fd03a Merge branch 'bugfix/adc_power_issue_4.3' into 'release/v4.3'
adc: fix adc power issue (v4.3)

See merge request espressif/esp-idf!12921
2021-03-30 17:15:09 +00:00
Armando
f48346f22f adc: apply adc power API to adc driver 2021-03-26 17:41:20 +08:00
fuzhibo
918875424e fix: clear interrupt in touch sensor initialization 2021-03-16 11:37:41 +08:00
Michael (XIAO Xufeng)
6accffecea Merge branch 'bugfix/fix_spi_slv_hd_dma_reset_issue_4.3' into 'release/v4.3'
spi_slave_hd: fix spi slv hd dma reset issue (4.3)

See merge request espressif/esp-idf!12513
2021-02-27 04:12:42 +00:00
Cao Sen Miao
198d350fe5 esp_system: support gpio wakeup from deep sleep on esp32c3 2021-02-26 17:08:22 +08:00
Armando
2c1845995b spi_slave_hd: refactor the hal append api to remove the spinlock 2021-02-26 10:39:10 +08:00
Armando
66d10f0eec spi: refactor spi_common dma allocator 2021-02-25 11:01:33 +08:00
Armando
ffc4ff5a8c spi: apply gdma allocator to SPI 2021-02-25 11:01:16 +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
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
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
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
Armando
02600309c8 adc: fix some regression issues 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