[PATCH] imx: imx8mq: handle ESDHC in mxc_get_clock

Stefano Babic sbabic at denx.de
Wed Jan 8 13:19:47 CET 2020


On 08/01/20 12:56, Baruch Siach wrote:
> Hi Stefano, Peng,
> 
> On Wed, Dec 11 2019, Baruch Siach wrote:
>> On Wed, Dec 11 2019, Peng Fan wrote:
>>> fsl_esdhc_imx driver will call "mxc_get_clock(MXC_ESDHC_CLK +
>>> dev->seq)", however mxc_get_clock wrongly handle MXC_ESDHC_CLK
>>> as root clk and cause sd card could not be detected in U-Boot proper,
>>> as below:
>>> "Loading Environment from MMC... unable to select a mode"
>>>
>>> Handle MXC_ESDHC_CLK in mxc_get_clock to fix the issue.
>>>
>>> Signed-off-by: Peng Fan <peng.fan at nxp.com>
>>
>> This fixes SD card and eMMC access on i.MX8MQ based SolidRun
>> Hummingboard Pulse.
>>
>> Tested-by: Baruch Siach <baruch at tkos.co.il>
> 
> This patch missed v2020.01 unfortunately. I see it marked as "Awaiting
> Upstream" in patchwork (patch 1207464), but I could not find it queued
> anywhere. Am I missing anything?

I cannot see it, too. I can just pick it up and push it to -master.

Stefano

> 
> baruch
> 
>>> ---
>>>  arch/arm/mach-imx/imx8m/clock_imx8mq.c | 14 +++++++++-----
>>>  1 file changed, 9 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/arch/arm/mach-imx/imx8m/clock_imx8mq.c b/arch/arm/mach-imx/imx8m/clock_imx8mq.c
>>> index 2db5bde211..878f2be166 100644
>>> --- a/arch/arm/mach-imx/imx8m/clock_imx8mq.c
>>> +++ b/arch/arm/mach-imx/imx8m/clock_imx8mq.c
>>> @@ -326,16 +326,20 @@ unsigned int mxc_get_clock(enum mxc_clock clk)
>>>  {
>>>  	u32 val;
>>>
>>> -	if (clk == MXC_ARM_CLK)
>>> +	switch(clk) {
>>> +	case MXC_ARM_CLK:
>>>  		return get_root_clk(ARM_A53_CLK_ROOT);
>>> -
>>> -	if (clk == MXC_IPG_CLK) {
>>> +	case MXC_IPG_CLK:
>>>  		clock_get_target_val(IPG_CLK_ROOT, &val);
>>>  		val = val & 0x3;
>>>  		return get_root_clk(AHB_CLK_ROOT) / (val + 1);
>>> +	case MXC_ESDHC_CLK:
>>> +		return get_root_clk(USDHC1_CLK_ROOT);
>>> +	case MXC_ESDHC2_CLK:
>>> +		return get_root_clk(USDHC2_CLK_ROOT);
>>> +	default:
>>> +		return get_root_clk(clk);
>>>  	}
>>> -
>>> -	return get_root_clk(clk);
>>>  }
>>>
>>>  u32 imx_get_uartclk(void)
> 
> 
> --
>      http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
> =}------------------------------------------------ooO--U--Ooo------------{=
>    - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -
> 


-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================


More information about the U-Boot mailing list