diff options
Diffstat (limited to 'os/hal/src/hal_sdc.c')
-rw-r--r-- | os/hal/src/hal_sdc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/os/hal/src/hal_sdc.c b/os/hal/src/hal_sdc.c index 654f179e4..80cbca3bf 100644 --- a/os/hal/src/hal_sdc.c +++ b/os/hal/src/hal_sdc.c @@ -594,10 +594,14 @@ void sdcStop(SDCDriver *sdcp) { osalDbgCheck(sdcp != NULL);
osalSysLock();
+
osalDbgAssert((sdcp->state == BLK_STOP) || (sdcp->state == BLK_ACTIVE),
"invalid state");
+
sdc_lld_stop(sdcp);
- sdcp->state = BLK_STOP;
+ sdcp->config = NULL;
+ sdcp->state = BLK_STOP;
+
osalSysUnlock();
}
|