On 06/16/2017 07:00 PM, Jean-Jacques Hiblot wrote: > Hi Jaehoon, > > > On 25/05/2017 09:41, Jaehoon Chung wrote: >> Hi, >> >> On 05/24/2017 12:24 AM, Jean-Jacques Hiblot wrote: >>> Hi, >>> >>> >>> On 18/05/2017 06:27, Jaehoon Chung wrote: >>>> Hi, >>>> >>>> On 05/13/2017 03:16 AM, Jean-Jacques Hiblot wrote: >>>>> This series brings support for HS200 and UHS modes to the mmc core. >>>>> It has been tested with the hsmmc driver on several platforms (DRA7, >>>>> AM57x, AM437x, beaglebone black). Some modifications are required in >>>>> the host driver to take advantage of this (voltage switching, tuning). >>>>> The changes to the host driver will be posted a another series as this >>>>> one is already long enough. >>>>> >>>>> The series starts with a small refactoring of th sd/mmc startup. The >>>>> first 4 commits >>>>> are mostly moving code around with little or no functionnal change. >>>>> >>>>> Then the notion of "mode" is introduced. Until now, this information >>>>> wasn't >>>>> kept in struct mmc. Only the clock and a flag for ddr was kept. Later the >>>>> mode >>>>> information will be used to select the clock frequency, the ddr flag and >>>>> the >>>>> tuning procedure. It will be also be check against the host capabilities. >>>>> >>>>> Then comes the big refactoring job in: >>>>> "mmc: refactor MMC startup to make it easier to support new modes" and >>>>> "mmc: refactor SD startup to make it easier to support new modes" >>>>> Since the number of modes is increasing, it makes sense to try them in a >>>>> more >>>>> organized way. those commits use a list of supported modes and iterate >>>>> through >>>>> them to find the best working one. It also allows to switch more easilly >>>>> from >>>>> one mode to another (switching from HS200 to DDR52 to access boot >>>>> partitions for example) >>>>> >>>>> Then there are a couple of new callback added to: >>>>> - enable/disable Vdd >>>>> - check if the card is busy (used during UHS voltage switching) >>>>> - select the IO voltage >>>>> >>>>> Then Power cycle is added. Without power cycle, if a UHS card fails to >>>>> enumerate in >>>>> UHS mode, it can't fall back to high speed mode and card enumeration will >>>>> fail. >>>>> >>>>> And finally the last commits add the support for HS200 and UHS. >>>>> I haven't been able to test the UHS SDR104 mode by lack of compatible >>>>> sdcard. >>>> After testing my targets, some boards don't work fine..So i'm checking >>>> this problem.. >>> Jaehoon, >>> >>> what kind of issues are you running into and on what platforms ? >>> So far, besides the items brought-up by the reviews, there are 2 issues >>> that are in the pipe for the next version: >>> * signal voltage selection is not done for the MMCs only for SDs. >>> * I noticed a timing constraint in voltage selection for SDs that can be >>> a problem when trying a UHS mode with some SDs (seen only with Sandisk >>> Ultra 64Gb micro SD class I) : the voltage must be switched quickly after >>> the cmd SWITCH_UHS18V has been sent, making debug messages in that context >>> a problem. With this SD I've been able to check that SDR104 is working. >> How about making the "testing-hs200-uhs" branch for this? It needs to test >> more.. >> I guess my target doesn't do the voltage change..i'm doing for ufs driver on >> u-boot in my local.. >> So i didn't see fully..today i have a free time..So i'm doing full review >> other thing..and about pending patches. >> >> Thanks for waiting me.. :) > > I updated the branches for testing in my github repo > (https://github.com/jjhiblot/u-boot.git ) > branch testing-hs200-uhs_v2 touches only the MMC core > branch high_speed_hsmmc_v2 implements the required bit for th HSMMC found on > TI boards
Sorry for late..I make the hs200-ufs-testing branch in u-boot-mmc repo. I will rebase on latest u-boot. and start the testing. Best Regards, Jaehoon Chung > > Most of the comments (if not all of them) have been taken in account and the > branches have been rebased on top of u-boot master. > > Will you be able to do some testing and let me know if there are other things > to change ? Don't hesitate to let me know what boards it breaks (if any), > I'll do my best to get my hands on one and help with the debugging. > > Thanks, > > JJ >> >> Best Regards, >> Jaehoon Chung >> >>> Jean-Jacques >>>>> With this in place and the required changes in the HSMMC (including DAM), >>>>> we observe significant >>>>> improvements in the performances on a DRA7 evm: >>>>> eMMC HS200: 130 MB/s >>>>> eMMC DDR52: 80 MB/s >>>>> sd SDR50: 80 MB/s >>>>> >>>>> cheers, >>>>> >>>>> Jean-Jacques >>>>> >>>>> >>>>> Jean-Jacques Hiblot (18): >>>>> mmc: split mmc_startup() >>>>> mmc: move the MMC startup for version above v4.0 in a separate >>>>> function >>>>> mmc: make ext_csd part of struct mmc >>>>> mmc: add a function to read and test the ext csd (mmc >= 4) >>>>> mmc: introduces mmc modes. >>>>> mmc: Add a fonction to dump the mmc capabilities >>>>> mmc: use mmc modes to select the correct bus speed >>>>> cmd: mmc: display the mode name and current bus speed in the mmc info >>>>> mmc: refactor SD startup to make it easier to support new modes >>>>> mmc: refactor MMC startup to make it easier to support new modes >>>>> mmc: make mmc_set_ios() return status >>>>> mmc: add power cyle support in mmc core >>>>> mmc: add a new mmc parameter to disable mmc clock >>>>> mmc: Add a execute_tuning() callback to the mmc operations. >>>>> mmc: add HS200 support in MMC core >>>>> mmc: Add a new callback function to check if the card is busy >>>>> mmc: Add support for UHS modes >>>>> mmc: Change mode when switching to a boot partition >>>>> >>>>> Kishon Vijay Abraham I (3): >>>>> mmc: Enable signal voltage to be selected from mmc core >>>>> mmc: Add a new callback function to enable/disable vdd >>>>> mmc: disable the mmc clock during power off >>>>> >>>>> Vignesh R (1): >>>>> mmc: Retry some MMC cmds on failure >>>>> >>>>> cmd/mmc.c | 3 +- >>>>> drivers/mmc/fsl_esdhc.c | 2 +- >>>>> drivers/mmc/mmc-uclass.c | 42 ++ >>>>> drivers/mmc/mmc.c | 1220 >>>>> +++++++++++++++++++++++++++++++++------------- >>>>> include/mmc.h | 138 +++++- >>>>> 5 files changed, 1058 insertions(+), 347 deletions(-) >>>>> >>> >>> >>> >> > > > > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot