Commit Graph

856 Commits

Author SHA1 Message Date
Armando
9bec4233a4 adc: port gh pr to current adc continuous mode driver
DMA EOF may happens per multiple dma descriptors, instead of only one.

Closes https://github.com/espressif/esp-idf/pull/11500
2023-06-13 10:28:46 +08:00
Niklas Gürtler
82c055bac9 Fix #10804 by running continuous ADC DMA in endless loop instead of restarting after each run (descriptor chain) to avoid losing samples. Use descriptor error callback for GDMA to check for DMA buffer overrun.
Signed-off-by: Armando <douyiwen@espressif.com>
2023-06-13 10:28:46 +08:00
Armando
ac3f74ecb6 adc: fix adc continuous driver conv_frame_size not bigger than 4092 issue
Closes https://github.com/espressif/esp-idf/issues/11385
2023-06-13 10:28:46 +08:00
Jiang Jiang Jian
838850abab Merge branch 'feature/example_deep_sleep_wake_stub_backport_v5.0' into 'release/v5.0'
example: add deepsleep_wake stub example (backport v5.0)

See merge request espressif/esp-idf!23414
2023-06-12 11:07:59 +08:00
morris
839d1a831d drivers: fix issue reported by coverity 2023-06-07 11:43:17 +08:00
Jiang Jiang Jian
0872feb2a0 Merge branch 'bugfix/eth_lan8720_ci_v5.0' into 'release/v5.0'
esp_eth: start/stop and L2 test stability improvements (v5.0)

See merge request espressif/esp-idf!22317
2023-06-01 19:54:17 +08:00
Ondrej Kosta
4dc8ce77e4 esp_eth: possible start/stop issue fixed
ESP32 EMAC could hang when stopped/started multiple times at 10Mbps speed mode
2023-05-29 10:49:31 +00:00
Ondrej Kosta
47a3faa0ff Ethernet driver and documentation clean-up 2023-05-18 14:28:21 +00:00
Zim Kalinowski
d1280d92f5 Merge branch 'feature/efuse_settings_v5.0' into 'release/v5.0'
hal: Explicit setting of efuse time settings (v5.0)

See merge request espressif/esp-idf!23726
2023-05-15 18:48:45 +08:00
Marius Vikhammer
633b4cb38b Merge branch 'bugfix/i2c_timing_wrong_v5.0' into 'release/v5.0'
i2c: fix a bug in sda sample timing (backport v5.0)

See merge request espressif/esp-idf!23226
2023-05-15 10:40:01 +08:00
morris
829cf5aaf6 Merge branch 'bugfix/check_filter_range_v5.0' into 'release/v5.0'
rmt: check filter and idle threashold (v5.0)

See merge request espressif/esp-idf!23605
2023-05-14 14:12:47 +08:00
KonstantinKondrashov
bd4802104b hal: Explicit setting of efuse time settings
EFUSE_PWR_ON_NUM in C3 has default value = 0x2880, now = 0x3000
2023-05-12 21:48:05 +08:00
Marius Vikhammer
bfe07cbef9 Merge branch 'feature/unicore_bootloader_can_run_multicore_app_v5.0' into 'release/v5.0'
esp_system: Fix case when multicore app can not be run if bootloader is unicore (v5.0)

See merge request espressif/esp-idf!23027
2023-05-12 17:49:52 +08:00
morris
2b483c98c4 Merge branch 'bugfix/fix_several_bugs_in_i2s_v5.0' into 'release/v5.0'
i2s: fix several bugs in std and tdm mode (v5.0)

See merge request espressif/esp-idf!23670
2023-05-12 11:03:37 +08:00
KonstantinKondrashov
861a5fb863 esp_system: Do not rely on bootloader cache settings, do cache settings unconditionally at startup app
It makes multicore app runnable by unicore bootloader

Closes https://github.com/espressif/esp-idf/issues/10714
2023-05-11 05:55:32 +00:00
morris
889787c7ca Merge branch 'refactor/improve_adc_power_maintanance_v5.0' into 'release/v5.0'
adc: improve adc power maintanance (v5.0)

See merge request espressif/esp-idf!23273
2023-05-11 11:09:31 +08:00
morris
9716101e7d rmt: check filter and idle threashold
Closes https://github.com/espressif/esp-idf/issues/11262
2023-05-11 02:29:26 +00:00
morris
8d0df0a19f Merge branch 'bugfix/rmt_calarify_mem_block_symbols_v5.0' into 'release/v5.0'
Bugfix/rmt calarify mem block symbols (v5.0)

See merge request espressif/esp-idf!23000
2023-05-11 10:27:13 +08:00
laokaiyao
4dd5909b13 i2s_tdm: fixed half sample bit calculation and add check for slot mask 2023-05-10 12:28:52 +08:00
Omar Chebib
ed70f1c66b i2c: fix a bug in sda sample timing
* Closes https://github.com/espressif/esp-idf/issues/9777

This bug prevented SCL line to work properly after a NACK was received in master mode.
2023-05-06 08:05:32 +00:00
jiangguangming
f6aafd3539 hal: add rtc_cntl LL function for wake stub 2023-05-04 16:46:15 +08:00
Armando
85980884d7 adc: improve adc power logic 2023-04-20 10:34:37 +08:00
morris
e06bea0445 rmt: use gpio_num_t to define gpio number 2023-03-30 15:52:08 +08:00
KonstantinKondrashov
76291d0095 efuse: Fix load_efuses_from_flash when FE is on
esp_efuse_utility_load_efuses_from_flash() read emul_efuse
as an encrypted partition, but that is not correct,
this partition was never encrypted.
Need to read it as not encrypted partition.

Fxed the case: If FE is already on then EFUSE VIRT mode can work with it.

Closes https://github.com/espressif/esp-idf/issues/10929
2023-03-29 14:58:50 +08:00
Michael (XIAO Xufeng)
8f202f0ea5 Merge branch 'bugfix/fix_uart_tx_done_hardware_concurrency_v5.0' into 'release/v5.0'
uart: Fix TX side concurrency issues (v5.0)

See merge request espressif/esp-idf!22595
2023-03-23 15:29:33 +08:00
laokaiyao
ec55f7fe6e i2s_pdm: fix tx frequency limitation
Closes: https://github.com/espressif/esp-idf/issues/10420
2023-03-20 19:22:40 +08:00
Song Ruo Jing
27f9ee66d5 gpio: Fix IO hold function related problems
1. Fix deep sleep wakeup IOs can not be unhold issue
2. Correct hold related APIs' description
3. Fix gpio_force_hold_all API

docs: Add GPIO wakeup source to sleep_modes doc for ESP32C3 and C2
2023-03-17 14:44:29 +08:00
Laukik Hase
a2dd95434f memprot: Fix incorrect faulting address reported for esp32c3 & esp32s3
Co-authored-by: Mahavir Jain <mahavir@espressif.com>
2023-03-06 12:39:12 +00:00
Song Ruo Jing
f177b2c6c6 uart: Fix two TX concurrency issues
1. Concurrency might cause ESP_ERR_TIMEOUT when calling uart_wait_tx_done
2. Concurrency might cause RTS line being de-assreted during tx transmission for rs485 mode
2023-03-03 19:18:08 +08:00
Simon Arlott
9d34501ad1 hal/uart_ll.h: Fix compile issue with C++
Merges https://github.com/espressif/esp-idf/pull/10640
2023-03-03 16:50:26 +08:00
Zim Kalinowski
fd707e1d03 Merge branch 'bugfix/twai_listen_only_errata_v5.0' into 'release/v5.0'
twai: Add errata workaround for listen only mode (v5.0)

See merge request espressif/esp-idf!22514
2023-02-27 18:13:11 +08:00
Jiang Jiang Jian
4abb6efb36 Merge branch 'bugfix/fix_gpio_wakeup_related_issues_in_ssc_sleep_test_backport_v5.0' into 'release/v5.0'
sleep: fix gpio wakeup related issues(backport v5.0)

See merge request espressif/esp-idf!22332
2023-02-27 15:12:13 +08:00
Jiang Jiang Jian
335ad04cba Merge branch 'feature/support_feature_depend_on_rtc_fast_mem_for_esp32c2_backport_v5.0' into 'release/v5.0'
esp32c2: support feature(rtc time) depend on rtc fast mem(backport v5.0)

See merge request espressif/esp-idf!22224
2023-02-27 15:06:31 +08:00
Darian Leung
3318fac02f twai: Add errata workaround for listen only mode
This commit adds a workaround for the TWAI listen only mode errata which is
present on the ESP32, ESP32-S2, ESP32-S3, and ESP32-C3. twai_get_status_info()
has also been updated to account for the fact that TEC/REC are frozen in
listen only mode.

Errata Description:

When the TWAI controller is put into listen only mode, it should not influence
the TWAI bus in any way (i.e., should never send a dominant bit). However,
on the targets listed above, the TWAI controller will send dominant bits in an
error frame (i.e., active error frame), even if the controller is set to listen
only mode.

Workaround:

We can force the TWAI controller into the error passive state on startup (by
setting the REC to >= 128). Since the TEC/REC are frozen in listen only mode,
the TWAI controller will remain error passive and only send recessive bits
(i.e., passive error frames), thus will not influence the TWAI bus.

Closes https://github.com/espressif/esp-idf/issues/9157
2023-02-24 19:26:22 +08:00
Armando
ac86ef31c1 g0: resolve MMU_PAGE_SIZE not defined in g0 build issue 2023-02-23 12:35:52 +08:00
Armando
fe0643ca40 esp_adc: support adc calibration on esp32c2 2023-02-20 10:34:34 +08:00
morris
f603aa7d76 Merge branch 'bugfix/i2s_update_regs_before_start_v5.0' into 'release/v5.0'
i2s: fixed rx update stuck bug (v5.0)

See merge request espressif/esp-idf!21776
2023-02-18 15:07:05 +08:00
morris
db8b56c9ac Merge branch 'bugfix/fix_micro_error_SPI_HOST_MAX_v5.0' into 'release/v5.0'
spi: fix micro SPI_HOST_MAX error (v5.0)

See merge request espressif/esp-idf!22147
2023-02-18 15:06:35 +08:00
morris
27ca6549d5 Merge branch 'bugfix/gdma_uhci_id_5.0' into 'release/v5.0'
gdma: correct the dma trigger of UHCI && fix async memcpy conflict with peripheral DMA (v5.0)

See merge request espressif/esp-idf!22006
2023-02-18 15:02:32 +08:00
Darian
6a86124ff5 Merge branch 'feature/usb_host_feature_and_refactor_backports_v5.0' into 'release/v5.0'
USB Host: Backport multiple feature and refactors to v5.0

See merge request espressif/esp-idf!21584
2023-02-17 20:49:46 +08:00
Alexey Lapshin
7db42d3a40 sdio_slave: fix strict aliasing violation for sdio_ringbuf_recv()
This happened because of passing sdio_slave_hal_send_desc_t** to function
sdio_ringbuf_recv() which is declared to have char** as input parameter
2023-02-16 13:48:58 +07:00
Alexey Lapshin
4005886b8a Revert "sdio_slave: workaround the sdio_slave crash issue with release config + GCC11"
This reverts commit 19add3fb05.
2023-02-16 13:48:58 +07:00
jingli
e109c5f998 esp32c2: support rtc time feature depend on rtc memory, since c2 does not have rtc memory 2023-02-16 10:52:59 +08:00
jingli
50feb8f75b soc_caps: remove SOC_GPIO_SUPPORT_SLP_SWITCH
all esp chips support this feature
2023-02-09 17:29:40 +08:00
morris
6b8d4dfe14 gdma: prevent mutli-channels connect to the same peripheral
1. add check in the gdma driver, to prevent multiple channels connecting
   to the same peripheral
2. memory copy DMA ID will occupy the peripheral's DMA ID on some ESP
   targets (e.g. esp32c3/s3). We should search for a free one when
install async memcpy driver.

Closes https://github.com/espressif/esp-idf/issues/10575
2023-02-01 11:06:48 +08:00
wanlei
d51f4583a4 spi: fix micro SPI_HOST_MAX error
Closes https://github.com/espressif/esp-idf/issues/10349
2023-01-29 16:24:59 +08:00
Jiang Jiang Jian
96db537020 Merge branch 'feature/apply_new_version_logic_v5.0' into 'release/v5.0'
all: Apply new version logic (major * 100 + minor) (v5.0)

See merge request espressif/esp-idf!20941
2023-01-12 16:18:23 +08:00
Darian Leung
ff4e4f4c80 hal: Fix USB DWC HAL host channel halt race condition
This commit fixes a race condtion bug with usb_dwc_hal_chan_request_halt()
where a channel the channel is halted if it has just completed a transfer
(i.e., finished processing a QTD with the "HOC" flag set) but the channel is
still pending interrupt handling. In this case...

- usb_dwc_hal_chan_request_halt() would simply read the channel's underlying
register, determine it is not active, not set the "halt_requested" flag, and
simply return true.
- The caller assumes of usb_dwc_hal_chan_request_halt() will assume that the
channel has halted, and may proceed to reconfigure the pipe/port
- When usb_dwc_hal_chan_decode_intr() comes to process the pending interrupt
it will simply return USB_DWC_HAL_CHAN_EVENT_CPLT not knowing a halt has been
requested.

This commit updates the implementation of usb_dwc_hal_chan_request_halt() so
that a halt is properly requested even if the underlying channel has already
physically halted.
2023-01-09 17:55:48 +08:00
Darian Leung
8d85a76a74 usb_host: Rename struct/ll/hal symbols to use "usb_dwc" prefix
Following the file renaming to use the "usb_dwc" prefix, this commit
updates the symbol names of those files to use the "usb_dwc" as well.

Some LL functions were also renamed so that the register name is
mentioned.
2023-01-09 17:48:09 +08:00
Darian Leung
da91dbccfa usb_host: Rename struct/ll/hal files to use "usb_dwc" prefix
This commit updates the DWC_OTG based struct/ll/hal file names to
use the prefix "usb_dwc". This naming scheme reduces ambiguity if
another USB controller implementation is added.

As a result, "hcd.c" has been renamed to "hcd_dwc.c"
2023-01-09 17:47:42 +08:00