[U-Boot] [PATCH 1/2] x86: x86-common.h: Add CONFIG_BOOTDELAY

Stefan Roese
2016-01-28T16:13:06Z

Hi Bin,

(added Simon to Cc)

On 26.01.2016 07:48, Bin Meng wrote:
> On Tue, Jan 19, 2016 at 2:19 PM, Bin Meng <bmeng.cn@gmail.com> wrote:
>> On Mon, Jan 18, 2016 at 9:49 PM, Stefan Roese <sr@denx.de> wrote:
>>> Without this CONFIG_BOOTDELAY, autobooting does not work at all. As
>>> autoboot_command() from common/* will not get called. So lets define
>>> CONFIG_BOOTDELAY, so that auto-booting works on x86.
>>>
>>> Signed-off-by: Stefan Roese <sr@denx.de>
>>> Cc: Miao Yan <yanmiaobest@gmail.com>
>>> Cc: Bin Meng <bmeng.cn@gmail.com>
>>> Cc: Simon Glass <sjg@chromium.org>
>>> ---
>>> include/configs/x86-common.h | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>
>> Acked-by: Bin Meng <bmeng.cn@gmail.com>
>
> Sorry, this patch does not build for efi-x86.
>
> x86: + efi-x86
> +../common/autoboot.c: In function 'process_fdt_options':
> +../common/autoboot.c:296:36: error: 'CONFIG_SYS_TEXT_BASE' undeclared
> (first use in this function)
> + setenv_addr("kernaddr", (void *)(CONFIG_SYS_TEXT_BASE + addr));
> + ^
> +../common/autoboot.c:296:36: note: each undeclared identifier is
> reported only once for each function it appears in
> +make[2]: *** [common/autoboot.o] Error 1
> +make[1]: *** [common] Error 2
> +make: *** [sub-make] Error 2
>
> Could you please fix this? Sorry I did not run buildman earlier.

I'm a bit hesitant on how to fix this. As I don't really know this
"efi-x86" target in detail. Is this code in process_fdt_options()
really needed for this target? To configure the env variables
"kernaddr" and "rootaddr" dynamically from the DT properties
"kernel-offset" and "rootdisk-offset". I can't find any references
to these DT properties anywhere?

Simon, you introduced this env variable handling with the patch
[fdt: Set kernaddr if fdt indicates a kernel is present] (git ID
fcabc24f) in October 2012.

Perhaps its best to assign TEXT_BASE to 0 if its not defined at
all? Or is this in general the correct value for the "efi-x86"
target and should be set specifically for it?

Thanks,
Stefan