From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jean-Jacques Hiblot Date: Tue, 11 Jun 2019 17:25:36 +0200 Subject: [U-Boot] [PATCH] mmc: Avoid HS400 mode when accessing boot partitions In-Reply-To: <3e2e9363-bf4d-84db-867b-130c3709bbb3@gmail.com> References: <20190531132244.29719-1-marek.vasut+renesas@gmail.com> <43c3efe1-55cf-91e3-34c3-c509d0a7207d@ti.com> <3e2e9363-bf4d-84db-867b-130c3709bbb3@gmail.com> Message-ID: <819adba2-aa6a-c6a8-ec30-412ddfbcbf48@ti.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de + Jaehoon Hi Marek, On 10/06/2019 13:33, Marek Vasut wrote: > On 6/10/19 7:59 AM, Peng Fan wrote: >>> Subject: Re: [U-Boot] [PATCH] mmc: Avoid HS400 mode when accessing boot >>> partitions >>> >>> Hi Marek, Peng, >>> >>> 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. >> Yes, the spec does not mention this. It only mentions HS200/400 not supported >> during boot operation. >> >>> 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. >> There might be bug in U-Boot code. > So are we gonna leave this inconsistency in for current release or > what's it gonna be ? Like I said, we're in rc3, it's fine to do bigger > changes in next release, but we should at least fix this in current release. > > I would also like to hear from Jean why he originally introduced this > for HS200 mode. Well I didn't look into the specs when working on this part. I introduced it because of Jaehoon's remark on this thread: https://lists.denx.de/pipermail/u-boot/2017-January/278672.html Maybe Jaehoon can help us here understand why it is needed. JJ >