#
f1698408 |
| 21-Mar-2010 |
Blue Swirl <blauwirbel@gmail.com> |
Compile usb-ohci only once
Push TARGET_WORDS_BIGENDIAN dependency to board level.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
|
#
84108e12 |
| 21-Mar-2010 |
Blue Swirl <blauwirbel@gmail.com> |
Compile isa_mmio only once
Push TARGET_WORDS_BIGENDIAN dependency to board level.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
|
#
409dbce5 |
| 14-Mar-2010 |
Aurelien Jarno <aurelien@aurel32.net> |
load_elf: replace the address addend by a translation function
A few machines need to translate the ELF header addresses into physical addresses. Currently the only possibility is to add a value to
load_elf: replace the address addend by a translation function
A few machines need to translate the ELF header addresses into physical addresses. Currently the only possibility is to add a value to the addresses.
This patch replaces the addend argument by and a translation function and an opaque passed to the function. A NULL function does not translate the address.
The patch also convert all machines that have an addend, simplify the PowerPC kernel loading and fix the MIPS kernel loading using this new feature. Other machines may benefit from this feature.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
ea375f9a |
| 01-Mar-2010 |
Jan Kiszka <jan.kiszka@siemens.com> |
KVM: Rework VCPU state writeback API
This grand cleanup drops all reset and vmsave/load related synchronization points in favor of four(!) generic hooks:
- cpu_synchronize_all_states in qemu_savevm
KVM: Rework VCPU state writeback API
This grand cleanup drops all reset and vmsave/load related synchronization points in favor of four(!) generic hooks:
- cpu_synchronize_all_states in qemu_savevm_state_complete (initial sync from kernel before vmsave) - cpu_synchronize_all_post_init in qemu_loadvm_state (writeback after vmload) - cpu_synchronize_all_post_init in main after machine init - cpu_synchronize_all_post_reset in qemu_system_reset (writeback after system reset)
These writeback points + the existing one of VCPU exec after cpu_synchronize_state map on three levels of writeback:
- KVM_PUT_RUNTIME_STATE (during runtime, other VCPUs continue to run) - KVM_PUT_RESET_STATE (on synchronous system reset, all VCPUs stopped) - KVM_PUT_FULL_STATE (on init or vmload, all VCPUs stopped as well)
This level is passed to the arch-specific VCPU state writing function that will decide which concrete substates need to be written. That way, no writer of load, save or reset functions that interact with in-kernel KVM states will ever have to worry about synchronization again. That also means that a lot of reasons for races, segfaults and deadlocks are eliminated.
cpu_synchronize_state remains untouched, just as Anthony suggested. We continue to need it before reading or writing of VCPU states that are also tracked by in-kernel KVM subsystems.
Consequently, this patch removes many cpu_synchronize_state calls that are now redundant, just like remaining explicit register syncs.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
show more ...
|
#
dc333cd6 |
| 09-Feb-2010 |
Alexander Graf <agraf@suse.de> |
PPC: tell the guest about the time base frequency
Our guest systems need to know by how much the timebase increases every second, so there usually is a "timebase-frequency" property in the cpu leaf
PPC: tell the guest about the time base frequency
Our guest systems need to know by how much the timebase increases every second, so there usually is a "timebase-frequency" property in the cpu leaf of the device tree.
This property is missing in OpenBIOS.
With qemu, Linux's fallback timebase speed and qemu's internal timebase speed match up. With KVM, that is no longer true. The guest is running at the same timebase speed as the host.
This leads to massive timing problems. On my test machine, a "sleep 2" takes about 14 seconds with KVM enabled.
This patch exports the timebase frequency to OpenBIOS, so it can then put them into the device tree.
Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
show more ...
|
#
46214a27 |
| 19-Dec-2009 |
Andreas Färber <andreas.faerber@web.de> |
ppc64: Change default machine to mac99
Also change the New World default CPU to 970FX for ppc64, since the G4 is a 32-bit CPU.
Signed-off-by: Andreas Färber <andreas.faerber@web.de> Acked-by: Alexa
ppc64: Change default machine to mac99
Also change the New World default CPU to 970FX for ppc64, since the G4 is a 32-bit CPU.
Signed-off-by: Andreas Färber <andreas.faerber@web.de> Acked-by: Alexander Graf <agraf@suse.de> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
dc702288 |
| 02-Dec-2009 |
Alexander Graf <agraf@suse.de> |
targe-ppc: Sync CPU state for KVM
Some recent change made PPC guests always start at address 0x0 because env isn't synced to kvm_state on first bootup.
I'm not sure if this is the correct bugfix, b
targe-ppc: Sync CPU state for KVM
Some recent change made PPC guests always start at address 0x0 because env isn't synced to kvm_state on first bootup.
I'm not sure if this is the correct bugfix, but at least it makes PPC boot again with KVM enabled.
Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
18e08a55 |
| 11-Nov-2009 |
Michael S. Tsirkin <mst@redhat.com> |
pci: pci.h cleanup: move out stuff not in pci.c
pci.h declares some functions which aren't defined in pci.h. Clean up moving things to appropriate headers, and update all users.
Signed-off-by: Mich
pci: pci.h cleanup: move out stuff not in pci.c
pci.h declares some functions which aren't defined in pci.h. Clean up moving things to appropriate headers, and update all users.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
show more ...
|
#
d84bda46 |
| 07-Nov-2009 |
Blue Swirl <blauwirbel@gmail.com> |
PPC: rename cpu_ppc_reset to cpu_reset for consistency
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
|
#
3c178e72 |
| 07-Oct-2009 |
Gerd Hoffmann <kraxel@redhat.com> |
rom loader: fix sparc -kernel boot.
Changes: (1) register pstrcpy_targphys() in rom list, it is used for kernel command lines by a number of architectures. (2) add rom_ptr() function to get a pointe
rom loader: fix sparc -kernel boot.
Changes: (1) register pstrcpy_targphys() in rom list, it is used for kernel command lines by a number of architectures. (2) add rom_ptr() function to get a pointer for applying changes to loaded images. Needed for example to tell the linux kernel where it finds the initrd image by updating the header. (3) make sparc use rom_ptr for initrd setup.
booting sparc-test works now, and 'info roms' shows this:
(qemu) info roms addr=0000000000000000 size=0x2a3828 mem=ram name="phdr #0: vmlinux-2.6.11+tcx" addr=00000000007ff000 size=0x00000e mem=ram name="cmdline" addr=0000000000800000 size=0x400000 mem=ram name="/root/qemu-test/sparc-test/linux.img" addr=0000000070000000 size=0x0e4000 mem=rom name="phdr #0: /home/kraxel/projects/qemu/build-zfull/pc-bios/openbios-sparc32"
reboot via 'system_reset' works too.
Patchworks-ID: 35262 Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
show more ...
|
#
07caea31 |
| 25-Sep-2009 |
Markus Armbruster <armbru@redhat.com> |
Fix pci_add nic not to exit on bad model
Monitor command "pci_add ADDR nic model=MODEL" uses pci_nic_init() to create the NIC. When MODEL is unknown or "?", this prints to stderr and terminates the
Fix pci_add nic not to exit on bad model
Monitor command "pci_add ADDR nic model=MODEL" uses pci_nic_init() to create the NIC. When MODEL is unknown or "?", this prints to stderr and terminates the program.
Change pci_nic_init() not to treat "?" specially, and to return NULL on failure. Switch uses during startup to new convenience wrapper pci_nic_init_nofail(), which behaves just like pci_nic_init() used to do.
Bonus bug fix: we now check for qdev_init() failing there.
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
show more ...
|
#
c227f099 |
| 01-Oct-2009 |
Anthony Liguori <aliguori@us.ibm.com> |
Revert "Get rid of _t suffix"
In the very least, a change like this requires discussion on the list.
The naming convention is goofy and it causes a massive merge problem. Something like this _must
Revert "Get rid of _t suffix"
In the very least, a change like this requires discussion on the list.
The naming convention is goofy and it causes a massive merge problem. Something like this _must_ be presented on the list first so people can provide input and cope with it.
This reverts commit 99a0949b720a0936da2052cb9a46db04ffc6db29.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
show more ...
|
#
99a0949b |
| 01-Oct-2009 |
malc <av1474@comtv.ru> |
Get rid of _t suffix
Some not so obvious bits, slirp and Xen were left alone for the time being.
Signed-off-by: malc <av1474@comtv.ru>
|
#
ca20cf32 |
| 20-Sep-2009 |
Blue Swirl <blauwirbel@gmail.com> |
Compile loader only once
Callers must pass ELF machine, byte swapping and symbol LSB clearing information to ELF loader. A.out loader needs page size information, pass that too as a parameter.
Extr
Compile loader only once
Callers must pass ELF machine, byte swapping and symbol LSB clearing information to ELF loader. A.out loader needs page size information, pass that too as a parameter.
Extract prototypes to a separate file. Move loader.[ch] and elf_ops.h under hw.
Adjust callers. Also use target_phys_addr_t instead of target_ulong for addresses: loader addresses aren't virtual.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
show more ...
|
#
5b19d9a2 |
| 31-Aug-2009 |
Gerd Hoffmann <kraxel@redhat.com> |
qdev/usb: convert ohci.
Drop num_ports argument for usb_ohci_init_pci(), everybody calls it with num_ports == 3, so it is pointless.
Convert ohci pci device into qdev. TODO: convert non-pci ohci ad
qdev/usb: convert ohci.
Drop num_ports argument for usb_ohci_init_pci(), everybody calls it with num_ports == 3, so it is pointless.
Convert ohci pci device into qdev. TODO: convert non-pci ohci adapters.
You can add a OHCI USB Controller to your virtual pc now using '-device pci-ohci'. Specifying a id is a good idea, so you can attach usb devices to it, like this:
-device pci-ohci,id=ohci -device usb-mouse,bus=ohci.0
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
show more ...
|
#
f455e98c |
| 28-Aug-2009 |
Gerd Hoffmann <kraxel@redhat.com> |
ide: pass down DriveInfo instead of BlockDriverState
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
|
#
977e1244 |
| 20-Aug-2009 |
Gerd Hoffmann <kraxel@redhat.com> |
ide: split away ide-pci.c
create ide-pci.c and place pci bus support there. only build ide-pci support for platforms using it.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthon
ide: split away ide-pci.c
create ide-pci.c and place pci bus support there. only build ide-pci support for platforms using it.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Fix build (merge with isa mmio split)
show more ...
|
#
b11ebf64 |
| 16-Aug-2009 |
Blue Swirl <blauwirbel@gmail.com> |
Replace REGX with PRIx64
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
|
#
7f1aec5f |
| 08-Aug-2009 |
Laurent Vivier <laurent@vivier.eu> |
ppc_oldworld: configure screen size from qemu command line options
This patch uses the FW_CFG interface to send user requested screen size and depth to openbios.
Signed-off-by: Laurent Vivier <laur
ppc_oldworld: configure screen size from qemu command line options
This patch uses the FW_CFG interface to send user requested screen size and depth to openbios.
Signed-off-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
show more ...
|
#
660f11be |
| 31-Jul-2009 |
Blue Swirl <blauwirbel@gmail.com> |
Fix Sparse warnings: "Using plain integer as NULL pointer"
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
|
#
751c6a17 |
| 22-Jul-2009 |
Gerd Hoffmann <kraxel@redhat.com> |
kill drives_table
First step cleaning up the drives handling. This one does nothing but removing drives_table[], still it became seriously big.
drive_get_index() is gone and is replaced by drives_
kill drives_table
First step cleaning up the drives handling. This one does nothing but removing drives_table[], still it became seriously big.
drive_get_index() is gone and is replaced by drives_get() which hands out DriveInfo pointers instead of a table index. This needs adaption in *tons* of places all over.
The drives are now maintained as linked list.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
show more ...
|
#
a7b022e0 |
| 26-Jul-2009 |
Alexander Graf <agraf@suse.de> |
PPC: Round VGA BIOS size to page boundary
When giving KVM a slot of a size not on page boundary, it chokes. So let's just round up the VGA BIOS size so nobody complains anymore and we don't need to
PPC: Round VGA BIOS size to page boundary
When giving KVM a slot of a size not on page boundary, it chokes. So let's just round up the VGA BIOS size so nobody complains anymore and we don't need to implement sub-page slots.
Required for booting a PPC guest in KVM.
Signed-off-by: Alexander Graf <agraf@suse.de>
show more ...
|
#
a08d4367 |
| 27-Jun-2009 |
Jan Kiszka <jan.kiszka@web.de> |
Revert "Introduce reset notifier order"
This reverts commit 8217606e6edb49591b4a6fd5a0d1229cebe470a9 (and updates later added users of qemu_register_reset), we solved the problem it originally addre
Revert "Introduce reset notifier order"
This reverts commit 8217606e6edb49591b4a6fd5a0d1229cebe470a9 (and updates later added users of qemu_register_reset), we solved the problem it originally addressed less invasively.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
show more ...
|
#
5607c388 |
| 18-Jun-2009 |
Markus Armbruster <armbru@redhat.com> |
Support addr=... in option argument of -net nic
Make net_client_init() accept addr=, put the value into struct NICinfo. Use it in pci_nic_init(), and remove arguments bus and devfn.
Don't support
Support addr=... in option argument of -net nic
Make net_client_init() accept addr=, put the value into struct NICinfo. Use it in pci_nic_init(), and remove arguments bus and devfn.
Don't support addr= in third argument of monitor command pci_add, because that clashes with its first argument. Admittedly unelegant.
Machines "malta" and "r2d" have a default NIC with a well-known PCI address. Deal with that the same way as the NIC model: make pci_nic_init() take an optional default to be used when the user doesn't specify one.
Signed-off-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
show more ...
|
#
5cea8590 |
| 29-May-2009 |
Paul Brook <paul@codesourcery.com> |
Use relative path for bios
Look for bios and other support files relative to qemu binary, rather than a hardcoded prefix.
Signed-off-by: Paul Brook <paul@codesourcery.com>
|