[PATCH v2 08/10] arm: K3: sysfw-loader: Add a config_pm_pre_callback()

Faiz Abbas faiz_abbas at ti.com
Wed Jan 29 15:03:04 CET 2020


Hi,

On 29/01/20 5:00 am, Jaehoon Chung wrote:
> On 1/24/20 8:52 PM, Faiz Abbas wrote:
>> System firmware does not guarantee that clocks going out of the device
>> will be stable during power management configuration. There are some
>> DCRC errors when SPL tries to get the next stage during eMMC boot after
>> sysfw pm configuration.
>>
>> Therefore add a config_pm_pre_callback() to switch off the eMMC clock
>> before power management and restart it after it is done.
>>
>> Signed-off-by: Faiz Abbas <faiz_abbas at ti.com>
>> Signed-off-by: Lokesh Vutla <lokeshvutla at ti.com>
>> ---
>>  
>> +#if defined(CONFIG_K3_LOAD_SYSFW)
>> +void k3_mmc_stop_clock(void)
>> +{
>> +	if (spl_boot_device() == BOOT_DEVICE_MMC1) {
>> +		struct mmc *mmc = find_mmc_device(0);
>> +
>> +		if (!mmc)
>> +			return;
>> +
>> +		mmc->saved_clock = mmc->clock;
>> +		mmc_set_clock(mmc, 0, true);
> 
> Use MMC_CLK_DISABLE instead of true.
Ok.
> 
>> +	}
>> +}
>> +
>> +void k3_mmc_restart_clock(void)
>> +{
>> +	if (spl_boot_device() == BOOT_DEVICE_MMC1) {
>> +		struct mmc *mmc = find_mmc_device(0);
>> +
>> +		if (!mmc)
>> +			return;
>> +
>> +		mmc_set_clock(mmc, mmc->saved_clock, false);
> 
> ditto.

Ok.

Thanks,
Faiz


More information about the U-Boot mailing list