All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH v2 1/1] x86: provide CONFIG_BUILD_ROM
@ 2017-09-19 17:44 Heinrich Schuchardt
  2017-09-25  2:13 ` Simon Glass
  0 siblings, 1 reply; 3+ messages in thread
From: Heinrich Schuchardt @ 2017-09-19 17:44 UTC (permalink / raw)
  To: u-boot

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. To make the change as smooth as
possible 'export BUILD_ROM' is still usable but removed from the
documentation.

This option depends on CONFIG_X86 and is selected in
qemu-x86_defconfig and qemu-x86_64_defconfig.

Cc: Bin Meng <bmeng.cn@gmail.com>
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
v2
	Enable CONFIG_BUILD_ROM for qemu-x86_64_defconfig
	as suggested by Bin.
	Fix typos.
	Remove 'default n'
---
 Kconfig                       | 10 ++++++++++
 Makefile                      |  2 +-
 configs/qemu-x86_64_defconfig |  1 +
 configs/qemu-x86_defconfig    |  1 +
 doc/README.x86                |  2 +-
 5 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/Kconfig b/Kconfig
index 238fa3e1ed..989d81c04c 100644
--- a/Kconfig
+++ b/Kconfig
@@ -158,6 +158,15 @@ 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"
+	depends on X86
+	help
+	  This option allows to build a ROM version of 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 details.
+
 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_64_defconfig b/configs/qemu-x86_64_defconfig
index 67e9a45fbc..a6a14a8de9 100644
--- a/configs/qemu-x86_64_defconfig
+++ b/configs/qemu-x86_64_defconfig
@@ -1,4 +1,5 @@
 CONFIG_X86=y
+CONFIG_BUILD_ROM=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
 CONFIG_SYS_MALLOC_F_LEN=0x1000
diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
index 7ce97ff091..346abf621d 100644
--- a/configs/qemu-x86_defconfig
+++ b/configs/qemu-x86_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 c96a22cb08..226c9af281 100644
--- a/doc/README.x86
+++ b/doc/README.x86
@@ -82,7 +82,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.
 
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [U-Boot] [PATCH v2 1/1] x86: provide CONFIG_BUILD_ROM
  2017-09-19 17:44 [U-Boot] [PATCH v2 1/1] x86: provide CONFIG_BUILD_ROM Heinrich Schuchardt
@ 2017-09-25  2:13 ` Simon Glass
  2017-10-07  3:53   ` Bin Meng
  0 siblings, 1 reply; 3+ messages in thread
From: Simon Glass @ 2017-09-25  2:13 UTC (permalink / raw)
  To: u-boot

Hi Heinrich,

On 19 September 2017 at 11:44, Heinrich Schuchardt <xypron.glpk@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. To make the change as smooth as
> possible 'export BUILD_ROM' is still usable but removed from the
> documentation.

I don' think you cancan deprecate that, since we need it for the build
system to control what is built. Most people won't have the binary
blobs available, and buildman needs to succeed for all boards.

So I think you are adding an option which can never be enabled in
mainline except for qemu. I think you should change the wording here.

>
> This option depends on CONFIG_X86 and is selected in
> qemu-x86_defconfig and qemu-x86_64_defconfig.
>
> Cc: Bin Meng <bmeng.cn@gmail.com>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
> ---
> v2
>         Enable CONFIG_BUILD_ROM for qemu-x86_64_defconfig
>         as suggested by Bin.
>         Fix typos.
>         Remove 'default n'
> ---
>  Kconfig                       | 10 ++++++++++
>  Makefile                      |  2 +-
>  configs/qemu-x86_64_defconfig |  1 +
>  configs/qemu-x86_defconfig    |  1 +
>  doc/README.x86                |  2 +-
>  5 files changed, 14 insertions(+), 2 deletions(-)
>
> diff --git a/Kconfig b/Kconfig
> index 238fa3e1ed..989d81c04c 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -158,6 +158,15 @@ 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"
> +       depends on X86
> +       help
> +         This option allows to build a ROM version of 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 details.
> +
>  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_64_defconfig b/configs/qemu-x86_64_defconfig
> index 67e9a45fbc..a6a14a8de9 100644
> --- a/configs/qemu-x86_64_defconfig
> +++ b/configs/qemu-x86_64_defconfig
> @@ -1,4 +1,5 @@
>  CONFIG_X86=y
> +CONFIG_BUILD_ROM=y
>  CONFIG_SPL_LIBCOMMON_SUPPORT=y
>  CONFIG_SPL_LIBGENERIC_SUPPORT=y
>  CONFIG_SYS_MALLOC_F_LEN=0x1000
> diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
> index 7ce97ff091..346abf621d 100644
> --- a/configs/qemu-x86_defconfig
> +++ b/configs/qemu-x86_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 c96a22cb08..226c9af281 100644
> --- a/doc/README.x86
> +++ b/doc/README.x86
> @@ -82,7 +82,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

I think we should keep this documentation and show both options.

>
>  This tells the Makefile to build u-boot.rom as a target.
>
> --
> 2.11.0
>

Regards,
Simon

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [U-Boot] [PATCH v2 1/1] x86: provide CONFIG_BUILD_ROM
  2017-09-25  2:13 ` Simon Glass
@ 2017-10-07  3:53   ` Bin Meng
  0 siblings, 0 replies; 3+ messages in thread
From: Bin Meng @ 2017-10-07  3:53 UTC (permalink / raw)
  To: u-boot

Hi Heinrich,

On Mon, Sep 25, 2017 at 10:13 AM, Simon Glass <sjg@chromium.org> wrote:
> Hi Heinrich,
>
> On 19 September 2017 at 11:44, Heinrich Schuchardt <xypron.glpk@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. To make the change as smooth as
>> possible 'export BUILD_ROM' is still usable but removed from the
>> documentation.
>
> I don' think you cancan deprecate that, since we need it for the build
> system to control what is built. Most people won't have the binary
> blobs available, and buildman needs to succeed for all boards.
>
> So I think you are adding an option which can never be enabled in
> mainline except for qemu. I think you should change the wording here.
>
>>
>> This option depends on CONFIG_X86 and is selected in
>> qemu-x86_defconfig and qemu-x86_64_defconfig.
>>
>> Cc: Bin Meng <bmeng.cn@gmail.com>
>> Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
>> ---
>> v2
>>         Enable CONFIG_BUILD_ROM for qemu-x86_64_defconfig
>>         as suggested by Bin.
>>         Fix typos.
>>         Remove 'default n'
>> ---
>>  Kconfig                       | 10 ++++++++++
>>  Makefile                      |  2 +-
>>  configs/qemu-x86_64_defconfig |  1 +
>>  configs/qemu-x86_defconfig    |  1 +
>>  doc/README.x86                |  2 +-
>>  5 files changed, 14 insertions(+), 2 deletions(-)
>>
>> diff --git a/Kconfig b/Kconfig
>> index 238fa3e1ed..989d81c04c 100644
>> --- a/Kconfig
>> +++ b/Kconfig
>> @@ -158,6 +158,15 @@ 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"
>> +       depends on X86
>> +       help
>> +         This option allows to build a ROM version of 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 details.
>> +
>>  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_64_defconfig b/configs/qemu-x86_64_defconfig
>> index 67e9a45fbc..a6a14a8de9 100644
>> --- a/configs/qemu-x86_64_defconfig
>> +++ b/configs/qemu-x86_64_defconfig
>> @@ -1,4 +1,5 @@
>>  CONFIG_X86=y
>> +CONFIG_BUILD_ROM=y
>>  CONFIG_SPL_LIBCOMMON_SUPPORT=y
>>  CONFIG_SPL_LIBGENERIC_SUPPORT=y
>>  CONFIG_SYS_MALLOC_F_LEN=0x1000
>> diff --git a/configs/qemu-x86_defconfig b/configs/qemu-x86_defconfig
>> index 7ce97ff091..346abf621d 100644
>> --- a/configs/qemu-x86_defconfig
>> +++ b/configs/qemu-x86_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 c96a22cb08..226c9af281 100644
>> --- a/doc/README.x86
>> +++ b/doc/README.x86
>> @@ -82,7 +82,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
>
> I think we should keep this documentation and show both options.
>

Can you please respin to address Simon's comments if you would like to
get this mainline?

Regards,
Bin

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-10-07  3:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-19 17:44 [U-Boot] [PATCH v2 1/1] x86: provide CONFIG_BUILD_ROM Heinrich Schuchardt
2017-09-25  2:13 ` Simon Glass
2017-10-07  3:53   ` Bin Meng

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.