Commit Graph

828 Commits

Author SHA1 Message Date
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
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
KonstantinKondrashov
823024c10c all: Apply new version logic (major * 100 + minor) 2023-01-06 02:00:52 +08:00
laokaiyao
d93b7246b0 i2s: fixed rx update stuck bug 2022-12-23 10:45:51 +08:00
Jiang Jiang Jian
9fa8329148 Merge branch 'feature/emac_buff_v5.0' into 'release/v5.0'
esp_eth: receive buffer allocation optimization (v5.0)

See merge request espressif/esp-idf!21547
2022-12-21 23:35:30 +08:00
Omar Chebib
0714847552 C/Cxx: unify static assertions with the macro ESP_STATIC_ASSERT
Closes https://github.com/espressif/esp-idf/issues/9938
2022-12-19 15:06:15 +01:00
Island
eb08eb6578 Merge branch 'feature/esp32c2_optimize_npl_element_count_v5.0' into 'release/v5.0'
Feature/esp32c2 optimize npl element count v5.0

See merge request espressif/esp-idf!21563
2022-12-14 15:13:42 +08:00
zwl
e8555efe5b Renamed BAH 2022-12-13 18:05:00 +08:00
morris
a3b040e991 Merge branch 'feature/_spi_slave_reset_trans_queue_api_v5.0' into 'release/v5.0'
spi: limit esp32 dma workaround only on esp32(v5.0)

See merge request espressif/esp-idf!21381
2022-12-13 16:29:41 +08:00
Ondrej
df76911671 esp_eth: receive buffer allocation optimization
Receive buffers are allocated with a size equal to actual received frame size
2022-12-09 11:43:19 +00:00
Simon Arlott
5ba75187b0 hal/uart_ll.h: Fix compile with C++
I'm including <hal/uart_ll.h> in my C++ application because I need to
bypass the uart driver. The inline functions in the header file fail to
compile as C++.

All of the enums need explicit casts for conversion to/from integers.

Merges https://github.com/espressif/esp-idf/pull/10106
2022-12-06 10:13:03 +08:00
Fu Hanxi
6688ba7b8e Merge branch 'ci/upload_elf_map_to_minio_v5.0' into 'release/v5.0'
ci: upload elf map file to s3 server to reduce artifacts size (v5.0)

See merge request espressif/esp-idf!19902
2022-12-05 18:17:59 +08:00
Jiang Jiang Jian
77333d2d64 Merge branch 'bugfix/fix_current_leakage_when_hold_digital_io_during_deep_sleep_backport_v5.0' into 'release/v5.0'
esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep(backport v5.0)

See merge request espressif/esp-idf!20806
2022-12-05 14:00:59 +08:00
wanlei
ec7265dca4 spi: limit esp32 dma workaround only on esp32 2022-12-05 12:10:45 +08:00
Ivan Grokhotkov
864ca34199 Merge branch 'bugfix/i2c_func_iram_v5.0' into 'release/v5.0'
I2C: put some interrupt used functions into IRAM( v5.0)

See merge request espressif/esp-idf!21404
2022-12-05 10:31:33 +08:00
Fu Hanxi
e1d2635a83 adc: skip linking static functions when not COMPILER_OPTIMIZATION_DEFAULT 2022-12-02 15:42:40 +00:00
jingli
99c8c0c645 hal/gpio_ll: fix digital gpio can not enable hold during deep sleep when force_unhold set(32/s2/s3) 2022-12-02 12:24:52 +00:00
jingli
4223427127 hal/gpio_ll: fix digital gpio can not disable hold during deep sleep 2022-12-02 12:24:52 +00:00
jingli
21c9ec5eee esp_hw_support/sleep: fix current leakage when hold digital io during deep sleep 2022-12-02 12:24:52 +00:00
Cao Sen Miao
1bd4c6a8cf I2C: put some interrupt used functions into IRAM,
closes https://github.com/espressif/esp-idf/issues/10079
2022-12-02 15:13:51 +08:00
jingli
18fef64089 wifi/bt: fix part of modem module not reset when power up 2022-12-01 21:08:57 +08:00
Ivan Grokhotkov
7f5ecbe533 Merge branch 'bugfix/wafer_version_minor_s3_v5.0' into 'release/v5.0'
esp32s3: fixed bug chip v0.0 detected as vX.8 (v5.0)

See merge request espressif/esp-idf!21351
2022-12-01 20:37:52 +08:00
Sachin Parekh
af773c047a
esp32s3/memprot: Fix DRAM fault address calculation 2022-12-01 09:19:08 +05:30
Sachin Parekh
c83eb9dfc4
esp32s3/memprot: Fix SRAM region high addresses 2022-12-01 09:19:08 +05:30
Sachin Parekh
634c2c8bf1
esp32s3/memprot: Set permission for Icache region 2022-12-01 09:19:07 +05:30
Michael (XIAO Xufeng)
277e4d5471 esp32s3: fixed bug chip v0.0 detected as vX.Y
A typical value is 2.8.

Previous commit 32ef2b321a doesn't fix the issue cleanly. The MSB of wafer_minor also has this problem.
2022-12-01 01:56:53 +08:00
laokaiyao
592a51ae96 i2s: fixed typo 'philip'
Closes: https://github.com/espressif/esp-idf/issues/10197
2022-11-22 15:59:51 +08:00
Michael (XIAO Xufeng)
5b0448eaed esp32s3: fixed bug chip v0.0 detected as vX.0
A typical value is 2.0.
2022-11-09 18:21:43 +08:00
liuning
eb61f5835a esp_wifi: add protection for mac reset (backport 5.0) 2022-10-31 17:55:03 +08:00
morris
20949d444f Merge branch 'bugfix/rtc_function_needs_disable_usj_pads_esp32s3_v5.0' into 'release/v5.0'
rtcio: Disable USB Serial JTAG pad when setting pins 19 and 20 as RTC function on ESP32S3 (backport v5.0)

See merge request espressif/esp-idf!20550
2022-10-31 11:57:07 +08:00