Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1456116 > unrolled thread

[PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey

Started byJin Guojun <kid.jin@hisilicon.com>
First post2016-08-04 04:20 +0200
Last post2016-08-08 12:50 +0200
Articles 4 — 4 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey Jin Guojun <kid.jin@hisilicon.com> - 2016-08-04 04:20 +0200
    Re: [PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey Jinguojun <kid.jin@hisilicon.com> - 2016-08-08 09:20 +0200
      Re: [PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey Shawn Lin <shawn.lin@rock-chips.com> - 2016-08-08 11:20 +0200
        Re: [PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey Jaehoon Chung <jh80.chung@samsung.com> - 2016-08-08 12:50 +0200

#1456116 — [PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey

FromJin Guojun <kid.jin@hisilicon.com>
Date2016-08-04 04:20 +0200
Subject[PATCH V4]mmc: dw_mmc-k3: UHS-SD card for Hisilicon Hikey
Message-ID<s2gqm-2Ey-5@gated-at.bofh.it>
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.

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@vger.kernel.org", patch version, Changelog, etc..

Signed-off-by: Jin Guojun <kid.jin@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;
+}
+
 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[] = {
-- 
1.9.1

[toc] | [next] | [standalone]


#1457581

FromJinguojun <kid.jin@hisilicon.com>
Date2016-08-08 09:20 +0200
Message-ID<s3N0S-6HU-21@gated-at.bofh.it>
In reply to#1456116
Hi,maintainers

Pls help to review code,this is the newest patch after your advise

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.
> 
> 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@vger.kernel.org", patch version, Changelog, etc..
> 
> Signed-off-by: Jin Guojun <kid.jin@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;
> +}
> +
>  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[] = {
> 

[toc] | [prev] | [next] | [standalone]


#1457637

FromShawn Lin <shawn.lin@rock-chips.com>
Date2016-08-08 11:20 +0200
Message-ID<s3OSZ-7Ux-19@gated-at.bofh.it>
In reply to#1457581
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
>

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@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@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;
>> +}
>> +
>>  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@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>


-- 
Best Regards
Shawn Lin

[toc] | [prev] | [next] | [standalone]


#1457701

FromJaehoon Chung <jh80.chung@samsung.com>
Date2016-08-08 12:50 +0200
Message-ID<s3Qi5-e1-17@gated-at.bofh.it>
In reply to#1457637
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@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@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@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
> 
> 

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web