xref: /openbmc/qemu/pc-bios/README (revision b25fbd6a1302c0eac5b326be3e1f828e905c0c9a)
1c0ced0f3SStefan Weil- SeaBIOS (bios.bin) is the successor of pc bios.
2c0ced0f3SStefan Weil  See http://www.seabios.org/ for more information.
3f5dc4c7cSaliguori
47f5d44e0Sbellard- The VGA BIOS and the Cirrus VGA BIOS come from the LGPL VGA bios
5c34ebfdcSAnthony Liguori  project (http://www.nongnu.org/vgabios/).
6fa36761dSbellard
70986ac3bSbellard- OpenBIOS (http://www.openbios.org/) is a free (GPL v2) portable
80986ac3bSbellard  firmware implementation. The goal is to implement a 100% IEEE
90986ac3bSbellard  1275-1994 (referred to as Open Firmware) compliant firmware.
100bce98dfSBlue Swirl  The included images for PowerPC (for 32 and 64 bit PPC CPUs),
119eb08a43SMark Cave-Ayland  Sparc32 (including QEMU,tcx.bin and QEMU,cgthree.bin) and Sparc64 are built
125264917bSMark Cave-Ayland  from OpenBIOS SVN revision 1280.
13eec85c2aSths
14a9f8ad8fSDavid Gibson- SLOF (Slimline Open Firmware) is a free IEEE 1275 Open Firmware
15a9f8ad8fSDavid Gibson  implementation for certain IBM POWER hardware.  The sources are at
164807ab4fSAlexey Kardashevskiy  https://github.com/aik/SLOF, and the image currently in qemu is
17*b25fbd6aSAlexey Kardashevskiy  built from git tag qemu-slof-20200717.
18a9f8ad8fSDavid Gibson
196329866fSPaolo Bonzini- sgabios (the Serial Graphics Adapter option ROM) provides a means for
206329866fSPaolo Bonzini  legacy x86 software to communicate with an attached serial console as
216329866fSPaolo Bonzini  if a video card were attached.  The master sources reside in a subversion
226329866fSPaolo Bonzini  repository at http://sgabios.googlecode.com/svn/trunk.  A git mirror is
23c814b177SStefan Hajnoczi  available at https://git.qemu.org/git/sgabios.git.
246329866fSPaolo Bonzini
2536d8d02dSAlex Williamson- The PXE roms come from the iPXE project. Built with BANNER_TIME 0.
2636d8d02dSAlex Williamson  Sources available at http://ipxe.org.  Vendor:Device ID -> ROM mapping:
2774b12befSAnthony Liguori
2836d8d02dSAlex Williamson	8086:100e -> pxe-e1000.rom
2936d8d02dSAlex Williamson	8086:1209 -> pxe-eepro100.rom
3036d8d02dSAlex Williamson	1050:0940 -> pxe-ne2k_pci.rom
3136d8d02dSAlex Williamson	1022:2000 -> pxe-pcnet.rom
3236d8d02dSAlex Williamson	10ec:8139 -> pxe-rtl8139.rom
3336d8d02dSAlex Williamson	1af4:1000 -> pxe-virtio.rom
34fe270d04SAlexander Graf
35753d11f2SRichard Henderson- The sources for the Alpha palcode image is available from:
3606bef596SStefan Hajnoczi  https://github.com/rth7680/qemu-palcode.git
374e73c781SAlexander Graf
384e73c781SAlexander Graf- The u-boot binary for e500 comes from the upstream denx u-boot project where
394e73c781SAlexander Graf  it was compiled using the qemu-ppce500 target.
40c814b177SStefan Hajnoczi  A git mirror is available at: https://git.qemu.org/git/u-boot.git
414e73c781SAlexander Graf  The hash used to compile the current version is: 2072e72
42bcad45deSCédric Le Goater
43bcad45deSCédric Le Goater- Skiboot (https://github.com/open-power/skiboot/) is an OPAL
44bcad45deSCédric Le Goater  (OpenPower Abstraction Layer) firmware for OpenPOWER systems. It can
45bcad45deSCédric Le Goater  run an hypervisor OS or simply a host OS on the "baremetal"
46bcad45deSCédric Le Goater  platform, also known as the PowerNV (Non-Virtualized) platform.
470806b30cSMark Cave-Ayland
480806b30cSMark Cave-Ayland- QemuMacDrivers (https://github.com/ozbenh/QemuMacDrivers) is a project to
490806b30cSMark Cave-Ayland  provide virtualised drivers for PPC MacOS guests.
5013814db0SLaszlo Ersek
5113814db0SLaszlo Ersek- The "edk2-*.fd.bz2" images are platform firmware binaries and matching UEFI
5213814db0SLaszlo Ersek  variable store templates built from the TianoCore community's EFI Development
5313814db0SLaszlo Ersek  Kit II project
5413814db0SLaszlo Ersek  <https://github.com/tianocore/tianocore.github.io/wiki/EDK-II>. The images
55541617caSLaszlo Ersek  were built at git tag "edk2-stable201905". The firmware binaries bundle parts
56541617caSLaszlo Ersek  of the OpenSSL project, at git tag "OpenSSL_1_1_1b" (the OpenSSL tag is a
57541617caSLaszlo Ersek  function of the edk2 tag). Parts of the Berkeley SoftFloat library are
58541617caSLaszlo Ersek  bundled as well, at Release 3e plus a subsequent typo fix (commit
59541617caSLaszlo Ersek  b64af41c3276f97f0e181920400ee056b9c88037), as an OpenSSL dependency on 32-bit
60541617caSLaszlo Ersek  ARM. Licensing information is given in "edk2-licenses.txt". The image files
61541617caSLaszlo Ersek  are described by the JSON documents in the "pc-bios/descriptors" directory,
62541617caSLaszlo Ersek  which conform to the "docs/interop/firmware.json" schema.
6391f3a2f0SAlistair Francis
6491f3a2f0SAlistair Francis- OpenSBI (https://github.com/riscv/opensbi) aims to provide an open-source
6591f3a2f0SAlistair Francis  reference implementation of the RISC-V Supervisor Binary Interface (SBI)
6691f3a2f0SAlistair Francis  specifications for platform-specific firmwares executing in M-mode. For all
6791f3a2f0SAlistair Francis  supported platforms, OpenSBI provides several runtime firmware examples.
6891f3a2f0SAlistair Francis  These example firmwares can be used to replace the legacy riscv-pk bootloader
6991f3a2f0SAlistair Francis  and enable the use of well-known bootloaders such as U-Boot.
7091f3a2f0SAlistair Francis  OpenSBI is distributed under the terms of the BSD 2-clause license
7191f3a2f0SAlistair Francis  ("Simplified BSD License" or "FreeBSD License", SPDX: BSD-2-Clause). OpenSBI
7291f3a2f0SAlistair Francis  source code also contains code reused from other projects desribed here:
7391f3a2f0SAlistair Francis  https://github.com/riscv/opensbi/blob/master/ThirdPartyNotices.md.
74