On 18/05/17 19:57, Srinath Mannam wrote:
> The stingray SDHCI hardware supports ACMD12 and automatically
> issues after multi block transfer completed.
> 
> If ACMD12 in SDHCI is disabled, spurious tx done interrupts are seen
> on multi block read command with below error message:
> 
> Got data interrupt 0x00000002 even though no data
> operation was in progress.
> 
> This patch uses SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12 to enable
> ACM12 support in SDHCI hardware and suppress spurious interrupt.
> 
> Signed-off-by: Srinath Mannam <srinath.man...@broadcom.com>
> Reviewed-by: Ray Jui <ray....@broadcom.com>
> Reviewed-by: Scott Branden <scott.bran...@broadcom.com>

Acked-by: Adrian Hunter <adrian.hun...@intel.com>

> 
> diff --git a/drivers/mmc/host/sdhci-iproc.c b/drivers/mmc/host/sdhci-iproc.c
> index 3275d49..61666d2 100644
> --- a/drivers/mmc/host/sdhci-iproc.c
> +++ b/drivers/mmc/host/sdhci-iproc.c
> @@ -187,7 +187,8 @@ static const struct sdhci_iproc_data iproc_cygnus_data = {
>  };
>  
>  static const struct sdhci_pltfm_data sdhci_iproc_pltfm_data = {
> -     .quirks = SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK,
> +     .quirks = SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK |
> +               SDHCI_QUIRK_MULTIBLOCK_READ_ACMD12,
>       .quirks2 = SDHCI_QUIRK2_ACMD23_BROKEN,
>       .ops = &sdhci_iproc_ops,
>  };
> 

Reply via email to