stm32/sdio: Don't explicitly disable DMA2 on deinit of SDIO.
Because DMA2 may be in use by other peripherals, eg SPI1. On PYBD-SF6 it's possible to trigger a bug in the existing code by turning on WLAN and connecting to an AP, pinging the IP address from a PC and running the following code on the PYBD: def spi_test(s): while 1: s.write('test') s.read(4) spi_test(machine.SPI(1,100000000)) This will eventually fail with `OSError: [Errno 110] ETIMEDOUT` because DMA2 was turned off by the CYW43 driver during the SPI1 transfer. This commit fixes the bug by removing the code that explicitly disables DMA2. Instead DMA2 will be automatically disabled after an inactivity timeout, see commit a96afae90f6e5d693173382561d06e583b0b5fa5 Signed-off-by: Damien George <damien@micropython.org>
This commit is contained in:
parent
e83aa252f7
commit
dfa75f33a5
@ -134,9 +134,6 @@ void sdio_init(uint32_t irq_pri) {
|
||||
|
||||
void sdio_deinit(void) {
|
||||
SDMMC_CLK_DISABLE();
|
||||
#if defined(STM32F7)
|
||||
__HAL_RCC_DMA2_CLK_DISABLE();
|
||||
#endif
|
||||
}
|
||||
|
||||
void sdio_reenable(void) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user