From mboxrd@z Thu Jan 1 00:00:00 1970 From: Faiz Abbas Date: Tue, 4 Jun 2019 16:52:51 +0530 Subject: [U-Boot] [PATCH] mmc: Avoid HS400 mode when accessing boot partitions In-Reply-To: References: <20190531132244.29719-1-marek.vasut+renesas@gmail.com> Message-ID: <43c3efe1-55cf-91e3-34c3-c509d0a7207d@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 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. 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. Thanks, Faiz