esp32: Fix ESP32-C3 USB serial/jtag peripheral pre-IDF 5.1.
Regression in 0a11832cd in IDF 5.0.x where macro CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED is not defined. With this patch, ESP32-S3 still USB Serial/JTAG incorrectly (now on all ESP-IDF versions). Closes #15701 This work was funded through GitHub Sponsors. Signed-off-by: Angus Gratton <angus@redyak.com.au>
This commit is contained in:
parent
1897fe6227
commit
6ad6297ef7
@ -159,7 +159,7 @@ static mp_obj_t machine_pin_obj_init_helper(const machine_pin_obj_t *self, size_
|
||||
}
|
||||
}
|
||||
|
||||
#if CONFIG_IDF_TARGET_ESP32C3 && CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if CONFIG_IDF_TARGET_ESP32C3 && MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
if (index == 18 || index == 19) {
|
||||
CLEAR_PERI_REG_MASK(USB_SERIAL_JTAG_CONF0_REG, USB_SERIAL_JTAG_USB_PAD_ENABLE);
|
||||
}
|
||||
|
||||
@ -87,7 +87,7 @@
|
||||
#define MICROPY_HW_ENABLE_GPIO11 (1)
|
||||
#define MICROPY_HW_ENABLE_GPIO12 (1)
|
||||
#define MICROPY_HW_ENABLE_GPIO13 (1)
|
||||
#if !CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if !MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
#define MICROPY_HW_ENABLE_GPIO18 (1)
|
||||
#define MICROPY_HW_ENABLE_GPIO19 (1)
|
||||
#endif
|
||||
|
||||
@ -99,7 +99,7 @@ void mp_task(void *pvParameter) {
|
||||
#if MICROPY_PY_THREAD
|
||||
mp_thread_init(pxTaskGetStackStart(NULL), MICROPY_TASK_STACK_SIZE / sizeof(uintptr_t));
|
||||
#endif
|
||||
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
usb_serial_jtag_init();
|
||||
#elif CONFIG_USB_OTG_SUPPORTED
|
||||
usb_init();
|
||||
|
||||
@ -260,6 +260,11 @@ typedef long mp_off_t;
|
||||
// board specifics
|
||||
#define MICROPY_PY_SYS_PLATFORM "esp32"
|
||||
|
||||
// Enable stdio over USB Serial/JTAG peripheral
|
||||
#ifndef MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
#define MICROPY_HW_ESP_USB_SERIAL_JTAG (SOC_USB_SERIAL_JTAG_SUPPORTED)
|
||||
#endif
|
||||
|
||||
// ESP32-S3 extended IO for 47 & 48
|
||||
#ifndef MICROPY_HW_ESP32S3_EXTENDED_IO
|
||||
#define MICROPY_HW_ESP32S3_EXTENDED_IO (1)
|
||||
|
||||
@ -104,7 +104,7 @@ void check_esp_err_(esp_err_t code, const char *func, const int line, const char
|
||||
|
||||
uintptr_t mp_hal_stdio_poll(uintptr_t poll_flags) {
|
||||
uintptr_t ret = 0;
|
||||
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
usb_serial_jtag_poll_rx();
|
||||
#endif
|
||||
if ((poll_flags & MP_STREAM_POLL_RD) && stdin_ringbuf.iget != stdin_ringbuf.iput) {
|
||||
@ -118,7 +118,7 @@ uintptr_t mp_hal_stdio_poll(uintptr_t poll_flags) {
|
||||
|
||||
int mp_hal_stdin_rx_chr(void) {
|
||||
for (;;) {
|
||||
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
usb_serial_jtag_poll_rx();
|
||||
#endif
|
||||
int c = ringbuf_get(&stdin_ringbuf);
|
||||
@ -143,7 +143,7 @@ mp_uint_t mp_hal_stdout_tx_strn(const char *str, size_t len) {
|
||||
if (release_gil) {
|
||||
MP_THREAD_GIL_EXIT();
|
||||
}
|
||||
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
usb_serial_jtag_tx_strn(str, len);
|
||||
did_write = true;
|
||||
#elif CONFIG_USB_OTG_SUPPORTED
|
||||
|
||||
@ -30,7 +30,7 @@
|
||||
|
||||
// Whether to enable the REPL on a UART.
|
||||
#ifndef MICROPY_HW_ENABLE_UART_REPL
|
||||
#define MICROPY_HW_ENABLE_UART_REPL (!CONFIG_USB_OTG_SUPPORTED && !CONFIG_ESP_CONSOLE_USB_CDC && !CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED)
|
||||
#define MICROPY_HW_ENABLE_UART_REPL (!CONFIG_USB_OTG_SUPPORTED && !CONFIG_ESP_CONSOLE_USB_CDC && !MICROPY_HW_ESP_USB_SERIAL_JTAG)
|
||||
#endif
|
||||
|
||||
#if MICROPY_HW_ENABLE_UART_REPL
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
#include "py/mphal.h"
|
||||
#include "usb.h"
|
||||
|
||||
#if CONFIG_USB_OTG_SUPPORTED && !CONFIG_ESP_CONSOLE_USB_CDC && !CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if CONFIG_USB_OTG_SUPPORTED && !CONFIG_ESP_CONSOLE_USB_CDC && !MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
|
||||
#include "esp_timer.h"
|
||||
#ifndef NO_QSTR
|
||||
@ -100,4 +100,4 @@ void usb_tx_strn(const char *str, size_t len) {
|
||||
}
|
||||
}
|
||||
|
||||
#endif // CONFIG_USB_OTG_SUPPORTED && !CONFIG_ESP_CONSOLE_USB_CDC && !CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#endif // CONFIG_USB_OTG_SUPPORTED && !CONFIG_ESP_CONSOLE_USB_CDC && !MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
#include "py/mphal.h"
|
||||
#include "usb_serial_jtag.h"
|
||||
|
||||
#if CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#if MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
|
||||
#include "hal/usb_serial_jtag_ll.h"
|
||||
#include "esp_intr_alloc.h"
|
||||
@ -117,4 +117,4 @@ void usb_serial_jtag_tx_strn(const char *str, size_t len) {
|
||||
}
|
||||
}
|
||||
|
||||
#endif // CONFIG_ESP_CONSOLE_USB_SERIAL_JTAG_ENABLED
|
||||
#endif // MICROPY_HW_ESP_USB_SERIAL_JTAG
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user