Re: [PATCH] mmc: dw_mmc: Fix disableing DMA in Non-IDMAC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2012/2/20 Seungwon Jeon <tgih.jun@xxxxxxxxxxx>:
> dw_mci_pre_dma_transfer() is valid only if internal DMA. In case of
> using other DMA it returns -ENOSYS. It prevents the DMA operations.
> This patch makes dw_mci_pre_dma_transfer() effective in all DMA case.
>
> Reported-by: James Hogan <james@xxxxxxxxxxxxx>
> Signed-off-by: Seungwon Jeon <tgih.jun@xxxxxxxxxxx>
Hi. Seungwon.
This patch make sense.
Reviewed-by: Namjae Jeon <linkinjeon@xxxxxxxxx>
> ---
>  drivers/mmc/host/dw_mmc.c |   25 +++++++++----------------
>  1 files changed, 9 insertions(+), 16 deletions(-)
>
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index 692c3ba..bf3c9b4 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -429,6 +429,15 @@ static int dw_mci_idmac_init(struct dw_mci *host)
>        return 0;
>  }
>
> +static struct dw_mci_dma_ops dw_mci_idmac_ops = {
> +       .init = dw_mci_idmac_init,
> +       .start = dw_mci_idmac_start_dma,
> +       .stop = dw_mci_idmac_stop_dma,
> +       .complete = dw_mci_idmac_complete_dma,
> +       .cleanup = dw_mci_dma_cleanup,
> +};
> +#endif /* CONFIG_MMC_DW_IDMAC */
> +
>  static int dw_mci_pre_dma_transfer(struct dw_mci *host,
>                                   struct mmc_data *data,
>                                   bool next)
> @@ -468,22 +477,6 @@ static int dw_mci_pre_dma_transfer(struct dw_mci *host,
>        return sg_len;
>  }
>
> -static struct dw_mci_dma_ops dw_mci_idmac_ops = {
> -       .init = dw_mci_idmac_init,
> -       .start = dw_mci_idmac_start_dma,
> -       .stop = dw_mci_idmac_stop_dma,
> -       .complete = dw_mci_idmac_complete_dma,
> -       .cleanup = dw_mci_dma_cleanup,
> -};
> -#else
> -static int dw_mci_pre_dma_transfer(struct dw_mci *host,
> -                                  struct mmc_data *data,
> -                                  bool next)
> -{
> -       return -ENOSYS;
> -}
> -#endif /* CONFIG_MMC_DW_IDMAC */
> -
>  static void dw_mci_pre_req(struct mmc_host *mmc,
>                           struct mmc_request *mrq,
>                           bool is_first_req)
> --
> 1.7.0.4
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux