pseries: Update SLOF firmware image
This patch is a general update to the SLOF firmware image used on thepseries machine. This doesn't contain updates for specific features butcontains a number of bugfixes and enhancements in the main SLOF tree fromThomas Huth....
This patch updates the SLOF submodule and precompiled image. The newSLOF versions contains two changes of note:
target-alpha: Add custom PALcode image for CLIPPER emulation.
Signed-off-by: Richard Henderson <rth@twiddle.net>
MPC8544DS: Remove CPU nodes
We want to generate the CPU nodes in machine init code, so remove them fromthe device tree definition that we precompile.
Signed-off-by: Alexander Graf <agraf@suse.de>
Add OpenBIOS as a submodule
Update OpenBIOS images to r1047 built from submodule.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
seabios: update to master
commit 8e301472e324b6d6496d8b4ffc66863e99d7a505
user visible changes in seabios: * ahci is enabled by default (and thus in this build). * bootorder support for ahci. * two-pass pci allocator (orders bars by size for better packing)....
Update OpenBIOS images for Sparc32 and Sparc64
Update Sparc32 and Sparc64 OpenBIOS images to SVN revision 1045.
PPC: update openbios firmware
There were some changes upstream to account for broken usage of mtmsr, sobefore applying the mtmsr patch we need to update OpenBIOS, otherwise thePPC target would break.
PPC: mpc8544ds: Add hypervisor node
When running a PPC guest with KVM that can do PV operations, we needto indicate the guest which instructions to use for a hypercall andthat it is running as KVM guest.
This logic was available on openbios based machines already. This patch...
PPC: E500: Implement reboot controller
When Linux reboots an e500 VM, it writes to a magic register in the"global-utilities" device indicated by the device tree. We were notemulating that device so far, rendering the VM reboot-less.
This patch implements that device with only the reboot functionality...
s390x: update zipl rom
The zipl bootloader rom we have has seen some dramatic speedups upstream,so let's update it to improve the experience when booting a guest image.
This binary is based on commit id 9a0842dd9823d529f721b418d554f17c72e009e3.
PXE: Refresh all PXE ROMs from the ipxe submodule
Add script to make this easy to repeat later.
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
PXE: Use consistent naming for PXE ROMs
And add missing ROMs to tarbin build target.
pc-bios/spapr-rtas.bin: remove executable flag
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Add SLOF-based partition firmware for pSeries machine, allowing more boot options
Currently, the emulated pSeries machine requires the use of the-kernel parameter in order to explicitly load a guest kernel. Thismeans booting from the virtual disk, cdrom or network is not possible....
Implement hcall based RTAS for pSeries machines
On pSeries machines, operating systems can instantiate "RTAS" (Run-TimeAbstraction Services), a runtime component of the firmware which implementsa number of low-level, infrequently used operations. On logical partitions...
pc-bios: update linuxboot.bin and multiboot.bin
fix linuxboot.bin and multiboot.bin to not hijack int19
Currently linuxboot.bin and multiboot.bin option roms override int19vector to intercept boot process. No sane option rom should do that.Provide bev entry instead that will be called by BIOS if option rom...
seabios: update to latest git
- cc97564 Add config option to permit running option roms with bad checksums. - 424f217 Add config option to disable MTRR initialization. - fb2f10d Prep version for next release. - f18b09b Update version to 0.6.2 - 20fcf9b lets pretend that RTC can be used to wakeup from S4...
microblaze: Add PetaLogix ml605 MMU little-endian ref design
Add the first Microblaze little endian platform.Platform uses uart16550, axi ethernet, timer, intc.
Signed-off-by: Michal Simek <monstr@monstr.eu>Signed-off-by: Edgar E. Iglesias <edgar.iglesias@petalogix.com>
Update SeaBIOS to 0.6.1.2
- 06d0bdd Minor build fixes. - 33abfc0 Update version to 0.6.1.2. - 484dd56 fix virtio-blk failure after reboot - dd9c0d3 Update version to 0.6.1.1. - 50ecfa8 mark irq9 active high in DSDT
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Update OpenBIOS images to r1018
Add scripts directory
Move build and user scripts into scripts directory.
add bepo (french dvorak) keyboard layout
I'm using the Qemu program with VNC I/O, and I had some problems withmy keyboard layout, so I've prepared a definition to be included inQemu, built from Xorg description.
Signed-off-by: Frédéric Boiteux <fboiteux@free.fr>...
spice: add qxl vgabios binary.
Just compiled from vgabios git repo @ git.qemu.org,copyed over and committed. Also added to the listof blobs in the Makefile.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Merge remote branch 'origin/master' into pci
Conflicts: Makefile.objs hw/virtio.c
eepro100: Use a single rom file for all i825xx devices
Patching the rom data during load (in qemu) nowalso supports i82801 (which had no rom file).
We only need a single rom file for the whole device family,so remove the second one which is no longer needed....
optionrom: fix bugs in signrom.sh
signrom.sh has multiple bugs:
- the last byte is considered when calculating the existing checksum, but not when computing the correction- apprently the 'expr' expression overflows and produces incorrect results with...
Add new vgabios binaries to blobs list.
aliguori: update VGA BIOS
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
seabios: Update to 0.6.1
- 0ff9051 Update version to 0.6.1 - 9c000e6 Support Samsung SE-S084 USB DVD drive (and probably many others) - eebe949 pciinit: remove unused variable, old_addr, in pci_set_io_region_addr(). - 06644f4 Minor - indentation change to jpeg.c....
ppc: remove video.x
Only Mac-on-Linux stuff used video.x, OpenBIOS does not need it.
Remove video.x MoL hacks.
Signed-off-by: Alexander Graf <agraf@suse.de>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Sparc: update OpenBIOS images to r859
Update Sparc32 and Sparc64 OpenBIOS images to SVN revision 859.
Bring also pc-bios/README up to date including the update performed by419ef5f1c6a9614e8ddcb0b0f826de692e7e4a43.
PPC: Update openbios binary to r859
This updates the openBIOS binary to r589, adding support for PPC PV featurepass-through in KVM.
Update OpenBIOS images
Update PPC, Sparc32 and Sparc64 OpenBIOS images to r821.
Update SeaBIOS
- 17d3e46 smbios: Allow all fields to be set via qemu_cfg_smbios_load_field() - 0d6b8d5 seabios: pciinit: use pci device initializer helper function. - 968d3a8 seabios: pci: introduce helper function to initialize a given device. - 4e0daae virtio: Clear interrupt status register in virtio-blk...
Update PPC, Sparc32 and Sparc64 OpenBIOS images to R795.
Fix multiboot compilation
Commit dd4239d6574ca41c94fc0d0f77ddc728510ffc57 broke multiboot. It replaced theinstruction "rep insb (%dx), %es:(%edi)" by the binary output of"addr32 rep insb (%dx), %es:(%di)".
Linuxboot calls the respective helper function in a code16 section. So the...
target-s390: add firmware code
This patch adds a firmware blob to the S390 target. The blob is a simpleimplementation of a virtio client that tries to read the second stagebootloader from sectors described as of offset 0x20 in the MBR.
In combination with an updated zipl this allows for booting from virtio...
- 7d09d0e Fix virtio compile errors on various gcc versions. - 89acfa3 Support for booting from virtio disks - 6d66316 smbios: avoid counting io hole as ram - e5cd945 Fix error causing USB HID "boot" protocol to not be enabled. - 0e88576 Add support for USB mice....
Update OpenBIOS images to r771
Update PowerPC OpenBIOS image to r721
Update to latest SeaBIOS
- 8f469b9 Dynamically allocate ata_channel info; introduce custom atadrive_s struct. - 575ffc8 Cleanup - build drive description in temp memory during init.
eepro100: Support gpxe boot for all eepro100 devices
Only two boot ROM files are needed for all devices.
pc-bios: update to latest Seabios
- 0360e8e Seabios e820 reservation portion v3 - 7149fc8 Initial support for booting from USB drives. - 3c160dd Introduce helper functions for finding USB end-points. - 9571439 USB UHCI cleanups. - a4bd919 Minor - arrange struct drive_s to clarify field roles....
Update OpenBIOS images to r683
Sparc32: Update OpenBIOS image to r666
Fixes the boot problem introduced by r665 image in694b9309462f07307d16f492961f01271f10c245.
Update Sparc OpenBIOS images to r665
Update to SeaBIOS 0.5.1
5da6833 Update version to 0.5.1 669c991 Fix sign error preventing incorrect memory over 4gig calculation. 7e6bd3e Minor - better indent assembler in int1587. 48cf232 Add comment explaining why mptable is in low memory. 643062f Add int1589 support....
pc-bios: Update README (SeaBIOS)
The PC BIOS no longer comes from Bochs.This patch updates the related entry.
V2 - Modify SeaBIOS description and URL (Thanks to Gleb Natapov for the hint).
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
linuxboot: fix gdt address calculation
The gdt address calculation in linuxboot.bin is broken in two ways: firstit loads %cs into %eax, but that instruction leaves the high bits of %eaxundefined and we did not clear them. Secondly, we completely ignore the...
Use vpath directive
The vpath directive has two advantages over the VPATH variable:1) it allows to skip searching of .o files; 2) the default semanticsare to append to the vpath, so there is no confusion between "VPATH=xyz" and "VPATH+=xyz".
Since "vpath %.c %.h PATH" is not valid, I'm introducing a wrapper...
Update Sparc64 OpenBIOS image to r649.
Update OpenBIOS PPC image to revision 647
Update to SeaBIOS 0.5.0
The only change is updating the makefile but that way we're carrying an officialrelease.
Update SeaBIOS to include PCI based option rom loading
Also remove pcbios from the tree. It will no longer work.
Fix thinko in linuxboot.S
The %gs segment that was used was not matching the comments.I just moved the GDT descriptor on the stack instead.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Update OpenBIOS images to r640
Make -kernel for linux work with bochsbios
While trying to run -kernel with -bios pc-bios/pcbios.bin, I realizedthat I was actually writing data to %es, but only set up %ds to a 32-bitsegment we want to write to.
So at the end of the day the data hasn't actually been copied. Oops....
multiboot: Fix module loading and setting of mmap.
Signed-off-by: Adam Lackorzynski <adam@os.inf.tu-dresden.de>Acked-by: Alexander Graf <agraf@suse.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This includes the following changes:
42bc394 Make sure to reenable ata interrupts even on error. 494dfc6 Move SeaBIOS post/boot stack to avoid conflict with gPXE. 3133e38 Test for broken gcc -combine on FC12.
Allow build of linuxboot.S with old assemblers
In the spirit of ff56954baf9cfab5cbbe18d10b4a09e4a17f39a8, fix thebuild of linuxboot.S with old as(1) (as found in some BSD base systems)by emitting the bytes of the insn it doesn't like instead.
Signed-off-by: Juergen Lock <nox@jelal.kn-bremen.de>...
Move common option rom code to header file
We will have a linux boot option rom soon, so let's take all functionalitythat might be useful for both to a header file that both roms can include.
That way we only have to write fw_cfg access code once.
Signed-off-by: Alexander Graf <agraf@suse.de>...
Convert linux bootrom to external rom and fw_cfg
We already have a working multiboot implementation that uses fw_cfg to getits kernel module etc. data in int19 runtime now.
So what's missing is a working linux boot option rom. While at it I figured itwould be a good idea to take the opcode generator out of pc.c and instead use...
Convert multiboot to fw_cfg backed data storage
Right now we load the guest kernel to RAM, fire off the BIOS, hope itdoesn't clobber memory and run an option rom that jumps into the kernel.
That breaks with SeaBIOS, as that clears memory. So let's read all...
Update SeaBIOS to latest
eepro100: Fix boot ROM support
Update gpxe roms to have BANNER_TIMEOUT=0
Switch pc bios from pc-bios to seabios
SeaBIOS is a port of pc-bios to GCC. Besides using a more modern tool chain,SeaBIOS introduces a number of new features including PMM support, betterBEV and BCV support, and better PnP support.
Switch from etherboot to gPXE
etherboot is deprecated and not under active development anymore.
multiboot.S patch for old as(1) (was: Re: [Qemu-devel] Some OpenBSD/amd64 build fixes)
On Wed, Sep 23, 2009 at 10:55:02PM +0200, Juergen Lock wrote:
On Wed, Sep 23, 2009 at 09:31:16PM +0100, Laurence Tratt wrote:[...] then the above error doesn't occur, but...
On Wed, Sep 23, 2009 at 09:31:16PM +0100, Laurence Tratt wrote:[...]
then the above error doesn't occur, but...
optionrom: remove use of implicit RM variable
Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
optionrom: create .PHONY variable
restore CFLAGS check for conflict and fix recursive CFLAGS issue
cc-option uses more make-syntax to replace the shell "if/else".
Issue with recursive += is fixed by doing the first assignmentsimply-expanded, as explained inhttp://www.gnu.org/software/make/manual/html_node/Appending.html...
update pc-bios/bios.bin
Update OpenBIOS images to r577
otionrom: Use local CFLAGS no global one
It is needed by %.o : %.c rule.
optionrom: make clean should remove raw and .d
Remove CFLAGS parameter in cc-option
With cc-option we are testing if gcc just accept a particular option, we don't need CFLAGS at all. And this fixes the recursive problem with CFLAGS
Bring pcbios, seabios, and vgabios into the tree as git submodules. Right now,they aren't integrated into the build but we can do that incrementally.
Update OpenBIOS images to r569
Rename CPPFLAGS to QEMU_CFLAGS
Now we have to variables: QEMU_CFLAGS: flags without which we can't compileCFLAGS: "-g -O2"
We can now run:
make CFLAGS="-fbar" foo.omake CFLAGS="" foo.omake CFLAGS="-O3" foo.o
And it all should work.
Signed-off-by: Juan Quintela <quintela@redhat.com>...
Fix checksum writing in signboot.sh
The printf command takes an octal value after \, so we have to convertour decimal representation to octal first and then write it.
This unbreaks extboot signing. Multiboot wasn't affected yet becausethe checksum was < 8....
Do not try to invoke shebang scripts directly (NFS issues)
Signed-off-by: malc <av1474@comtv.ru>
Option rom makefile fixes
Fix toplevel option rom makefile rules.
Signed-off-by: Paul Brook <paul@codesourcery.com>
Fix out of tree build broken by 791e08c753a9f9be3c3880b4ea83b6dfa4b6ccad
Use quiet-command for building optionrom
use cc-option for optionrom
QEMU BOCHS bios patches to use maxcpus value.
Signed-off-by: Jes Sorensen <jes@sgi.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
signrom.sh: portability fix
Attached patch makes signrom.sh working on NetBSD.The output of the 'od' command leads to a syntax errorwhich breaks the build.
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Update to a hopefully more future proof FSF address
Fix non-ACPI Timer Interrupt Routing - v3
v1 -> v2 adds comment suggested by Ryan.v2 -> v3 clarifies comment and corrects entry count
Signed-off-by: Beth Kon <eak@us.ibm.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Fix multiboot.bin build on mingw32
This combination of ld/object was suggested by Bartlomiej Celary
Don't copy multiboot.bin into pc-bios after built
That dirties the working directory of the tree.
bios: Fix multiple calls into smbios_load_ex
We're marking the used entry bitmap in smbios_load_external() for eachtype we check, regardless of whether we loaded anything. This makessubsequent calls behave as if we've already loaded the tables from qemu...
Regenerate BIOS and add patches for -boot option
Replace signrom with shell script v3
In order to not execute code we just compiled, let's replace signromwith a shell script that does the same thing while staying compatibleto pretty much every system available.
This should make cross-compilation for windows easier....
Update OpenBIOS images to r505
For Sparc64, this fixes the PCI bridge configuration bugs revealed by theimproved bridge handling (b7ee1603c16c1feb0d439d2ddf6cf824119d0aab).
Work around Solaris gas problem
Multiboot build system v4
In order to build the multiboot option rom, we need a Makefile and a toolto sign the rom with.
Both are provided by this patch and mostly taken from the extboot source,written by Anthony Liguori.
Once built, the resulting binary gets copied to pc-bios automatically....
Multiboot support v5
This patch implements support for Multiboot on x86 for -kernel.Multiboot is a "new" approach to get rid of different bootloaders, providinga unified interface for the kernel. It supports command line options andkernel modules.
The two probably best known projects using multiboot are Xen and GNU Hurd....