From: Shawn Lin <shawn.lin-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
To: Yousong Zhou <yszhou4tech-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: shawn.lin-TNX95d0MmH7DzftRWevZcw@public.gmane.org,
Hans de Goede <hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
Ulf Hansson <ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
dev-3kdeTeqwOZ9EV1b7eY7vFQ@public.gmane.org
Subject: Re: Re: [RFC] mmc: core: Set clock before switching to highspeed mode.
Date: Sun, 6 Sep 2015 22:14:09 +0800 [thread overview]
Message-ID: <55EC4A31.4060605@rock-chips.com> (raw)
In-Reply-To: <CAECwjAhe3g0T2icEExE_tBbZ2D1z+BpVNCd0dGZVNU=7zH-LHw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
在 2015/9/6 20:09, Yousong Zhou 写道:
> Hi,
>
> On 6 September 2015 at 08:12, Shawn Lin <shawn.lin-TNX95d0MmH7DzftRWevZcw@public.gmane.org> wrote:
>> On 2015/9/5 22:58, Hans de Goede wrote:
>>>
>>> Hi Shawn Lin,
>>>
>>> On 05-09-15 16:07, Shawn Lin wrote:
>>>>
>>>> On 2015/9/5 18:19, Yousong Zhou wrote:
>>>>>
>>>>> A SD card with sunxi-mmc can fail with the following error message
>>>>> (RCD for
>>>>> response CRC error) when trying to switch to highspeed mode. Setting
>>>>> the bus
>>>>> clock before the access mode switch fixed it.
>>>>
>>>>
>>>> No, that's wrong!
>>>>
>>>> Before this card is switched to highspeed, it works under
>>>> identification mode(From spec: bus clock <= 400KHz). How could you
>>>> raise bus clock to higher clk rate which I _guess_ is 52MHz before you
>>>> notify sd cards to run into highspeed mode?
>>>>
>>>> Althought it works for this card, this patch will not please the other
>>>> cards that they might not reply CMDs any longer including the
>>>> following CMD6.
>>>
>>>
>>> Thanks for the feedback, this is exactly why I asked Yousong Zhou to
>>> take this
>>> to the mmc list.
>>>
>>> So if this is not the proper fix for the problem that Yousong Zhou is
>>> seeing, then
>>> what might be the proper fix ?
>>>
>>
>> From my knowledge of mmc, there hadn't have a way to deal with this "broken"
>> case. In another word, IMO,it's ANTI-SPEC. We can't be too spec sometimes,
>> but at least we shouldn't violate it.
>>
>
> Maybe the fix is anti-spec. But the fact is that the card works on
> many other platforms with the builtin card reader (not through an USB
> adapter), including Mac OS X, my old Nokia Symbian phone, and Windows.
>
>>> Could it be that the sunxi-mmc is doing some things in the wrong order
>>> when
>>> changing the clock, or is this all under control of the mmc core ?
>>>
>>
>> all of this is under control of the mmc core.
>> So if Yongsong does want this card to work for any linux-based mmc stack, I
>> guess something like that should be "better"?
>>
>> if (switch to HS fail) {
>> set_bus_clk
>> goto retry switch to HS
>> }
>>
>> BUT...I admit it seems strange as well.
>>
>
> The SD Specification (simplified version) says "If CRC error occurs on
> the status data, the host should issue a power cycle.", so I guess the
> above approach is anti-spec in some way :)
>
Right,I was guessing that way from your intention.
> In case it may help debug this problem, I'd like to add that the card
> previously worked fine with U-Boot before commit [1]. This can also
> be confirmed by Debian Jessie installer image with which the old
> U-Boot there worked fine while the kernel (3.16) did not.
>
> [1] sunxi: mmc: Properly setup mod-clk and clock sampling phases,
> http://git.denx.de/?p=u-boot.git;a=commit;h=fc3a832576ce7bb597b1823935bfb7dcca235c3c
>
Interesting... but that at least prove your patch is a workaround but
not find the root cause.
Anyway, look into commit-sha [1], can you have a test by restoring
mod-clk and clock sampling phases before jump to kernel.
I happended to fix some problems which seems *similar* to yours(but I'm
not sure just from commit[1]'s msg):
https://patchwork.kernel.org/patch/7119661/
> Cheers
>
> yousong
> --
> To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
>
--
Best Regards
Shawn Lin
--
You received this message because you are subscribed to the Google Groups "linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
For more options, visit https://groups.google.com/d/optout.
next prev parent reply other threads:[~2015-09-06 14:14 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-05 10:19 [RFC] mmc: core: Set clock before switching to highspeed mode Yousong Zhou
[not found] ` <1441448358-13129-1-git-send-email-yszhou4tech-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-09-05 14:07 ` Shawn Lin
2015-09-05 14:58 ` [linux-sunxi] " Hans de Goede
[not found] ` <55EB02FD.5040403-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2015-09-06 0:12 ` Shawn Lin
2015-09-06 12:09 ` [linux-sunxi] " Yousong Zhou
[not found] ` <CAECwjAhe3g0T2icEExE_tBbZ2D1z+BpVNCd0dGZVNU=7zH-LHw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-09-06 14:14 ` Shawn Lin [this message]
[not found] ` <55EC4A31.4060605-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
2015-09-06 14:47 ` Yousong Zhou
[not found] ` <CAECwjAgLuskgyHv50GOVN8fGOmQz+jo9PLCAr-POpYH6AszWSg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-09-07 7:02 ` Hans de Goede
2015-09-07 15:37 ` [linux-sunxi] " Yousong Zhou
2015-09-08 15:38 ` Yousong Zhou
[not found] ` <CAECwjAjsi28gQ-iMZbEgFdoDoTcf0khnS0KRrzO1wnL1j0o0vQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-09-09 8:47 ` Hans de Goede
2015-09-06 14:51 ` [linux-sunxi] " Yousong Zhou
2015-09-07 0:16 ` Shawn Lin
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=55EC4A31.4060605@rock-chips.com \
--to=shawn.lin-tnx95d0mmh7dzftrwevzcw@public.gmane.org \
--cc=dev-3kdeTeqwOZ9EV1b7eY7vFQ@public.gmane.org \
--cc=hdegoede-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=linux-mmc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=ulf.hansson-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=yszhou4tech-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.