[U-Boot] [PATCH 1/2] configs: Resync with savedefconfig
Stephen Warren
swarren at wwwdotorg.org
Sat Sep 10 00:25:21 CEST 2016
On 09/09/2016 03:14 PM, Tom Rini wrote:
> On Fri, Sep 09, 2016 at 03:06:01PM -0600, Stephen Warren wrote:
>> On 09/09/2016 01:11 PM, Tom Rini wrote:
>>> On Fri, Sep 09, 2016 at 01:09:43PM -0600, Stephen Warren wrote:
>>>> On 09/09/2016 01:02 PM, Tom Rini wrote:
>>>>> On Fri, Sep 09, 2016 at 10:21:45AM -0600, Stephen Warren wrote:
>>>>>> On 09/08/2016 07:19 PM, Tom Rini wrote:
>>>>>>> Signed-off-by: Tom Rini <trini at konsulko.com>
>>>>> /bin/bash: ess: command not found
>>>>>>> diff --git a/configs/harmony_defconfig b/configs/harmony_defconfig
>>>>>>
>>>>>>> -CONFIG_USE_PRIVATE_LIBGCC=y
>>>>>>
>>>>>> I assume that's because =y is the default for that now?
>>>>>
>>>>> Yes.
>>>>
>>>>>>> diff --git a/configs/p2771-0000-500_defconfig b/configs/p2771-0000-500_defconfig
>>>>>>
>>>>>>> -CONFIG_TARGET_P2771_0000=y
>>>>>>
>>>>>> I think we need to keep those two. Those two defconfigs are slightly
>>>>>> different configurations of U-Boot's p2771-0000 board/target.
>>>>>
>>>>> OK, then you need to submit a patch to fix the underlying problem, if
>>>>> there is one, really. Keep in mind that what this is, is re-running
>>>>> savedefconfig for each target. So if something odd drops out that means
>>>>> that it wasn't having any effect before.
>>>>
>>>> I don't believe there is any underlying problem. The Kconfig option
>>>> in question is defined in arch/arm/mach-tegra/tegra186/Kconfig, when
>>>> building for p2771-0000-000 the option makes it into .config just
>>>> fine, and the value is used by board/nvidia/p2771-0000/Kconfig.
>>>> Isn't this a bug in savedefconfig? I'm CC'ing Masahiro to get some
>>>> insight.
>>>
>>> It is the default value then and isn't saved is I believe the answer.
>>
>> I don't think it's the default; nothing selects that option and it
>> has no "default y".
>>
>> Or maybe since the value is inside a choice, and is the only entry
>> that's there, that does make it the default? If so, that seems a
>> little fragile; what if someone comes along and adds a new board
>> into the list, and puts it before the existing entry (e.g. to
>> maintain alphabetical sorting). That would changing the meaning of
>> the current defconfig file if the first entry is picked as default.
>> If so, I'm surprised if nobody has had that issue yet.
>
> It's all correct and I think we have had this hit once or twice when
> adding or changing the order. It is a side effect of how Kconfig just
> works.
I'm not convinced. If I apply your patch, and also the following:
> diff --git a/arch/arm/mach-tegra/tegra186/Kconfig b/arch/arm/mach-tegra/tegra186/Kconfig
> index 97cf23f31f80..05f691ed3ede 100644
> --- a/arch/arm/mach-tegra/tegra186/Kconfig
> +++ b/arch/arm/mach-tegra/tegra186/Kconfig
> @@ -7,6 +7,14 @@ if TEGRA186
> choice
> prompt "Tegra186 board select"
>
> +config TARGET_E9999_1234
> + bool "NVIDIA Tegra186 E9999-1234 board"
> + help
> + P2771-0000 is a P3310 CPU board married to a P2597 I/O board. The
> + combination contains SoC, DRAM, eMMC, SD card slot, HDMI, USB
> + micro-B port, Ethernet, USB3 host port, SATA, PCIe, and two GPIO
> + expansion headers.
> +
> config TARGET_P2771_0000
> bool "NVIDIA Tegra186 P2771-0000 board"
> help
... then I get a build failure for p2771-0000-000_defconfig since
.config ends up containing CONFIG_TARGET_E9999_1234 rather than
CONFIG_TARGET_P2771_0000. I think we want to avoid that don't we? If we
don't, savedefconfig in the face of choice options seems rather too
fragile, or we need to force people to update *_defconfig any time any
Kconfig choice is edited.
More information about the U-Boot
mailing list