mbox series

[0/6] mmc: core: hs400(es) fix probe/init

Message ID 20201208061839.21163-1-chris.ruehl@gtsys.com.hk
Headers show
Series mmc: core: hs400(es) fix probe/init | expand

Message

Chris Ruehl Dec. 8, 2020, 6:18 a.m. UTC
Fix the probe if hs400-1_8v / hs400-1_2v is used in the
dts and mmc-hs400-enhanced-strobe isn't set.
That was the first attemped, but it turns out that some
more cleanups and simplifications can be done.

* move mmc_select_hs400() in between hs200 & hs400es (preparation)
* make mmc_select_hs400() independent and move it out
  of the hs200. Run hs400 tuning inside mmc_select_hs400();
* merge hs400 with hs400es function
* remove mmc_select_hs400es function 
* remove mmc_hs200_tuning()
* cleanup host->caps2 for hs400-1_8(2)v 


Signed-off-by: Chris Ruehl <chris.ruehl@gtsys.com.hk>
---
Replace patch set [PATCH 0/3] mmc: core: hs400 fix probe

Comments

Chris Ruehl Dec. 12, 2020, 1:01 a.m. UTC | #1
No Comments ?

Chris

On 8/12/2020 2:18 pm, Chris Ruehl wrote:
> Fix the probe if hs400-1_8v / hs400-1_2v is used in the

> dts and mmc-hs400-enhanced-strobe isn't set.

> That was the first attemped, but it turns out that some

> more cleanups and simplifications can be done.

> 

> * move mmc_select_hs400() in between hs200 & hs400es (preparation)

> * make mmc_select_hs400() independent and move it out

>    of the hs200. Run hs400 tuning inside mmc_select_hs400();

> * merge hs400 with hs400es function

> * remove mmc_select_hs400es function

> * remove mmc_hs200_tuning()

> * cleanup host->caps2 for hs400-1_8(2)v

> 

> 

> Signed-off-by: Chris Ruehl <chris.ruehl@gtsys.com.hk>

> ---

> Replace patch set [PATCH 0/3] mmc: core: hs400 fix probe

>
Ulf Hansson Jan. 22, 2021, 12:40 p.m. UTC | #2
+ Adrian

On Tue, 8 Dec 2020 at 07:19, Chris Ruehl <chris.ruehl@gtsys.com.hk> wrote:
>

> Fix the probe if hs400-1_8v / hs400-1_2v is used in the

> dts and mmc-hs400-enhanced-strobe isn't set.

> That was the first attemped, but it turns out that some

> more cleanups and simplifications can be done.


My apologies for the delay with reviewing. I have looped in Adrian as
well, as he might have some input to our discussion.

Before I go into doing a detailed review, I want to make sure I
understand the problem correctly.

Are you saying that switching to eMMC HS400 mode doesn't work, unless
the enhanced strobe is supported, no? Or is this a DT only related
problem?

In any case, the main point with mmc_hs400_to_hs200() is to prepare
for tuning to run in HS200 mode (it's getting called from
mmc_retune()). In other words, there *should* be no need to support
enhanced strobe to support hs400, but I might be missing something.

In particular, the following commit could be of interest for you:

6376f69d20a6905c1d83be451065f70200490b98
Author: Adrian Hunter <adrian.hunter@intel.com>
Date:   Thu May 7 13:10:20 2015 +0300
mmc: core: Add support for HS400 re-tuning

>

> * move mmc_select_hs400() in between hs200 & hs400es (preparation)

> * make mmc_select_hs400() independent and move it out

>   of the hs200. Run hs400 tuning inside mmc_select_hs400();

> * merge hs400 with hs400es function

> * remove mmc_select_hs400es function

> * remove mmc_hs200_tuning()

> * cleanup host->caps2 for hs400-1_8(2)v

>

>

> Signed-off-by: Chris Ruehl <chris.ruehl@gtsys.com.hk>

> ---

> Replace patch set [PATCH 0/3] mmc: core: hs400 fix probe


Kind regards
Uffe