[U-Boot] [RFC PATCH v1 0/1] Migrate IMAGE_FORMAT_LEGACY to Kconfig

Alex Kiernan alex.kiernan at gmail.com
Fri Apr 20 09:46:00 UTC 2018


On Fri, Apr 20, 2018 at 5:23 AM, Alex Kiernan <alex.kiernan at gmail.com> wrote:
> On Thu, Apr 19, 2018 at 8:39 PM, Tom Rini <trini at konsulko.com> wrote:
>> On Thu, Apr 19, 2018 at 04:52:30AM +0000, Alex Kiernan wrote:
>>>
>>> On the face of it, this is a straightforward moveconfig, but because
>>> of how CONFIG_FIT_SIGNATURE, CONFIG_IMAGE_FORMAT_LEGACY and
>>> CONFIG_DISABLE_IMAGE_LEGACY interacted when you enabled
>>> CONFIG_FIT_SIGNATURE, you got CONFIG_IMAGE_FORMAT_LEGACY disabled
>>> immediately unless you had some way of explicitly enabling it
>>> elsewhere.
>>>
>>> Kconfig doesn't give us this - CONFIG_IMAGE_FORMAT_LEGACY starts off
>>> enabled, CONFIG_FIT_SIGNATURE starts off disabled and if you enable
>>> CONFIG_FIT_SIGNATURE then CONFIG_IMAGE_FORMAT_LEGACY stays enabled.
>>>
>>> Is there some way to preserve the existing behaviour through Kconfig
>>> that I've failed to figure out?
>>
>> When I do these, it's a multi-step moveconfig.py that goes something
>> like:
>> - Introduce FOO (no deps)
>> - moveconfig.py -y it.
>> - Introduce BAR (no deps)
>> - moveconfig.py -y it.
>> - for FILE in configs/*defconfig;do grep -q FOO $FILE || echo '#
>>   CONFIG_FOO is not set' >> $FILE;done
>> - Repeat the for loop but for BAR.
>> - Introduce deps
>> - moveconfig.py -sC
>> - Build before/after for a few boards that I know are tricky, use
>>   buildman -SCvel/Ssdel to confirm size changes didn't happen.
>> - If good, world-build checking sizes.
>>
>> And in some cases like this particular one, there might need to be an
>> initial first comment to invert the logic, and as that can be tricky
>> when adding a new option that _should_ be default y, first I add it
>> without default y, moveconfig.py -y it, for loop like above, then add
>> default y and moveconfig.py -s.
>>
>
> Thanks, let me give that a go...
>

Having gone through that piece by piece, I'm pretty sure that
moveconfig has actually done the right thing. We've these
configurations which enable FIT_SIGNATURE without IMAGE_FORMAT_LEGACY:

am335x_boneblack_vboot_defconfig
conga-qeval20-qa3-e3845_defconfig
conga-qeval20-qa3-e3845-internal-uart_defconfig
controlcenterdc_defconfig
dfi-bt700-q7x-151_defconfig
minnowmax_defconfig
sandbox64_defconfig
sandbox_defconfig
sandbox_flattree_defconfig
sandbox_noblk_defconfig
sandbox_spl_defconfig
som-db5800-som-6867_defconfig
theadorable-x86-conga-qa3-e3845_defconfig
theadorable-x86-conga-qa3-e3845-pcie-x4_defconfig
theadorable-x86-dfi-bt700_defconfig

And checking each of them, they're IMAGE_FORMAT_LEGACY disabled after
the conversion.

I'll hang fire on sending a non-RFC v2 to see if there's any more comments.

-- 
Alex Kiernan


More information about the U-Boot mailing list