All of lore.kernel.org
 help / color / mirror / Atom feed
From: Faiz Abbas <faiz_abbas@ti.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] mmc: Avoid HS400 mode when accessing boot partitions
Date: Fri, 7 Jun 2019 13:23:51 +0530	[thread overview]
Message-ID: <10f90903-702e-39a4-0387-ec86c16e03dd@ti.com> (raw)
In-Reply-To: <c138c00e-5fd3-da7a-353b-7c4408f14c68@gmail.com>

Hi,

+ Kernel MMC maintainer

On 04/06/19 7:08 PM, Marek Vasut wrote:
> On 6/4/19 3:34 PM, Faiz Abbas wrote:
>> Hi Marek,
>>
>> On 04/06/19 6:56 PM, Marek Vasut wrote:
>>> On 6/4/19 1:22 PM, Faiz Abbas wrote:
>>>> Hi Marek, Peng,
>>>
>>> Hi,
>>>
>>>> On 03/06/19 12:04 PM, Peng Fan wrote:
>>>>>
>>>>>> Subject: [PATCH] mmc: Avoid HS400 mode when accessing boot partitions
>>>>>>
>>>>>> According to JEDEC JESD84-B51.pdf section 6.3.3 Boot operation ,
>>>>>> HS200 & HS400 mode is not supported during boot operation. The U-Boot
>>>>>> code currently only applies this restriction to HS200 mode, extend this to
>>>>>> HS400 mode as well.
>>>> The spec in section 6.3.3 (according to my understanding) is talking
>>>> about "boot operation" which is a way of getting data from the the eMMC
>>>> without going through the Device identification mode (Section 6.4.4)
>>>> i.e. without sending any commands. All the host has to do is hold the
>>>> command line low in Pre-Idle mode to automatically receive data at the
>>>> preconfigured frequency and bus width.
>>>>
>>>> When U-boot is accessing the partition, it has already gone through the
>>>> Device identification mode and is in data transfer mode (i.e. it needs
>>>> to send commands for read/write to happen). In this case, we need to
>>>> switch the partition in Extended CSD to access the boot partition
>>>> (Section 6.2.5). The spec doesn't say anything about HS200 and HS400 not
>>>> being supported here.
>>>>
>>>> Also, I don't see linux kernel switching down speed when trying to
>>>> access a boot partition (unless its being very sneaky about it). So if
>>>> you are seeing issues with accessing boot partitions at HS200/HS400 then
>>>> you should probably look at how linux code is working instead.
>>>
>>> Did you practically verify this ? In my case, the boot partition access
>>> fails in HS200/HS400 mode (samsung and sandisk emmc, but I'd have to
>>> check the exact part number).
>>>
>>> commit 01298da31d92ecc46cf9130d8cff68bc51698197
>>>     mmc: Change mode when switching to a boot partition
>>> seems to confirm that too.
>>>
>>
>> I had tried to raise these concerns for that patch as well
>> (https://www.spinics.net/lists/linux-mmc/msg50432.html) but it was
>> missed at that time.
>>
>> I did verify that kernel is not switching speeds on a dra7xx board. JJ
>> and I have seen failures similar to yours in u-boot (which led to this
>> patch) but not in kernel which makes me think that the fix was wrong.
>> Have you verified with your setup in kernel?
> 
> No, but I'll add it to the list of things to look into.
> 
> In the meantime, this should go in anyway, to make the code consistent.
> 

If we keep covering up the issue then it will never be solved. We need
to get more data points and more expert opinions on this and take the
pains to fix it.

@Ulf we are seeing some failures when trying to access eMMC boot
partitions at HS200/HS400 speed modes.

Do you know if there are limitations on accessing eMMC boot partitions
at HS200/HS400 speed modes in kernel? Do you agree with my reading of
the spec above?

Thanks,
Faiz

  reply	other threads:[~2019-06-07  7:53 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-31 13:22 [U-Boot] [PATCH] mmc: Avoid HS400 mode when accessing boot partitions Marek Vasut
2019-06-03  6:34 ` Peng Fan
2019-06-04 11:22   ` Faiz Abbas
2019-06-04 13:26     ` Marek Vasut
2019-06-04 13:34       ` Faiz Abbas
2019-06-04 13:38         ` Marek Vasut
2019-06-07  7:53           ` Faiz Abbas [this message]
2019-06-07 19:05             ` Marek Vasut
2019-06-10  5:59     ` Peng Fan
2019-06-10 11:33       ` Marek Vasut
2019-06-11  1:17         ` Peng Fan
2019-06-11  3:01           ` Marek Vasut
2019-06-11  8:12           ` Faiz Abbas
2019-06-11 10:04             ` Marek Vasut
2019-06-11 15:59               ` Faiz Abbas
2019-06-14 15:27                 ` Jean-Jacques Hiblot
2019-06-15 15:15                   ` Marek Vasut
2019-06-17  9:09                     ` Jean-Jacques Hiblot
2019-06-17 10:34                       ` Marek Vasut
2019-06-17 14:46                         ` Jean-Jacques Hiblot
2019-06-17 15:47                           ` Marek Vasut
2019-06-18  5:03                             ` Peng Fan
2019-06-18  6:35                               ` Faiz Abbas
2019-06-19  5:42                                 ` Peng Fan
2019-06-18 10:55                               ` Marek Vasut
2019-06-18 14:38                               ` Jean-Jacques Hiblot
2019-06-15 15:12                 ` Marek Vasut
2019-06-11 15:25         ` Jean-Jacques Hiblot
2019-06-11 20:51           ` Marek Vasut

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=10f90903-702e-39a4-0387-ec86c16e03dd@ti.com \
    --to=faiz_abbas@ti.com \
    --cc=u-boot@lists.denx.de \
    /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.