Message ID | 1596439832-29238-1-git-send-email-bmeng.cn@gmail.com |
---|---|
Headers | show |
Series | riscv: Switch to use generic platform fw_dynamic type opensbi bios images | expand |
On Mon, Aug 3, 2020 at 12:31 AM Bin Meng <bmeng.cn@gmail.com> wrote: > > From: Bin Meng <bin.meng@windriver.com> > > The RISC-V generic platform is a flattened device tree (FDT) based > platform where all platform specific functionality is provided based > on FDT passed by previous booting stage. The support was added in > the upstream OpenSBI v0.8 release recently. > > This series updates QEMU to switch to use generic platform of opensbi > bios images. With the recent fw_dynamic image support, let's replace > the fw_jump images with fw_dynamic ones too. > > The patch emails do not contain binary bits, please grab all updates > at https://github.com/lbmeng/qemu.git bios branch. > > Note: > > 1. To test 32-bit Linux kernel on QEMU 'sifive_u' 32-bit machine, > the following patch is needed: > http://lists.infradead.org/pipermail/linux-riscv/2020-July/001213.html > > 2. To test 64-bit Linux 5.3 kernel on QEMU 'virt' or 'sifive_u' 64-bit > machines, the following commit should be cherry-picked to 5.3: > > commit 922b0375fc93fb1a20c5617e37c389c26bbccb70 > Author: Albert Ou <aou@eecs.berkeley.edu> > Date: Fri Sep 27 16:14:18 2019 -0700 > > riscv: Fix memblock reservation for device tree blob > > Linux 5.4 or above already contains this commit/fix. Thanks for this. Applied to riscv-to-apply.next Alistair > > Changes in v6: > - Rebased on https://github.com/alistair23/qemu/commits/riscv-to-apply.next > - Add information about Linux kernel tested > - Squash the Makefile ELF changes into patch 5 > > Changes in v5: > - Include the generic fw_dynamic.bin in the Makefile for `make install` bisection > > Changes in v4: > - Remove old binaries in the Makefile for `make install` bisection > > Changes in v3: > - Change fw_jump to fw_dynamic in the make rules > - Change to fw_dynamic.bin for virt & sifive_u > - Change to fw_dynamic.elf for Spike > - Generate fw_dynamic images in the artifacts > > Changes in v2: > - new patch: configure: Create symbolic links for pc-bios/*.elf files > - Upgrade OpenSBI to v0.8 release > - Copy the ELF images too in the make rules > - Include ELF images in the artifacts > > Bin Meng (6): > configure: Create symbolic links for pc-bios/*.elf files > roms/opensbi: Upgrade from v0.7 to v0.8 > roms/Makefile: Build the generic platform for RISC-V OpenSBI firmware > hw/riscv: Use pre-built bios image of generic platform for virt & > sifive_u > hw/riscv: spike: Change the default bios to use generic platform image > gitlab-ci/opensbi: Update GitLab CI to build generic platform > > .gitlab-ci.d/opensbi.yml | 28 ++++++++-------------- > Makefile | 4 ++-- > configure | 1 + > hw/riscv/sifive_u.c | 4 ++-- > hw/riscv/spike.c | 9 +++++-- > hw/riscv/virt.c | 4 ++-- > pc-bios/opensbi-riscv32-generic-fw_dynamic.bin | Bin 0 -> 62144 bytes > pc-bios/opensbi-riscv32-generic-fw_dynamic.elf | Bin 0 -> 558668 bytes > pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin | Bin 49520 -> 0 bytes > pc-bios/opensbi-riscv32-virt-fw_jump.bin | Bin 49504 -> 0 bytes > pc-bios/opensbi-riscv64-generic-fw_dynamic.bin | Bin 0 -> 70792 bytes > pc-bios/opensbi-riscv64-generic-fw_dynamic.elf | Bin 0 -> 620424 bytes > pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin | Bin 57936 -> 0 bytes > pc-bios/opensbi-riscv64-virt-fw_jump.bin | Bin 57920 -> 0 bytes > roms/Makefile | 32 ++++++++----------------- > roms/opensbi | 2 +- > 16 files changed, 35 insertions(+), 49 deletions(-) > create mode 100644 pc-bios/opensbi-riscv32-generic-fw_dynamic.bin > create mode 100644 pc-bios/opensbi-riscv32-generic-fw_dynamic.elf > delete mode 100644 pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin > delete mode 100644 pc-bios/opensbi-riscv32-virt-fw_jump.bin > create mode 100644 pc-bios/opensbi-riscv64-generic-fw_dynamic.bin > create mode 100644 pc-bios/opensbi-riscv64-generic-fw_dynamic.elf > delete mode 100644 pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin > delete mode 100644 pc-bios/opensbi-riscv64-virt-fw_jump.bin > > -- > 2.7.4 > >
From: Bin Meng <bin.meng@windriver.com> The RISC-V generic platform is a flattened device tree (FDT) based platform where all platform specific functionality is provided based on FDT passed by previous booting stage. The support was added in the upstream OpenSBI v0.8 release recently. This series updates QEMU to switch to use generic platform of opensbi bios images. With the recent fw_dynamic image support, let's replace the fw_jump images with fw_dynamic ones too. The patch emails do not contain binary bits, please grab all updates at https://github.com/lbmeng/qemu.git bios branch. Note: 1. To test 32-bit Linux kernel on QEMU 'sifive_u' 32-bit machine, the following patch is needed: http://lists.infradead.org/pipermail/linux-riscv/2020-July/001213.html 2. To test 64-bit Linux 5.3 kernel on QEMU 'virt' or 'sifive_u' 64-bit machines, the following commit should be cherry-picked to 5.3: commit 922b0375fc93fb1a20c5617e37c389c26bbccb70 Author: Albert Ou <aou@eecs.berkeley.edu> Date: Fri Sep 27 16:14:18 2019 -0700 riscv: Fix memblock reservation for device tree blob Linux 5.4 or above already contains this commit/fix. Changes in v6: - Rebased on https://github.com/alistair23/qemu/commits/riscv-to-apply.next - Add information about Linux kernel tested - Squash the Makefile ELF changes into patch 5 Changes in v5: - Include the generic fw_dynamic.bin in the Makefile for `make install` bisection Changes in v4: - Remove old binaries in the Makefile for `make install` bisection Changes in v3: - Change fw_jump to fw_dynamic in the make rules - Change to fw_dynamic.bin for virt & sifive_u - Change to fw_dynamic.elf for Spike - Generate fw_dynamic images in the artifacts Changes in v2: - new patch: configure: Create symbolic links for pc-bios/*.elf files - Upgrade OpenSBI to v0.8 release - Copy the ELF images too in the make rules - Include ELF images in the artifacts Bin Meng (6): configure: Create symbolic links for pc-bios/*.elf files roms/opensbi: Upgrade from v0.7 to v0.8 roms/Makefile: Build the generic platform for RISC-V OpenSBI firmware hw/riscv: Use pre-built bios image of generic platform for virt & sifive_u hw/riscv: spike: Change the default bios to use generic platform image gitlab-ci/opensbi: Update GitLab CI to build generic platform .gitlab-ci.d/opensbi.yml | 28 ++++++++-------------- Makefile | 4 ++-- configure | 1 + hw/riscv/sifive_u.c | 4 ++-- hw/riscv/spike.c | 9 +++++-- hw/riscv/virt.c | 4 ++-- pc-bios/opensbi-riscv32-generic-fw_dynamic.bin | Bin 0 -> 62144 bytes pc-bios/opensbi-riscv32-generic-fw_dynamic.elf | Bin 0 -> 558668 bytes pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin | Bin 49520 -> 0 bytes pc-bios/opensbi-riscv32-virt-fw_jump.bin | Bin 49504 -> 0 bytes pc-bios/opensbi-riscv64-generic-fw_dynamic.bin | Bin 0 -> 70792 bytes pc-bios/opensbi-riscv64-generic-fw_dynamic.elf | Bin 0 -> 620424 bytes pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin | Bin 57936 -> 0 bytes pc-bios/opensbi-riscv64-virt-fw_jump.bin | Bin 57920 -> 0 bytes roms/Makefile | 32 ++++++++----------------- roms/opensbi | 2 +- 16 files changed, 35 insertions(+), 49 deletions(-) create mode 100644 pc-bios/opensbi-riscv32-generic-fw_dynamic.bin create mode 100644 pc-bios/opensbi-riscv32-generic-fw_dynamic.elf delete mode 100644 pc-bios/opensbi-riscv32-sifive_u-fw_jump.bin delete mode 100644 pc-bios/opensbi-riscv32-virt-fw_jump.bin create mode 100644 pc-bios/opensbi-riscv64-generic-fw_dynamic.bin create mode 100644 pc-bios/opensbi-riscv64-generic-fw_dynamic.elf delete mode 100644 pc-bios/opensbi-riscv64-sifive_u-fw_jump.bin delete mode 100644 pc-bios/opensbi-riscv64-virt-fw_jump.bin