[PATCH 20/26] arm: mach-k3: do board config for PM and RM only if supported

Tero Kristo t-kristo at ti.com
Wed Nov 18 11:23:20 CET 2020


On 17/11/2020 11:22, Tero Kristo wrote:
> On 17/11/2020 08:14, Lokesh Vutla wrote:
>>
>>
>> On 16/11/20 5:57 pm, Tero Kristo wrote:
>>> On 16/11/2020 06:23, Lokesh Vutla wrote:
>>>>
>>>>
>>>> On 10/11/20 2:35 pm, Tero Kristo wrote:
>>>>> If the raw PM support is built in, we are operating in the split
>>>>> firmware approach mode where RM and PM support is not available. In 
>>>>> this
>>>>> case, skip the board config for these two.
>>>>>
>>>>> Signed-off-by: Tero Kristo <t-kristo at ti.com>
>>>>> ---
>>>>>    arch/arm/mach-k3/sysfw-loader.c | 4 ++++
>>>>>    1 file changed, 4 insertions(+)
>>>>>
>>>>> diff --git a/arch/arm/mach-k3/sysfw-loader.c 
>>>>> b/arch/arm/mach-k3/sysfw-loader.c
>>>>> index 78c158c63f..154d2df049 100644
>>>>> --- a/arch/arm/mach-k3/sysfw-loader.c
>>>>> +++ b/arch/arm/mach-k3/sysfw-loader.c
>>>>> @@ -158,11 +158,13 @@ static void k3_sysfw_configure_using_fit(void 
>>>>> *fit,
>>>>>                  ret);
>>>>>          /* Apply power/clock (PM) specific configuration to SYSFW */
>>>>> +#ifdef CONFIG_CLK_TI_SCI
>>>>
>>>> IMHO, using CONFIG_CLK_TI_SCI is hack here. Can we showhow derive this
>>>> information based on the images loaded in FIT?
>>>
>>> At this point we have only loaded the sysfw image. DM image against 
>>> which we
>>
>> This sysfw.itb contains all the board configurations?
>> If yes, then we are adding board configurations in sysfw.itb that does 
>> not
>> belong here.
>>
>> If no, then can we check for the entries before loading?
> 
> Technically feasible yes, let me check with Dave offline what we can 
> craft for this (the image generation part was done by him); the firmware 
> image generator does something along these lines already, basically 
> splitting the cfg portions to different images.

Ok, after some offline discussions, we ended up with a solution that for 
the sysfw_loader portion at least we have to use a config option, as 
otherwise the build process becomes completely broken with multiple 
cross dependencies towards/between external build tools etc... To make 
things a bit more clear though, I'll add a new config option called 
CONFIG_TI_DM_FW, which would indicate that we are using a separate DM 
firmware image in the system. This avoids overloading the 
CONFIG_CLK_TI_SCI or something else, even if these two effectively 
follow each other in their value.

I'll re-work the relevant patches around this and re-post.

-Tero

> 
> -Tero
> 
>>
>> Thanks and regards,
>> Lokesh
>>
>>> could check this will only be loaded during A72 SPL FIT loading 
>>> process, and it
>>> will only happen later.
>>>
>>> -Tero
>>>
>>>>
>>>> Thanks and regards,
>>>> Lokesh
>>>>
>>>>>        ret = board_ops->board_config_pm(ti_sci,
>>>>>                         (u64)(u32)cfg_fragment_addr,
>>>>>                         (u32)cfg_fragment_size);
>>>>>        if (ret)
>>>>>            panic("Failed to set board PM configuration (%d)\n", ret);
>>>>> +#endif
>>>>>          /* Extract resource management (RM) specific configuration 
>>>>> from FIT */
>>>>>        ret = fit_get_data_by_name(fit, images, SYSFW_CFG_RM,
>>>>> @@ -171,12 +173,14 @@ static void k3_sysfw_configure_using_fit(void 
>>>>> *fit,
>>>>>            panic("Error accessing %s node in FIT (%d)\n", 
>>>>> SYSFW_CFG_RM,
>>>>>                  ret);
>>>>>    +#ifdef CONFIG_CLK_TI_SCI
>>>>>        /* Apply resource management (RM) configuration to SYSFW */
>>>>>        ret = board_ops->board_config_rm(ti_sci,
>>>>>                         (u64)(u32)cfg_fragment_addr,
>>>>>                         (u32)cfg_fragment_size);
>>>>>        if (ret)
>>>>>            panic("Failed to set board RM configuration (%d)\n", ret);
>>>>> +#endif
>>>>>          /* Extract security specific configuration from FIT */
>>>>>        ret = fit_get_data_by_name(fit, images, SYSFW_CFG_SEC,
>>>>>
>>>
>>> -- 
> 

--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


More information about the U-Boot mailing list