I use File System component (ver. 6.9.0) and MCI CMSIS driver (ver. 2.02). My MCU is STM32F446 and eMMC - MTFC2GMDEA-0M WT. I'd like to have 48 MHz bus speed, so I've defined MemoryCard_Bus_Mode_HS_Enable and checked that GetCapabilities() returns MCI_BUS_MODE_HS = 1. But when I call fmount the Middleware configures bus speed to 25 MHz via the MCI driver (it sets ARM_MCI_BUS_SPEED_MODE to ARM_MCI_BUS_DEFAULT_SPEED and ARM_MCI_BUS_SPEED to 25MHz). Is there any way to get 48 MHz? I'm guessing it has to be done automatically, but is it safe to call MCI->Control after the fmount call to set 48 MHz manually?
Thanks for your reply.
I see CMD16->CMD6->CMD13 and there are no errors. I tried to configure bus speed to 48 MHz manually after the fmount call and this works fine.
Regards the other commands. Everything executes with ARM_MCI_EVENT_COMMAND_COMPLETE except sequence at the start: CMD0 -> ARM_MCI_EVENT_COMMAND_COMPLETE CMD8 -> ARM_MCI_EVENT_COMMAND_TIMEOUT CMD55 -> ARM_MCI_EVENT_COMMAND_TIMEOUT CMD1 -> SDIO_ICR_CCRCFAILC, ARM_MCI_EVENT_COMMAND_COMPLETE CMD1 -> SDIO_ICR_CCRCFAILC, ARM_MCI_EVENT_COMMAND_COMPLETE
This is ok, as it is part of SD/eMMC device detection. FileSystem will first attempt to detect SD card and if this fails it continues with eMMC detection.