[PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey
Jaehoon Chung
jh80.chung at samsung.com
Mon Aug 8 03:46:01 PDT 2016
Hi,
On 08/08/2016 06:10 PM, Shawn Lin wrote:
> Hi guy,
>
> On 2016/8/8 15:10, Jinguojun wrote:
>> Hi,maintainers
>>
>> Pls help to review code,this is the newest patch after your advise
Subject..
s/UHS-SD/UHS-I/
>>
>
> Please give Jaehoon more time to review your patch before sending a
> ping or resending one(~2 weeks), as it's only four days(weekend
> included) since v4 was done....IMHO, it's quite bold...
>
>> Thx
>> On 2016/8/4 10:16, Jin Guojun wrote:
>>> mmc: dw_mmc-k3: Hisilicon Hikey have no tuning function in
>>> dw_mmc-k3.c,so we must do the tuning function stub when we init UHS card.
>>>
>
> Hrmmm.... remove "mmc: dw_mmc-k3:" from the meat of commit msg。
>
> And you do nothing for dw_mci_hi6220_execute_tuning, why?
> Could you elaborate more..
>
>
>>> V1:add .prepare_command in dw_mmc.c
>>> V2:delete .prepare_command, add err = 0 in dw_mci_execute_tuning
>>> V3:delete err = 0 in dw_mci_execute_tuning,add .execute_tuning in
>>> dw_mmc-k3.c
>>> V4:add "linux-mmc at vger.kernel.org", patch version, Changelog, etc..
>
> The changelog is totally wrong, namely it should not be listed in the
> commit msg...
>
>>>
>>> Signed-off-by: Jin Guojun <kid.jin at hisilicon.com>
>>> ---
>>> drivers/mmc/host/dw_mmc-k3.c | 6 ++++++
>>> 1 file changed, 6 insertions(+)
>>>
>>> diff --git a/drivers/mmc/host/dw_mmc-k3.c b/drivers/mmc/host/dw_mmc-k3.c
>>> index 8e9d886..6247894 100644
>>> --- a/drivers/mmc/host/dw_mmc-k3.c
>>> +++ b/drivers/mmc/host/dw_mmc-k3.c
>>> @@ -131,11 +131,17 @@ static void dw_mci_hi6220_set_ios(struct dw_mci *host, struct mmc_ios *ios)
>>> host->bus_hz = clk_get_rate(host->biu_clk);
>>> }
>>>
>>> +static int dw_mci_hi6220_execute_tuning(struct dw_mci_slot *slot, u32 opcode)
>>> +{
>>> + return 0;
>>> +}
All of UHS-I cards didn't need to do tuning sequence on your SoC? it's strange.
I think we can fix more exactly in dw_mmc.c
As i know, some UHS cards don't need to send the tuning sequence.
(If i know wrong, let me know plz.)
But just skipping execute_tuning..I think it's not correct.
Best Regards,
Jaehoon Chung
>>> +
>>> static const struct dw_mci_drv_data hi6220_data = {
>>> .caps = dw_mci_hi6220_caps,
>>> .switch_voltage = dw_mci_hi6220_switch_voltage,
>>> .set_ios = dw_mci_hi6220_set_ios,
>>> .parse_dt = dw_mci_hi6220_parse_dt,
>>> + .execute_tuning = dw_mci_hi6220_execute_tuning,
>>> };
>>>
>>> static const struct of_device_id dw_mci_k3_match[] = {
>>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
>> the body of a message to majordomo at vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>
>
More information about the linux-arm-kernel
mailing list