diff options
| author | Ha Thach <[email protected]> | 2022-11-06 16:02:41 +0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2022-11-06 16:02:41 +0700 |
| commit | a97f6a4945739a391eea843de80548bc34d24da2 (patch) | |
| tree | ec452eed3ee68effd60ea7bfc5eb988b2b70eaec | |
| parent | 9e9f331503fa99900829e692cf65788eb1872ea7 (diff) | |
| parent | a061bc41733047468b624fb33dc0811d1eb984e4 (diff) | |
Merge pull request #1723 from hathach/fix-rp2040-minor
Fix rp2040 minor
| -rw-r--r-- | hw/bsp/rp2040/board.h | 12 | ||||
| -rw-r--r-- | hw/bsp/rp2040/family.c | 11 | ||||
| -rw-r--r-- | hw/bsp/rp2040/family.cmake | 2 | ||||
| m--------- | hw/mcu/raspberry_pi/Pico-PIO-USB | 0 |
4 files changed, 20 insertions, 5 deletions
diff --git a/hw/bsp/rp2040/board.h b/hw/bsp/rp2040/board.h index 237f29dc2..56b8fec84 100644 --- a/hw/bsp/rp2040/board.h +++ b/hw/bsp/rp2040/board.h @@ -46,6 +46,18 @@ #define UART_RX_PIN PICO_DEFAULT_UART_RX_PIN #endif +// PIO_USB_DP_PIN_DEFAULT is 0, which conflict with UART, change to other pin +#ifndef PIO_USB_DP_PIN +#define PIO_USB_DP_PIN 20 +#endif + +// VBUS enable pin and its active state +// #define PIO_USB_VBUSEN_PIN 22 + +#ifndef PIO_USB_VBUSEN_STATE +#define PIO_USB_VBUSEN_STATE 1 +#endif + #ifdef __cplusplus } #endif diff --git a/hw/bsp/rp2040/family.c b/hw/bsp/rp2040/family.c index 90e2192c0..ee5a73ff6 100644 --- a/hw/bsp/rp2040/family.c +++ b/hw/bsp/rp2040/family.c @@ -39,9 +39,6 @@ #include "pio_usb.h" #endif -// PIO_USB_DP_PIN_DEFAULT is 0, which conflict with UART, change to 2 -#define PICO_PIO_USB_PIN_DP 2 - #ifdef BUTTON_BOOTSEL // This example blinks the Picoboard LED when the BOOTSEL button is pressed. // @@ -138,10 +135,16 @@ void board_init(void) // Set the system clock to a multiple of 120mhz for bitbanging USB with pico-usb set_sys_clock_khz(120000, true); +#ifdef PIO_USB_VBUSEN_PIN + gpio_init(PIO_USB_VBUSEN_PIN); + gpio_set_dir(PIO_USB_VBUSEN_PIN, GPIO_OUT); + gpio_put(PIO_USB_VBUSEN_PIN, PIO_USB_VBUSEN_STATE); +#endif + // rp2040 use pico-pio-usb for host tuh_configure() can be used to passed pio configuration to the host stack // Note: tuh_configure() must be called before tuh_init() pio_usb_configuration_t pio_cfg = PIO_USB_DEFAULT_CONFIG; - pio_cfg.pin_dp = PICO_PIO_USB_PIN_DP; + pio_cfg.pin_dp = PIO_USB_DP_PIN; tuh_configure(BOARD_TUH_RHPORT, TUH_CFGID_RPI_PIO_USB_CONFIGURATION, &pio_cfg); #endif diff --git a/hw/bsp/rp2040/family.cmake b/hw/bsp/rp2040/family.cmake index 31e97d9af..5dba9dc39 100644 --- a/hw/bsp/rp2040/family.cmake +++ b/hw/bsp/rp2040/family.cmake @@ -55,7 +55,7 @@ if (NOT TARGET _rp2040_family_inclusion_marker) target_compile_definitions(tinyusb_common_base INTERFACE CFG_TUSB_MCU=OPT_MCU_RP2040 CFG_TUSB_OS=OPT_OS_PICO - CFG_TUSB_DEBUG=${TINYUSB_DEBUG_LEVEL} + #CFG_TUSB_DEBUG=${TINYUSB_DEBUG_LEVEL} ) #------------------------------------ diff --git a/hw/mcu/raspberry_pi/Pico-PIO-USB b/hw/mcu/raspberry_pi/Pico-PIO-USB -Subproject 92bd3b4c3ad2fce36166e4a357749b6d4fe9013 +Subproject f78dc9b2c7fa9b82587e43babdc1d21294a3298 |
