aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/src/hal_sdc.c
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/src/hal_sdc.c')
-rw-r--r--os/hal/src/hal_sdc.c6
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();
}