public inbox for linux-mmc@vger.kernel.org
 help / color / mirror / Atom feed
From: Jaehoon Chung <jh80.chung@samsung.com>
To: Alim Akhtar <alim.akhtar@gmail.com>,
	Jaehoon Chung <jh80.chung@samsung.com>
Cc: linux-mmc <linux-mmc@vger.kernel.org>,
	Chris Ball <chris@printf.net>,
	Ulf Hansson <ulf.hansson@linaro.org>,
	Seungwon Jeon <tgih.jun@samsung.com>
Subject: Re: [PATCH] mmc: dw_mmc-exynos: fixed wrong sample-clock selection
Date: Wed, 17 Sep 2014 11:36:37 +0900	[thread overview]
Message-ID: <5418F3B5.40706@samsung.com> (raw)
In-Reply-To: <CAGOxZ53veu=t+8yzkqCmh0wTWKBBDvuE99qbNbfZuuPxAG=m=Q@mail.gmail.com>

Hi, Alim.

On 09/17/2014 07:27 AM, Alim Akhtar wrote:
> Hi Jaehoon,
> 
> On Mon, Sep 15, 2014 at 3:56 PM, Jaehoon Chung <jh80.chung@samsung.com> wrote:
>> Almost all case is selected to 0.
>> (It's not correct sample-clock value.)
>> Since it set to wrong value, HS200 mode don't work fine.
> Can you please explain what problem you are facing here?

When i try to use HS200 with some eMMC card, Some card is working fine and other isn't working fine.
(DWMMC is occured the DCRC error.)
DCRC error might be occurred when the wrong sample-clock is set.
So i tried to see what value is selected to sample-clock.
(Selected value - Working fine card : 0, Not working fine card : 0)

When i skip to 0, it's selected to other value for best sample-clock.
(Selected value - Working fine card : 4, Not working fine card : 6)

After working fine card is selected to 6, it's working fine.
I didn't know which value is set for other card. But in my case, best sample-clock is selected to 0.

I think it has the some problem for selecting the sample-clock.

Best Regards,
Jaehoon Chung

> It is not clear from your patch description.
>> If we want to select the correct value, it has to check from 1 to 7.(skip 0)
>>
>> Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
>> ---
>>  drivers/mmc/host/dw_mmc-exynos.c |    9 ++++++++-
>>  1 file changed, 8 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/mmc/host/dw_mmc-exynos.c b/drivers/mmc/host/dw_mmc-exynos.c
>> index 0fbc53a..5294035 100644
>> --- a/drivers/mmc/host/dw_mmc-exynos.c
>> +++ b/drivers/mmc/host/dw_mmc-exynos.c
>> @@ -25,6 +25,7 @@
>>  #define NUM_PINS(x)                    (x + 2)
>>
>>  #define SDMMC_CLKSEL                   0x09C
>> +#define SDMMC_CLKSEL_CCLK_SAMPLE_MASK  0x7
>>  #define SDMMC_CLKSEL_CCLK_SAMPLE(x)    (((x) & 7) << 0)
>>  #define SDMMC_CLKSEL_CCLK_DRIVE(x)     (((x) & 7) << 16)
>>  #define SDMMC_CLKSEL_CCLK_DIVIDER(x)   (((x) & 7) << 24)
>> @@ -330,6 +331,12 @@ static int dw_mci_exynos_execute_tuning(struct dw_mci_slot *slot, u32 opcode,
>>         if (!blk_test)
>>                 return -ENOMEM;
>>
>> +       /*
>> +        * In order to check all selclk_sample clock,
>> +        * it needs to reset to 0.
>> +        */
>> +       dw_mci_exynos_set_clksmpl(host, 0);
>> +
>>         start_smpl = dw_mci_exynos_get_clksmpl(host);
>>
>>         do {
>> @@ -372,7 +379,7 @@ static int dw_mci_exynos_execute_tuning(struct dw_mci_slot *slot, u32 opcode,
>>                                 "Tuning error: cmd.error:%d, data.error:%d\n",
>>                                 cmd.error, data.error);
>>                 }
>> -       } while (start_smpl != smpl);
>> +       } while (start_smpl < SDMMC_CLKSEL_CCLK_SAMPLE_MASK);
>>
>>         found = dw_mci_exynos_get_best_clksmpl(candiates);
>>         if (found >= 0)
>> --
>> 1.7.9.5
>>
>> --
>> 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
> 
> 
> 


  reply	other threads:[~2014-09-17  2:36 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-15 10:26 [PATCH] mmc: dw_mmc-exynos: fixed wrong sample-clock selection Jaehoon Chung
2014-09-16 22:27 ` Alim Akhtar
2014-09-17  2:36   ` Jaehoon Chung [this message]
2014-09-17 12:49     ` Alim Akhtar
2014-09-18 10:50       ` Jaehoon Chung

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5418F3B5.40706@samsung.com \
    --to=jh80.chung@samsung.com \
    --cc=alim.akhtar@gmail.com \
    --cc=chris@printf.net \
    --cc=linux-mmc@vger.kernel.org \
    --cc=tgih.jun@samsung.com \
    --cc=ulf.hansson@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox