Skip to content
Snippets Groups Projects
Commit 131185a2 authored by Damien George's avatar Damien George
Browse files

stmhal: Add MICROPY_HW_USB_OTG_ID_PIN config, set for relevant boards.

This config option is for the USB OTG pin, pin A10.  This is used on
some boards but not others.  Eg PYBv3 uses PA10 for LED(2), so it
shouldn't be used for OTG ID (actually PA10 is multiplexed on this
board, but defaults to LED(2)).

Partially addresses issue #1059.
parent 7630d9ca
No related branches found
No related tags found
No related merge requests found
...@@ -37,3 +37,6 @@ ...@@ -37,3 +37,6 @@
#define MICROPY_HW_SDCARD_DETECT_PIN (pin_A8) #define MICROPY_HW_SDCARD_DETECT_PIN (pin_A8)
#define MICROPY_HW_SDCARD_DETECT_PULL (GPIO_PULLUP) #define MICROPY_HW_SDCARD_DETECT_PULL (GPIO_PULLUP)
#define MICROPY_HW_SDCARD_DETECT_PRESENT (1) #define MICROPY_HW_SDCARD_DETECT_PRESENT (1)
// USB config
#define MICROPY_HW_USB_OTG_ID_PIN (pin_A10)
...@@ -48,7 +48,6 @@ ...@@ -48,7 +48,6 @@
#define STM32F405xx #define STM32F405xx
#define USE_USB_FS #define USE_USB_FS
#define USE_USB_OTG_ID 0
/* ########################## Module Selection ############################## */ /* ########################## Module Selection ############################## */
/** /**
......
...@@ -39,5 +39,6 @@ ...@@ -39,5 +39,6 @@
#define MICROPY_HW_SDCARD_DETECT_PULL (GPIO_PULLUP) #define MICROPY_HW_SDCARD_DETECT_PULL (GPIO_PULLUP)
#define MICROPY_HW_SDCARD_DETECT_PRESENT (GPIO_PIN_RESET) #define MICROPY_HW_SDCARD_DETECT_PRESENT (GPIO_PIN_RESET)
// USB VBUS detect pin // USB config
#define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9) #define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9)
#define MICROPY_HW_USB_OTG_ID_PIN (pin_A10)
...@@ -38,5 +38,6 @@ ...@@ -38,5 +38,6 @@
#define MICROPY_HW_SDCARD_DETECT_PULL (GPIO_PULLUP) #define MICROPY_HW_SDCARD_DETECT_PULL (GPIO_PULLUP)
#define MICROPY_HW_SDCARD_DETECT_PRESENT (GPIO_PIN_RESET) #define MICROPY_HW_SDCARD_DETECT_PRESENT (GPIO_PIN_RESET)
// USB VBUS detect pin // USB config
#define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9) #define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9)
#define MICROPY_HW_USB_OTG_ID_PIN (pin_A10)
...@@ -33,5 +33,6 @@ ...@@ -33,5 +33,6 @@
#define MICROPY_HW_LED_ON(pin) (pin->gpio->BSRRL = pin->pin_mask) #define MICROPY_HW_LED_ON(pin) (pin->gpio->BSRRL = pin->pin_mask)
#define MICROPY_HW_LED_OFF(pin) (pin->gpio->BSRRH = pin->pin_mask) #define MICROPY_HW_LED_OFF(pin) (pin->gpio->BSRRH = pin->pin_mask)
// USB VBUS detect pin // USB config
#define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9) #define MICROPY_HW_USB_VBUS_DETECT_PIN (pin_A9)
#define MICROPY_HW_USB_OTG_ID_PIN (pin_A10)
...@@ -33,10 +33,6 @@ ...@@ -33,10 +33,6 @@
#include "stm32f4xx_hal.h" #include "stm32f4xx_hal.h"
#include "usbd_core.h" #include "usbd_core.h"
#if !defined(USE_USB_OTG_ID)
#define USE_USB_OTG_ID 1
#endif
/* Private typedef -----------------------------------------------------------*/ /* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/ /* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/ /* Private macro -------------------------------------------------------------*/
...@@ -79,7 +75,8 @@ void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd) ...@@ -79,7 +75,8 @@ void HAL_PCD_MspInit(PCD_HandleTypeDef *hpcd)
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
#endif #endif
#if USE_USB_OTG_ID #if defined(MICROPY_HW_USB_OTG_ID_PIN)
// USB ID pin is always A10
GPIO_InitStruct.Pin = GPIO_PIN_10; GPIO_InitStruct.Pin = GPIO_PIN_10;
GPIO_InitStruct.Mode = GPIO_MODE_AF_OD; GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
GPIO_InitStruct.Pull = GPIO_PULLUP; GPIO_InitStruct.Pull = GPIO_PULLUP;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment