qemu-riscv
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-riscv] [Qemu-devel] [PULL 33/34] roms: Add OpenSBI version 0.3


From: Alistair Francis
Subject: Re: [Qemu-riscv] [Qemu-devel] [PULL 33/34] roms: Add OpenSBI version 0.3
Date: Fri, 28 Jun 2019 09:12:45 -0700

On Fri, Jun 28, 2019 at 2:47 AM Jonathan Cameron
<address@hidden> wrote:
>
> On Thu, 27 Jun 2019 08:20:10 -0700
> Palmer Dabbelt <address@hidden> wrote:
>
> > From: Alistair Francis <address@hidden>
> >
> > Add OpenSBI version 0.3 as a git submodule and as a prebult binary.
> >
> > Signed-off-by: Alistair Francis <address@hidden>
> > Reviewed-by: Bin Meng <address@hidden>
> > Tested-by: Bin Meng <address@hidden>
> > Signed-off-by: Palmer Dabbelt <address@hidden>
>
> I sent a late bug report on this one.. Hence posting here as well
> to make sure it doesn't fall through the cracks!
>
> Right now you can't actually build the opensbi64-virt firmware
> due to cut and paste error in the Makefile.

Ah, thanks for the bug report.

@Palmer Dabbelt I'm just going to send you a fixup commit. Can you
apply it to your tree and send a PRv2?

>
> As a side note, I hit this because OpenSBI 0.3 is resulting in a login
> loop on a debian test image and the current upstream isn't.  I haven't
> debugged yet, but someone else may hit that problem.

Unfortunately OpenSBI 0.3 is a little old now, in saying that I didn't
know there are bugs in it? Which kernel are you using?

Alistair

>
> Thanks,
>
> Jonathan
>
> > diff --git a/roms/Makefile b/roms/Makefile
> > index 078d3fb70563..562ed726fd6b 100644
> > --- a/roms/Makefile
> > +++ b/roms/Makefile
> > @@ -37,6 +37,8 @@ find-cross-prefix = $(subst gcc,,$(notdir $(call 
> > find-cross-gcc,$(1))))
> >  powerpc64_cross_prefix := $(call find-cross-prefix,powerpc64)
> >  powerpc_cross_prefix := $(call find-cross-prefix,powerpc)
> >  x86_64_cross_prefix := $(call find-cross-prefix,x86_64)
> > +riscv32_cross_prefix := $(call find-cross-prefix,riscv32)
> > +riscv64_cross_prefix := $(call find-cross-prefix,riscv64)
> >
> >  # tag our seabios builds
> >  SEABIOS_EXTRAVERSION="-prebuilt.qemu.org"
> > @@ -52,18 +54,21 @@ EDK2_EFIROM = edk2/BaseTools/Source/C/bin/EfiRom
> >  default:
> >       @echo "nothing is build by default"
> >       @echo "available build targets:"
> > -     @echo "  bios           -- update bios.bin (seabios)"
> > -     @echo "  vgabios        -- update vgabios binaries (seabios)"
> > -     @echo "  sgabios        -- update sgabios binaries"
> > -     @echo "  pxerom         -- update nic roms (bios only)"
> > -     @echo "  efirom         -- update nic roms (bios+efi)"
> > -     @echo "  slof           -- update slof.bin"
> > -     @echo "  skiboot        -- update skiboot.lid"
> > -     @echo "  u-boot.e500    -- update u-boot.e500"
> > -     @echo "  u-boot.sam460  -- update u-boot.sam460"
> > -     @echo "  efi            -- update UEFI (edk2) platform firmware"
> > -     @echo "  clean          -- delete the files generated by the 
> > previous" \
> > -                               "build targets"
> > +     @echo "  bios               -- update bios.bin (seabios)"
> > +     @echo "  vgabios            -- update vgabios binaries (seabios)"
> > +     @echo "  sgabios            -- update sgabios binaries"
> > +     @echo "  pxerom             -- update nic roms (bios only)"
> > +     @echo "  efirom             -- update nic roms (bios+efi)"
> > +     @echo "  slof               -- update slof.bin"
> > +     @echo "  skiboot            -- update skiboot.lid"
> > +     @echo "  u-boot.e500        -- update u-boot.e500"
> > +     @echo "  u-boot.sam460      -- update u-boot.sam460"
> > +     @echo "  efi                -- update UEFI (edk2) platform firmware"
> > +     @echo "  opensbi32-virt     -- update OpenSBI for 32-bit virt machine"
> > +     @echo "  opensbi64-virt     -- update OpenSBI for 64-bit virt machine"
> > +     @echo "  opensbi64-sifive_u -- update OpenSBI for 64-bit sifive_u 
> > machine"
> > +     @echo "  clean              -- delete the files generated by the 
> > previous" \
> > +                                   "build targets"
> >
> >  bios: build-seabios-config-seabios-128k build-seabios-config-seabios-256k
> >       cp seabios/builds/seabios-128k/bios.bin ../pc-bios/bios.bin
> > @@ -162,6 +167,24 @@ skiboot:
> >  efi: edk2-basetools
> >       $(MAKE) -f Makefile.edk2
> >
> > +opensbi32-virt:
> > +     $(MAKE) -C opensbi \
> > +             CROSS_COMPILE=$(riscv32_cross_prefix) \
> > +             PLATFORM="qemu/virt"
> > +     cp opensbi/build/platform/qemu/virt/firmware/fw_jump.bin 
> > ../pc-bios/opensbi-riscv32-virt-fw_jump.bin
> > +
> > +opensbi64-virt:
> > +     $(MAKE) -C opensbi \
> > +             CROSS_COMPILE=$(riscv64_cross_prefix) \
> > +             PLATFORM="qemu/virt"
> > +     cp opensbi/build/platform/qemu/virt/firmware/fw_jump.bin 
> > ../pc-bios/opensbi-riscv64-virt-fw_jump.bin
> > +
> > +opensbi64-virt:
>
> Cut and paste buglet.  opensbi64-sifive_u
>
> > +     $(MAKE) -C opensbi \
> > +             CROSS_COMPILE=$(riscv64_cross_prefix) \
> > +             PLATFORM="qemu/sifive_u"
> > +     cp opensbi/build/platform/qemu/virt/firmware/fw_jump.bin 
> > ../pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin
> > +
> >  clean:
> >       rm -rf seabios/.config seabios/out seabios/builds
> >       $(MAKE) -C sgabios clean
> > @@ -173,3 +196,4 @@ clean:
> >       $(MAKE) -C u-boot-sam460ex distclean
> >       $(MAKE) -C skiboot clean
> >       $(MAKE) -f Makefile.edk2 clean
> > +     $(MAKE) -C opensbi clean
> > diff --git a/roms/opensbi b/roms/opensbi
> > new file mode 160000
> > index 000000000000..ca20ac0cd4c0
> > --- /dev/null
> > +++ b/roms/opensbi
> > @@ -0,0 +1 @@
> > +Subproject commit ca20ac0cd4c099006d4eea4d9ac7bd7b58e2ae0f
>
>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]