[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH 3/8] sdcard: Add a 'spec_version' pro
From: |
Alistair Francis |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH 3/8] sdcard: Add a 'spec_version' property |
Date: |
Mon, 4 Jun 2018 11:21:58 -0700 |
On Sat, Jun 2, 2018 at 5:08 PM, Philippe Mathieu-Daudé <address@hidden> wrote:
> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Reviewed-by: Alistair Francis <address@hidden>
Alistair
> ---
> include/hw/sd/sd.h | 4 ++++
> hw/sd/sd.c | 11 +++++++++++
> 2 files changed, 15 insertions(+)
>
> diff --git a/include/hw/sd/sd.h b/include/hw/sd/sd.h
> index 9bdb3c9285..49f22b0b89 100644
> --- a/include/hw/sd/sd.h
> +++ b/include/hw/sd/sd.h
> @@ -54,6 +54,10 @@
> #define APP_CMD (1 << 5)
> #define AKE_SEQ_ERROR (1 << 3)
>
> +enum SDPhySpecificationVersion {
> + SD_PHY_SPECv1_10_VERS = 1,
> +};
> +
> typedef enum {
> SD_VOLTAGE_0_4V = 400, /* currently not supported */
> SD_VOLTAGE_1_8V = 1800,
> diff --git a/hw/sd/sd.c b/hw/sd/sd.c
> index 80e70dd93e..5ddd211114 100644
> --- a/hw/sd/sd.c
> +++ b/hw/sd/sd.c
> @@ -91,6 +91,7 @@ struct SDState {
> uint8_t sd_status[64];
>
> /* Configurable properties */
> + uint8_t spec_version;
> BlockBackend *blk;
> bool spi;
>
> @@ -2058,6 +2059,14 @@ static void sd_realize(DeviceState *dev, Error **errp)
>
> sd->proto_name = sd->spi ? "SPI" : "SD";
>
> + switch (sd->spec_version) {
> + case SD_PHY_SPECv1_10_VERS:
> + break;
> + default:
> + error_setg(errp, "Invalid SD card Spec version: %u",
> sd->spec_version);
> + return;
> + }
> +
> if (sd->blk && blk_is_read_only(sd->blk)) {
> error_setg(errp, "Cannot use read-only drive as SD card");
> return;
> @@ -2074,6 +2083,8 @@ static void sd_realize(DeviceState *dev, Error **errp)
> }
>
> static Property sd_properties[] = {
> + DEFINE_PROP_UINT8("spec_version", SDState,
> + spec_version, SD_PHY_SPECv1_10_VERS),
> DEFINE_PROP_DRIVE("drive", SDState, blk),
> /* We do not model the chip select pin, so allow the board to select
> * whether card should be in SSI or MMC/SD mode. It is also up to the
> --
> 2.17.1
>
>
- [Qemu-arm] [PATCH 0/8] sdcard: cleanup the SD_SPEC version, Philippe Mathieu-Daudé, 2018/06/02
- [Qemu-arm] [PATCH 2/8] sdcard: Allow commands valid in SPI mode, Philippe Mathieu-Daudé, 2018/06/02
- [Qemu-arm] [PATCH 3/8] sdcard: Add a 'spec_version' property, Philippe Mathieu-Daudé, 2018/06/02
- Re: [Qemu-arm] [Qemu-devel] [PATCH 3/8] sdcard: Add a 'spec_version' property,
Alistair Francis <=
- [Qemu-arm] [PATCH 4/8] sdcard: Set Spec v2.00 as default, Philippe Mathieu-Daudé, 2018/06/02
- [Qemu-arm] [PATCH 5/8] hw/sd/ssi-sd: Force cards connected in SPI mode to use Spec v1.10, Philippe Mathieu-Daudé, 2018/06/02
- [Qemu-arm] [PATCH 7/8] sdcard: Reflect when the Spec v3 is supported in the Config Register (SCR), Philippe Mathieu-Daudé, 2018/06/02
- [Qemu-arm] [PATCH 6/8] sdcard: Disable SEND_IF_COND (CMD8) for Spec v1, Philippe Mathieu-Daudé, 2018/06/02
- [Qemu-arm] [PATCH 8/8] sdcard: Disable CMD19/CMD23 for Spec v2, Philippe Mathieu-Daudé, 2018/06/02