aboutsummaryrefslogtreecommitdiff
path: root/hw/sd
diff options
context:
space:
mode:
authorPhilippe Mathieu-Daudé <f4bug@amsat.org>2022-04-17 19:43:58 +0200
committerCédric Le Goater <clg@kaod.org>2023-09-01 11:40:04 +0200
commit24965082a777f8041890c443230f3d0ae555d764 (patch)
treec44f5924937d194488e564651ee7aee8cafa5fca /hw/sd
parent8285490b2b2a2c064e2e85df4b73b58194ce0445 (diff)
hw/sd/sdcard: Return ILLEGAL for CMD19/CMD23 prior SD spec v3.01
CMD19 (SEND_TUNING_BLOCK) and CMD23 (SET_BLOCK_COUNT) were added in the Physical Layer Simplified Specification v3.01. When earlier spec version is requested, we should return ILLEGAL. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Message-Id: <20220509141320.98374-1-philippe.mathieu.daude@gmail.com> Signed-off-by: Cédric Le Goater <clg@kaod.org>
Diffstat (limited to 'hw/sd')
-rw-r--r--hw/sd/sd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/sd/sd.c b/hw/sd/sd.c
index 77a717d355..0be9ee965a 100644
--- a/hw/sd/sd.c
+++ b/hw/sd/sd.c
@@ -1263,7 +1263,7 @@ static sd_rsp_type_t sd_normal_command(SDState *sd, SDRequest req)
case 19: /* CMD19: SEND_TUNING_BLOCK (SD) */
if (sd->spec_version < SD_PHY_SPECv3_01_VERS) {
- break;
+ goto bad_cmd;
}
if (sd->state == sd_transfer_state) {
sd->state = sd_sendingdata_state;
@@ -1274,7 +1274,7 @@ static sd_rsp_type_t sd_normal_command(SDState *sd, SDRequest req)
case 23: /* CMD23: SET_BLOCK_COUNT */
if (sd->spec_version < SD_PHY_SPECv3_01_VERS) {
- break;
+ goto bad_cmd;
}
switch (sd->state) {
case sd_transfer_state: