Commit Graph

32 Commits

Author SHA1 Message Date
Song Ruo Jing
e801bde973 fix(uart): Avoid division by zero error when calling uart_get_baudrate
If uart_driver_install is not called before uart_get_baudrate,
the UART port may not be ready. In such cases, the register values
cannot be read out, leading to a division by zero error in uart_ll_get_baudrate.
This commit adds a check to ensure the UART port is enabled before
attempting to read its registers.

Closes https://github.com/espressif/esp-idf/issues/17513
2026-02-25 11:31:44 +08:00
Song Ruo Jing
b1bb83df2b fix(uart): tx write bytes fails to use non-default tx fifo empty threshold
Users may see tx write bytes fails to feed data into tx fifo in time
even if the tx fifo empty threshold has been set to a large value.
2026-02-25 11:31:44 +08:00
Chen Chen
851ffae394 fix(intr_alloc): Fix ISR allocate methods in several drivers 2025-12-25 15:02:16 +08:00
Song Ruo Jing
e1eceef90d fix(uart): fix some uart port generate a RX BRK_DET intr on reset issue
Issue saw on S3 UART2 and some LP_UART ports
2025-11-24 11:38:07 +08:00
Song Ruo Jing
0d7c665033 fix(uart): correct uart_get_tx_buffer_free_size calculation
Modified a bit on the TX ring buffer push size logic

 Closes https://github.com/espressif/esp-idf/issues/15859
2025-11-24 11:37:45 +08:00
Song Ruo Jing
c2bc31a98b fix(uart): fix release pin logic if switching only one pin 2025-11-22 17:45:43 +08:00
Song Ruo Jing
bb52e53ede fix(uart): eliminate garbled data on UART TX/RX line in sleep 2025-05-27 14:15:33 +08:00
Song Ruo Jing
60f5828a4a feat(uart): add pin release process to uart driver 2025-05-27 14:15:29 +08:00
Song Ruo Jing
9ed617fb17 fix(gpio): removed unnecessary step when routing input signal to a pin 2025-05-20 15:30:26 +08:00
Song Ruo Jing
e774dbfd0f fix(uart): LP UART does not have the pre-divider for its clock source
Closes https://github.com/espressif/esp-idf/issues/15427
2025-03-10 15:29:09 +08:00
Song Ruo Jing
131330034a fix(uart): allow same pin for tx and rx in uart_set_pin
Closes https://github.com/espressif/esp-idf/issues/14787
2025-01-08 20:38:11 +08:00
Song Ruo Jing
f693485ad0 fix(uart): fix race condition with the use of UART_SELECT_READ_NOTIF
UART_SELECT_READ_NOTIF needs to be sent after received data got processed
to avoid the potential race condition
2025-01-08 19:44:36 +08:00
Song Ruo Jing
cfcedfe42d feat(uart): support uart sleep retention on C5/C61 2024-12-03 17:17:14 +08:00
Li Shuai
bde6b9141f change(esp_hw_support): update some modules sleep retention init dependency bitmap 2024-11-18 17:46:40 +08:00
Song Ruo Jing
dc15243a64 refactor(uart): minor update on uart retention feature 2024-10-22 17:43:28 +08:00
wuzhenghui
13e42707a0 feat(esp_hw_support): add clk tree source gate management api 2024-09-11 10:53:01 +08:00
wuzhenghui
05e74480f5 feat(esp_system): gate some clock by default to optmize esp32p4 active power 2024-09-11 10:53:00 +08:00
Song Ruo Jing
2f92d863d8 fix(uart): eliminated potential glitch on TX at setup if TX signal is inversed
Closes https://github.com/espressif/esp-idf/issues/14285
2024-08-15 16:36:18 +08:00
Song Ruo Jing
f24d529c70 fix(uart): fix uart_config_t structure size difference in C and C++ 2024-07-08 20:17:27 +08:00
gaoxu
0d35631ec1 feat(rtcio): support RTCIO on ESP32C5 2024-06-28 22:01:55 +08:00
Michael (XIAO Xufeng)
9468bc3784 Merge branch 'fix/check_ring_buffer_before_fill' into 'master'
fix(uart): remove unnecessary wait when sending message to ring buffer

See merge request espressif/esp-idf!30839
2024-06-04 10:47:00 +08:00
Song Ruo Jing
dca7c286d0 feat(uart): support uart module sleep retention on c6/h2/p4 2024-06-03 12:40:43 +08:00
Xu Si Yu
95035c53df fix(uart): remove unnecessary wait when sending message to ring buffer 2024-05-28 14:37:11 +08:00
Song Ruo Jing
8c603c24cd fix(uart): re-initialize uart_event fields to some certain values for every loop
Although uart_event.size and uart_event.timeout_flags fields are
meaningless to events other than UART_DATA, fix the values to 0 could
help reduce confusion.

Closes https://github.com/espressif/esp-idf/issues/12299
2024-04-24 19:19:04 +08:00
LiPeng
235bb6f294 fix(uart): Fixed issue that TX be blocked by auto-lightsleep 2024-04-05 03:01:24 +08:00
morris
c0289ee6eb fix(drivers): fix typos found by codespell
codespell components/esp_driver*
2024-03-28 10:01:27 +08:00
Song Ruo Jing
90bf2772ac fix(uart): Fix mismatch wakeup rising edges required with the threshold configured
Closes https://github.com/espressif/esp-idf/issues/12586
2024-03-15 16:58:33 +08:00
gaoxu
f9109beda2 feat(uart): add HP/LP uart support on ESP32C5 2024-02-29 14:12:51 +08:00
Song Ruo Jing
5276cd4f1d refactor(uart): add support to be able to test LP_UART port
Increase LP_UART_EMPTY_THRESH_DEFAULT value to 4. The original value
could cause the FIFO become empty before filling next data into the FIFO
when the buadrate is high. TX_DONE interrupt would raise before actual
transmission complete in such case.
2024-02-07 14:37:48 +08:00
laokaiyao
96a4ead083 feat(esp32c5): support to run hello world on esp32c5 beta3 2024-01-09 13:11:11 +08:00
Song Ruo Jing
ef281dff5a fix(esp_driver_uart): always use heap_caps_malloc to malloc memory base on flags 2023-12-15 17:03:58 +08:00
Song Ruo Jing
6ad80f0332 refactor(uart): make uart driver as component, and fix astyle 2023-12-15 17:03:51 +08:00