[U-Boot] [PATCH 1/1] x86: provide CONFIG_BUILD_ROM
Bin Meng
bmeng.cn at gmail.com
Tue Sep 19 07:22:54 UTC 2017
Hi Heinrich,
On Tue, Sep 19, 2017 at 2:15 PM, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
> On 09/19/2017 07:54 AM, Bin Meng wrote:
>> Hi Heinrich,
>>
>> On Sun, Sep 17, 2017 at 7:57 PM, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>>> Up to now we depended on an exported variable to build u-boot.rom.
>>> What we build should be specified by the configuration file.
>>>
>>> With this patch the export variable is deprecated and replaced by the
>>> Kconfig option CONFIG_BUILD_ROM.
>>>
>>> This option depends on CONFIG_X86 and is selected in qemu-x86_defconfig.
>>>
>>> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
>>> ---
>>> Kconfig | 10 ++++++++++
>>> Makefile | 2 +-
>>> configs/qemu-x86_defconfig | 1 +
>>> doc/README.x86 | 2 +-
>>> 4 files changed, 13 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/Kconfig b/Kconfig
>>> index 238fa3e1ed..7b782298bf 100644
>>> --- a/Kconfig
>>> +++ b/Kconfig
>>> @@ -158,6 +158,16 @@ config PHYS_64BIT
>>> This can be used not only for 64bit SoCs, but also for
>>> large physical address extention on 32bit SoCs.
>>>
>>> +config BUILD_ROM
>>> + bool "Build U-BOOT as BIOS replacement"
>>
>> nits: U-Boot
>>
>>> + depends on X86
>>> + default n
>>
>> nits: this is not needed as 'n' is the default one.
>>
>>> + help
>>> + This option allows to BUILD a ROM version of U-BOOT.
>>
>> nits: U-Boot
>>
>>> + The build process generally requires several binary blobs
>>> + which are not shipped in the U-Boot source tree.
>>> + Please, see doc/README.x86 for detials.
>>> +
>>> endmenu # General setup
>>>
>>> menu "Boot images"
>>> diff --git a/Makefile b/Makefile
>>> index 8250b3409a..50fe0003f5 100644
>>> --- a/Makefile
>>> +++ b/Makefile
>>> @@ -796,7 +796,7 @@ ALL-$(CONFIG_REMAKE_ELF) += u-boot.elf
>>> ALL-$(CONFIG_EFI_APP) += u-boot-app.efi
>>> ALL-$(CONFIG_EFI_STUB) += u-boot-payload.efi
>>>
>>> -ifneq ($(BUILD_ROM),)
>>> +ifneq ($(BUILD_ROM)$(CONFIG_BUILD_ROM),)
>>> ALL-$(CONFIG_X86_RESET_VECTOR) += u-boot.rom
>>> endif
>>>
>>> diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
>>> index d84e1d7dc9..60c2e3c404 100644
>>> --- a/configs/qemu-x86_defconfig
>>> +++ b/configs/qemu-x86_defconfig
>>
>> We should also enable this on qemu-x86_64_defconfig.
>>
>>> @@ -1,4 +1,5 @@
>>> CONFIG_X86=y
>>> +CONFIG_BUILD_ROM=y
>>> CONFIG_MAX_CPUS=2
>>> CONFIG_DEFAULT_DEVICE_TREE="qemu-x86_i440fx"
>>> CONFIG_SMP=y
>>> diff --git a/doc/README.x86 b/doc/README.x86
>>> index c542a6965c..4971f4b95e 100644
>>> --- a/doc/README.x86
>>> +++ b/doc/README.x86
>>> @@ -81,7 +81,7 @@ shipped in the U-Boot source tree. Due to this reason, the u-boot.rom build is
>>> not turned on by default in the U-Boot source tree. Firstly, you need turn it
>>> on by enabling the ROM build:
>>>
>>> -$ export BUILD_ROM=y
>>> +CONFIG_BUILD_ROM=y
>>>
>>> This tells the Makefile to build u-boot.rom as a target.
>>>
>>> --
>>
>> For non-QEMU targets, this requires an additional step after we do
>> 'make xxx_defconfig', I am not sure if that's convenient.
>
> You still can export BUILD_ROM.
>
OK.
> Would you prefer to make CONFIG_BUILD_ROM 'default y'?
> Probably you always want to build u-boot.rom for an X86 system.
>
No. That will break buildman testing as the required binary blobs are
not in the U-Boot tree.
>> Simon, what do you think about this patch?
Regards,
Bin
More information about the U-Boot
mailing list