Hi, Ard, On Wed, Aug 17, 2022 at 4:36 PM Ard Biesheuvel <ardb@xxxxxxxxxx> wrote: > > On Wed, 17 Aug 2022 at 09:59, Xi Ruoyao <xry111@xxxxxxxxxxx> wrote: > > > > On Wed, 2022-08-17 at 09:49 +0200, Ard Biesheuvel wrote: > > > > > > > > > > > > I am trying to port the generic EFI zboot support to LoongArch, but I > > > am running into a problem: > > > > > > The zboot EFI image consists of > > > > > > zImage.o, created with objcopy -O binary > > > zboot-header.o, created using the assembler > > > libstub.a, created as usual > > > > > > This results in errors such as > > > arch/loongarch/boot/zboot-header.o: can't link different ABI object. > > > failed to merge target specific data of file > > > arch/loongarch/boot/zboot-header.o > > > > > > which I think is caused by the fact that objcopy does not set the LP64 > > > soft float flags on the ELF object it creates. > > > > > > Do you see any way around this limitation? > > > > Update to Binutils-2.39 > > (https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=83c5f3a) > > > > Thanks, that worked. I can now build the LoongArch EFI stub and the > zboot decompressor. > > Unfortunately, while the normal EFI stub kernel boots ok in QEMU/edk2, > the zboot one crashes with > > CRMD 0xB0 > PRMD 0x4 > ECFG 0x800 > ESTAT 0x40000 > ERA 0x17B87719C > BADV 0x17C634000 > BADI 0x381031A5 > PC 0x00017B87719C > > or > > CRMD 0xB0 > PRMD 0x4 > ECFG 0x800 > ESTAT 0x40000 > ERA 0x17B138D10 > BADV 0x17C3CC000 > BADI 0x294000F7 > PC 0x00017B138D10 Bibo is a key developer of QEMU/EDK2, maybe he can give some help. Huacai