[U-Boot] [PATCH 1/1] x86: qemu: do not build car.o with start64.o
Heinrich Schuchardt
xypron.glpk at gmx.de
Tue Jun 19 06:10:33 UTC 2018
On 06/19/2018 04:37 AM, Bin Meng wrote:
> Hi Heinrich,
>
> On Tue, Jun 12, 2018 at 11:50 PM, Heinrich Schuchardt
> <xypron.glpk at gmx.de> wrote:
>> car.o can only be used with start.o, not with start64.o.
>>
>> So on qemu 64bit it should only be built for 32bit SPL but not for u-boot.
>>
>> Without this patch but with an unrelated pending patch
>> ("x86: Add 64-bit setjmp/longjmp implementation") the
>> following error occurred for qemu-x86_64_defconfig:
>>
>
> I don't understand why Ivan's setmp/longjmp patch triggers this build
> issue. Can you elaborate?
Hello Bin,
it was what I observed.
As start.S calls car_init() but start_64.S does not the linker could
eliminate car.o on x86_64. Why it does not eliminate it with the patch I
do not know.
But I still think that building car.o on 64bit does not make sense.
Best regards
Heinrich
>
>> arch/x86/cpu/built-in.o: In function `car_init':
>> arch/x86/cpu/qemu/car.S:25: undefined reference to `car_init_ret'
>>
>> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
>> ---
>> arch/x86/cpu/qemu/Makefile | 5 ++++-
>> 1 file changed, 4 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/x86/cpu/qemu/Makefile b/arch/x86/cpu/qemu/Makefile
>> index e5ea92545e3..b1daffd4a32 100644
>> --- a/arch/x86/cpu/qemu/Makefile
>> +++ b/arch/x86/cpu/qemu/Makefile
>> @@ -2,8 +2,11 @@
>> #
>> # Copyright (C) 2015, Bin Meng <bmeng.cn at gmail.com>
>>
>> +ifndef CONFIG_$(SPL_)X86_64
>> +obj-y += car.o
>> +endif
>> ifndef CONFIG_EFI_STUB
>> -obj-y += car.o dram.o
>> +obj-y += dram.o
>> endif
>> obj-y += qemu.o
>> obj-$(CONFIG_QFW) += cpu.o e820.o
>> --
>
> BTW: the patch does not apply cleanly on latest u-boot/master. Please
> rebase. Thanks!
>
> Regards,
> Bin
>
More information about the U-Boot
mailing list