[U-Boot] [PATCH 1/2] mmc: sdhci: set to INT_DATA_END when there are data

Jaehoon Chung
2016-07-25T04:55:09Z

Hi All,

On 07/12/2016 09:55 PM, Lukasz Majewski wrote:
> Hi Jaehoon,
>
>> There is no data, it doesn't needs to wait for completing data
>> transfer. (It seems that it can be removed.)
>> Almost all timeout error is occured from stop command without data.
>> After applied this patch, I hope that we don't need to increase
>> timeout value anymore.
>
> This patch fixes issue (in a better way) for Odroid U3 write
> performance (http://patchwork.ozlabs.org/patch/646932/) and hence
> should be used.
>

Is there any other opinion for this patch?
Who is maintaining u-boot-mmc? Is Pantelis still maintaining u-boot-mmc?

Who can apply this patch and patch relevant to mmc?

Best Regards,
Jaehoon Chung

>
>>
>> Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
>> ---
>> drivers/mmc/sdhci.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c
>> index 604f18d..0a38a56 100644
>> --- a/drivers/mmc/sdhci.c
>> +++ b/drivers/mmc/sdhci.c
>> @@ -175,7 +175,8 @@ static int sdhci_send_command(struct mmc *mmc,
>> struct mmc_cmd *cmd, flags = SDHCI_CMD_RESP_LONG;
>> else if (cmd->resp_type & MMC_RSP_BUSY) {
>> flags = SDHCI_CMD_RESP_SHORT_BUSY;
>> - mask |= SDHCI_INT_DATA_END;
>> + if (data)
>> + mask |= SDHCI_INT_DATA_END;
>> } else
>> flags = SDHCI_CMD_RESP_SHORT;
>>
>
> Acked-by: Lukasz Majewski <l.majewski@samsung.com>
> Tested-by: Lukasz Majewski <l.majewski@samsung.com>
>
> Test HW: Odroid U3 (Exynos4):
>
> Odroid # ext4load mmc 0:2 0x41000000 dat_31M.img
> 32505856 bytes read in 1471 ms (21.1 MiB/s)
> Odroid # ext4write mmc 0:2 0x41000000 /dat_w55.img 0x1f00000
> File System is consistent
> update journal finished
> 32505856 bytes written in 3528 ms (8.8 MiB/s)
>
> Performance improvement is even better than with previously proposed
> patches.
>
> Test HW: Odroid XU3 (Exynos5):
>
> ODROID-XU3 # ext4load mmc 0:2 0x41000000 dat_31M.img
> 32505856 bytes read in 6309 ms (4.9 MiB/s)
> ODROID-XU3 # ext4write mmc 0:2 0x41000000 /dat_w1.img 0x1f00000
> File System is consistent
> update journal finished
> 32505856 bytes written in 4884 ms (6.3 MiB/s)
>
>