hw/sd/sdcard: Add spi_cmd_CRC_ON_OFF handler (CMD59)

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Tested-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Message-Id: <20240628070216.92609-68-philmd@linaro.org>
This commit is contained in:
Philippe Mathieu-Daudé 2024-06-12 23:39:08 +02:00
parent 8aaae7fd19
commit 95e9305bf9
1 changed files with 7 additions and 3 deletions

View File

@ -1647,6 +1647,12 @@ static sd_rsp_type_t spi_cmd_READ_OCR(SDState *sd, SDRequest req)
return sd_r3; return sd_r3;
} }
/* CMD59 */
static sd_rsp_type_t spi_cmd_CRC_ON_OFF(SDState *sd, SDRequest req)
{
return sd_r1;
}
static sd_rsp_type_t sd_normal_command(SDState *sd, SDRequest req) static sd_rsp_type_t sd_normal_command(SDState *sd, SDRequest req)
{ {
uint64_t addr; uint64_t addr;
@ -1750,9 +1756,6 @@ static sd_rsp_type_t sd_normal_command(SDState *sd, SDRequest req)
} }
break; break;
case 59: /* CMD59: CRC_ON_OFF (SPI) */
return sd_r1;
default: default:
qemu_log_mask(LOG_GUEST_ERROR, "SD: Unknown CMD%i\n", req.cmd); qemu_log_mask(LOG_GUEST_ERROR, "SD: Unknown CMD%i\n", req.cmd);
return sd_illegal; return sd_illegal;
@ -2330,6 +2333,7 @@ static const SDProto sd_proto_spi = {
[55] = {8, sd_spi, "APP_CMD", sd_cmd_APP_CMD}, [55] = {8, sd_spi, "APP_CMD", sd_cmd_APP_CMD},
[57] = {10, sd_spi, "DIRECT_SECURE_WRITE", sd_cmd_optional}, [57] = {10, sd_spi, "DIRECT_SECURE_WRITE", sd_cmd_optional},
[58] = {0, sd_spi, "READ_OCR", spi_cmd_READ_OCR}, [58] = {0, sd_spi, "READ_OCR", spi_cmd_READ_OCR},
[59] = {0, sd_spi, "CRC_ON_OFF", spi_cmd_CRC_ON_OFF},
}, },
.acmd = { .acmd = {
[41] = {8, sd_spi, "SEND_OP_COND", spi_cmd_SEND_OP_COND}, [41] = {8, sd_spi, "SEND_OP_COND", spi_cmd_SEND_OP_COND},