[U-Boot] [PATCH v6 00/15] Add PSCI support for Jetson TK1/Tegra124 + CNTFRQ fix

Jan Kiszka
2015-04-14T15:05:37Z

On 2015-04-14 16:50, Stephen Warren wrote:
> On 04/14/2015 08:45 AM, Jan Kiszka wrote:
>> On 2015-04-14 16:40, Ian Campbell wrote:
>>> On Tue, 2015-04-14 at 16:33 +0200, Jan Kiszka wrote:
>>>> On 2015-04-14 16:30, Ian Campbell wrote:
>>>>> On Tue, 2015-04-14 at 16:12 +0200, Jan Kiszka wrote:
>>>>>> On 2015-04-14 16:06, Stephen Warren wrote:
>>>>>>> On 04/14/2015 07:46 AM, Tom Rini wrote:
>>>>>>>> On Mon, Apr 13, 2015 at 06:48:05AM +0200, Jan Kiszka wrote:
>>>>>>>>
>>>>>>>>> Changes in v6:
>>>>>>>>> - rebased over master
>>>>>>>>> - included Thierry's SMMU enabling patch
>>>>>>>>> - moved activation patch at the end so that it can be held back
>>>>>>>>>
>>>>>>>>> This version can also be found at
>>>>>>>>> https://github.com/siemens/u-boot/tree/jetson-tk1-v6.
>>>>>>>>
>>>>>>>> So what level of coordination do we need on applying this series
>>>>>>>> so that
>>>>>>>> kernels (both old and new) can continue to function? And
>>>>>>>> perhaps README
>>>>>>>> updates or similar? Thanks!
>>>>>>>
>>>>>>> Hopefully this series doesn't change anything by default, and simply
>>>>>>> allows people to turn on support for booting kernels in
>>>>>>> non-secure mode
>>>>>>> if they want to? If so, there shouldn't be any co-ordination
>>>>>>> required.
>>>>>>> If it changes the default behaviour, co-ordination is probably
>>>>>>> required,
>>>>>>> and that'd be a bad thing.
>>>>>>
>>>>>> Sorry, forgot to mention: I can't flip the default behaviour to leave
>>>>>> virtualization support off only for the TK1. That's a generic
>>>>>> default.
>>>>>
>>>>> Would enabling it in the compile but adding "bootm_boot_mode=sec"
>>>>> to the
>>>>> default environment (so it isn't used by default) be considered
>>>>> sufficiently backwards compatible?
>>>>
>>>> Can this be done selectively for the TK1 only?
>>>
>>> Well, you might need to add the mechanism for inserting it into the
>>> default bootenv, but I don't think that should be too hard at either the
>>> tegra or more generic levels.
>>
>> Maybe this already works:
>>
>> diff --git a/include/configs/tegra-common-post.h
>> b/include/configs/tegra-common-post.h
>> index c3ad8be..c1f6c24 100644
>> --- a/include/configs/tegra-common-post.h
>> +++ b/include/configs/tegra-common-post.h
>> @@ -56,6 +56,7 @@
>> "fdt_high=ffffffff\0" \
>> "initrd_high=ffffffff\0" \
>> BOOTENV \
>> + "bootm_boot_mode=sec\0" \
>> BOARD_EXTRA_ENV_SETTINGS
>>
>> #if defined(CONFIG_TEGRA20_SFLASH) || defined(CONFIG_TEGRA20_SLINK)
>> || defined(CONFIG_TEGRA114_SPI)
>
> That will add the variable for all boards, even when the feature isn't
> enabled.
>
> You should either:
>
> * Modify jetson-tk1.h to add that value to BOARD_EXTRA_ENV_SETTINGS.

That issue should affect more boards than the TK1.

>
> * Better: Modify tegra-common-post.h to do something like:
>
> #ifdef whatever_enables_the_psci_feature_etc
> #define PSCI_EXTRA_ENV_SETTINGS "bootm_boot_mode=sec\0
> #else
> #define PSCI_EXTRA_ENV_SETTINGS
> #endif
>
> ... and add PSCI_EXTRA_ENV_SETTINGS into the value of
> CONFIG_EXTRA_ENV_SETTINGS.

Yep, makes sense.

Thanks,
Jan

--
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux