DSTATUS disk_initialize ( BYTE pdrv /* Physical drive nmuber to identify the drive */ ) { DSTATUS stat; switch (pdrv) { #if HAL_USE_MMC_SPI case MMC: stat = 0; /* It is initialized externally, just reads the status.*/ if (blkGetDriverState(&MMCD1) != BLK_READY) stat |= STA_NOINIT; if (mmcIsWriteProtected(&MMCD1)) stat |= STA_PROTECT; return stat; #else case SDC: stat = 0; /* It is initialized externally, just reads the status.*/ if (blkGetDriverState(&SDCD1) != BLK_READY) stat |= STA_NOINIT; if (sdcIsWriteProtected(&SDCD1)) stat |= STA_PROTECT; return stat; #endif } return STA_NOINIT; }
DSTATUS disk_status ( BYTE drv /* Physical drive nmuber (0..) */ ) { DSTATUS stat; switch (drv) { #if HAL_USE_MMC_SPI case MMC: stat = 0; /* It is initialized externally, just reads the status.*/ if (mmcGetDriverState(&MMCD1) != MMC_READY) stat |= STA_NOINIT; if (mmcIsWriteProtected(&MMCD1)) stat |= STA_PROTECT; return stat; #else case SDC: stat = 0; /* It is initialized externally, just reads the status.*/ if (sdcGetDriverState(&SDCD1) != SDC_ACTIVE) stat |= STA_NOINIT; if (sdcIsWriteProtected(&SDCD1)) stat |= STA_PROTECT; return stat; #endif } return STA_NODISK; }