[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v7 06/16] sdhci: add init_readonly_registers() t
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [Qemu-devel] [PATCH v7 06/16] sdhci: add init_readonly_registers() to initialize the CAPAB register |
Date: |
Thu, 18 Jan 2018 12:44:32 -0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 |
On 01/18/2018 09:32 AM, Philippe Mathieu-Daudé wrote:
> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
> ---
> hw/sd/sdhci.c | 17 ++++++++++++++---
> 1 file changed, 14 insertions(+), 3 deletions(-)
>
> diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c
> index f9264d3be5..08b85558f1 100644
> --- a/hw/sd/sdhci.c
> +++ b/hw/sd/sdhci.c
> @@ -1174,12 +1174,19 @@ static inline unsigned int
> sdhci_get_fifolen(SDHCIState *s)
> }
> }
>
> +static void sdhci_init_readonly_registers(SDHCIState *s, Error **errp)
> +{
> + if (s->capareg == UINT64_MAX) {
> + s->capareg = SDHC_CAPAB_REG_DEFAULT;
> + }
> +}
> +
> /* --- qdev common --- */
>
> #define DEFINE_SDHCI_COMMON_PROPERTIES(_state) \
> - /* Capabilities registers provide information on supported features
> - * of this specific host controller implementation */ \
> - DEFINE_PROP_UINT64("capareg", _state, capareg, SDHC_CAPAB_REG_DEFAULT), \
> + /* deprecated: Capabilities registers provide information on supported
> + * features of this specific host controller implementation */ \
> + DEFINE_PROP_UINT64("capareg", _state, capareg, UINT64_MAX), \
> DEFINE_PROP_UINT64("maxcurr", _state, maxcurr, 0)
>
> static void sdhci_initfn(SDHCIState *s)
> @@ -1204,6 +1211,10 @@ static void sdhci_uninitfn(SDHCIState *s)
>
> static void sdhci_common_realize(SDHCIState *s, Error **errp)
> {
> + sdhci_init_readonly_registers(s, errp);
> + if (errp && *errp) {
Paolo said this is wrong (as in bad pattern?).
I will respin probably using 'bool sdhci_init_readonly_registers()' instead.
> + return;
> + }
> s->buf_maxsz = sdhci_get_fifolen(s);
> s->fifo_buffer = g_malloc0(s->buf_maxsz);
>
>
- [Qemu-devel] [PATCH v7 00/16] SDHCI: clean v1/v2 Specs (part 2), Philippe Mathieu-Daudé, 2018/01/18
- [Qemu-devel] [PATCH v7 01/16] sdhci: add qtest to check the SD capabilities register, Philippe Mathieu-Daudé, 2018/01/18
- [Qemu-devel] [PATCH v7 02/16] sdhci: add check_capab_readonly() qtest, Philippe Mathieu-Daudé, 2018/01/18
- [Qemu-devel] [PATCH v7 04/16] sdhci: add a check_capab_sdma() qtest, Philippe Mathieu-Daudé, 2018/01/18
- [Qemu-devel] [PATCH v7 03/16] sdhci: add a check_capab_baseclock() qtest, Philippe Mathieu-Daudé, 2018/01/18
- [Qemu-devel] [PATCH v7 05/16] sdhci: add qtest to check the SD Spec version, Philippe Mathieu-Daudé, 2018/01/18
- [Qemu-devel] [PATCH v7 07/16] sdhci: add a 'spec_version property' (default to v2), Philippe Mathieu-Daudé, 2018/01/18
- [Qemu-devel] [PATCH v7 06/16] sdhci: add init_readonly_registers() to initialize the CAPAB register, Philippe Mathieu-Daudé, 2018/01/18
[Qemu-devel] [PATCH v7 08/16] sdhci: add basic Spec v1 capabilities, Philippe Mathieu-Daudé, 2018/01/18
[Qemu-devel] [PATCH v7 09/16] sdhci: add max-block-length capability (Spec v1), Philippe Mathieu-Daudé, 2018/01/18
[Qemu-devel] [PATCH v7 12/16] sdhci: Fix 64-bit ADMA2, Philippe Mathieu-Daudé, 2018/01/18
[Qemu-devel] [PATCH v7 14/16] hw/arm/xilinx_zynq: implement SDHCI Spec v2, Philippe Mathieu-Daudé, 2018/01/18