[PATCH v2 3/3] mmc: hi6220_dw_mmc: add fifoth_val to private data and set it in .probe
Yang Xiwen
forbidden405 at outlook.com
Wed Apr 3 03:22:07 CEST 2024
On 4/3/2024 8:43 AM, Jaehoon Chung wrote:
> Hi
>
> On 2/1/24 23:05, Yang Xiwen via B4 Relay wrote:
>> From: Yang Xiwen <forbidden405 at outlook.com>
>>
>> The value defaults to 0 and is ignored by dw_mmc code, so the other
>> users are not affected.
>>
>> Setting this explicitly fixes some weird reading error found on Hi3798MV200.
>>
>> Fixes: 8a5dc8140e62 ("mmc: hi6220_dw_mmc: add compatible for HC2910 support")
>>
>> Signed-off-by: Yang Xiwen <forbidden405 at outlook.com>
>> ---
>> drivers/mmc/hi6220_dw_mmc.c | 11 ++++++++++-
>> 1 file changed, 10 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/mmc/hi6220_dw_mmc.c b/drivers/mmc/hi6220_dw_mmc.c
>> index a4b8072976..dc0210402b 100644
>> --- a/drivers/mmc/hi6220_dw_mmc.c
>> +++ b/drivers/mmc/hi6220_dw_mmc.c
>> @@ -37,6 +37,7 @@ struct hi6220_dwmmc_priv_data {
>> struct hisi_mmc_data {
>> unsigned int clock;
>> bool use_fifo;
>> + u32 fifoth_val;
>> };
>>
>> static int hi6220_dwmmc_of_to_plat(struct udevice *dev)
>> @@ -125,6 +126,7 @@ static int hi6220_dwmmc_probe(struct udevice *dev)
>> host->mmc = &plat->mmc;
>>
>> host->fifo_mode = mmc_data->use_fifo;
>> + host->fifoth_val = mmc_data->fifoth_val;
>> host->mmc->priv = &priv->host;
>> upriv->mmc = host->mmc;
>> host->mmc->dev = dev;
>> @@ -154,13 +156,20 @@ static const struct hisi_mmc_data hi6220_mmc_data = {
>> .use_fifo = false,
>> };
>>
>> +static const struct hisi_mmc_data hi3798mv2x_mmc_data = {
>> + .clock = 50000000,
>> + .use_fifo = false,
>> + // FIFO depth is 256
> Removed unnecessary comment.
Will do. It seems that this should also apply to hi3798cv200-dw-mshc.
tests are needed from cv200 users.
>
> Best Regards,
> Jaehoon Chung
>
>> + .fifoth_val = MSIZE(4) | RX_WMARK(0x7f) | TX_WMARK(0x80),
>> +};
>> +
>> static const struct udevice_id hi6220_dwmmc_ids[] = {
>> { .compatible = "hisilicon,hi6220-dw-mshc",
>> .data = (ulong)&hi6220_mmc_data },
>> { .compatible = "hisilicon,hi3798cv200-dw-mshc",
>> .data = (ulong)&hi6220_mmc_data },
>> { .compatible = "hisilicon,hi3798mv200-dw-mshc",
>> - .data = (ulong)&hi6220_mmc_data },
>> + .data = (ulong)&hi3798mv2x_mmc_data },
>> { .compatible = "hisilicon,hi3660-dw-mshc",
>> .data = (ulong)&hi3660_mmc_data },
>> { }
--
Regards,
Yang Xiwen
More information about the U-Boot
mailing list