imx8qxp mek: Booting mainline kernel with mainline U-Boot

Lokesh Vutla lokeshvutla at ti.com
Thu Jan 23 15:07:00 CET 2020



On 23/01/20 7:23 PM, Oliver Graute wrote:
> On 17/01/20, Lokesh Vutla wrote:
>>>>> Just wondering if anyone else managed to boot mainline U-Boot with
>>>>> mainline kernel on i.MX8QXP.
>>>> I can test it for you with the revert patch for f0cc4eae9a applied tomorrow.
>>>
>>> Adding in Lokesh as he nak'd the revert before because that would break
>>> other platforms and I chimed in saying that breaking one set of
>>> platforms to unbreak another set of platforms isn't a trade-off I like.
>>>
>>
>> Right, the mentioned patch f0cc4eae9a1 ("core: device: use dev_power_domain_on")
>> checks for power_domain return status when dm core tries to enable pd during
>> probe. If power domain enabling is failed then no point proceeding further to probe.
>>
>> There are 2 ways to solve this:
>> 1) Drop the return check like below. Which IMHO is a hack:
>>
>> diff --git a/drivers/core/device.c b/drivers/core/device.c
>> index 9f39218423..c80ce16fbd 100644
>> --- a/drivers/core/device.c
>> +++ b/drivers/core/device.c
>> @@ -432,11 +432,8 @@ int device_probe(struct udevice *dev)
>>
>>  	if (CONFIG_IS_ENABLED(POWER_DOMAIN) && dev->parent &&
>>  	    (device_get_uclass_id(dev) != UCLASS_POWER_DOMAIN) &&
>> -	    !(drv->flags & DM_FLAG_DEFAULT_PD_CTRL_OFF)) {
>> -		ret = dev_power_domain_on(dev);
>> -		if (ret)
>> -			goto fail;
>> -	}
>> +	    !(drv->flags & DM_FLAG_DEFAULT_PD_CTRL_OFF))
>> +		dev_power_domain_on(dev);
>>
>>  	ret = uclass_pre_probe_device(dev);
>>  	if (ret)
> 
> ok very thx, this works for me together with fresh a compiled scfw

This is because enabling power domain is failed and the failure is being
ignored. Ignorance of such issues can lead to unexpected behavior like the one
below :)

> (1.2.5) from advantech. Now I'am running into this phy issue:

I am not really an expert here. Peng should be able to comment on this.

Thanks and regards,
Lokesh

> 
> U-Boot 2020.01-00001-g7b3e47a09f (Jan 23 2020 - 14:30:03 +0100)
> 
> CPU:   NXP i.MX8QM RevB A53 at 1200 MHz
> 
> Model: Advantech iMX8QM Qseven series
> Board: ROM-7720-A1 4GB
> Build: SCFW 494c97f3, SECO-FW 5ea79733, ATF d6451cc
> Boot:  SD2
> DRAM:  4 GiB
> MMC:   FSL_SDHC: 0, FSL_SDHC: 1, FSL_SDHC: 2
> Loading Environment from MMC... *** Warning - bad CRC, using default environment
> 
> In:    serial at 5a060000
> Out:   serial at 5a060000
> Err:   serial at 5a060000
> Net:   Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> Can't find FEC0 clk rate: -19
> Could not get PHY for FEC1: addr 1
> No ethernet found.
> 
> Hit any key to stop autoboot:  0 
> switch to partitions #0, OK
> mmc2 is current device
> ** No partition table - mmc 2 **
> ** No partition table - mmc 2 **
> Booting from net ...
> Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> No ethernet found.
> Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> Could not get PHY for FEC0: addr 0
> No ethernet found.
> Could not get PHY for FEC0: addr 0
> 
> Best Regards,
> 
> Oliver
> 


More information about the U-Boot mailing list