usbpd_stm32g4: Configure UCPD before disabling the dead battery mode (#21430)
This commit is contained in:
parent
000ee31e2c
commit
b708658e2e
|
@ -22,8 +22,6 @@
|
||||||
|
|
||||||
// Initialises the USBPD subsystem
|
// Initialises the USBPD subsystem
|
||||||
__attribute__((weak)) void usbpd_init(void) {
|
__attribute__((weak)) void usbpd_init(void) {
|
||||||
// Disable dead-battery signals
|
|
||||||
PWR->CR3 |= PWR_CR3_UCPD_DBDIS;
|
|
||||||
// Enable the clock for the UCPD1 peripheral
|
// Enable the clock for the UCPD1 peripheral
|
||||||
RCC->APB1ENR2 |= RCC_APB1ENR2_UCPD1EN;
|
RCC->APB1ENR2 |= RCC_APB1ENR2_UCPD1EN;
|
||||||
|
|
||||||
|
@ -46,6 +44,11 @@ __attribute__((weak)) void usbpd_init(void) {
|
||||||
CR |= UCPD_CR_ANAMODE | UCPD_CR_CCENABLE_Msk;
|
CR |= UCPD_CR_ANAMODE | UCPD_CR_CCENABLE_Msk;
|
||||||
// Apply the changes
|
// Apply the changes
|
||||||
UCPD1->CR = CR;
|
UCPD1->CR = CR;
|
||||||
|
|
||||||
|
// Disable dead-battery signals only after UCPD1 is configured to ensure
|
||||||
|
// that the transition does not go through any intermediate state without
|
||||||
|
// any pull-down resistance.
|
||||||
|
PWR->CR3 |= PWR_CR3_UCPD_DBDIS;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Gets the current state of the USBPD allowance
|
// Gets the current state of the USBPD allowance
|
||||||
|
|
Loading…
Reference in New Issue