History | View | Annotate | Download (9.2 kB)
cris: Break out image loading to hw/cris-boot.c.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@axis.com>
linux-user: Use qemu-malloc.c.
Since we're no longer setting PAGE_RESERVED, there's no need toimplement qemu_malloc via mmap.
Signed-off-by: Richard Henderson <rth@twiddle.net>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Compile dma only once
Use a qemu_irq to request CPU exit.
7 compilations less for the full build.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Compile pckbd only once
Use a qemu_irq to indicate A20 line changes. Move I/O port 92to pckbd.c.
Compile acpi_piix4, apm and pm_smbus only once
12 compilations less for the full build.
pc: split out piix specific part from pc.c into pc_piix.c
Finally, we can safely split out the piix specific part from pc.cinto pc_piix.c.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>Acked-by: Gerd Hoffmann <kraxel@redhat.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
acpi: split acpi.c into the common part and the piix4 part.
Split acpi.c into the common part and the piix4 specific part.The common part will be used later.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>Acked-by: Gerd Hoffmann <kraxel@redhat.com>...
acpi: split out apm register emulation from acpi.c
Split out apm register emulation for acpi.c into apm.c.The apm emulation will be used later.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>Acked-by: Gerd Hoffmann <kraxel@redhat.com>Cc: Aurelien Jarno <aurelien@aurel32.net>...
acpi: split out piix4 smbus routines from acpi.c into pm_smbus.c
Split out piix4 smbus routines from acpi.c into pm_smbus.c anduse it.The split out smbus emulation will be used later.
Compile virtio-9p-debug and virtio-9p-local once
Add KVM CFLAGS to vhost build
The configure test of vhost uses KVM CFLAGS, so the build must use themas well. Otherwise we specifically miss what --kerneldir provides.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
virtio-9p: Add a virtio 9p device to qemu
This patch doesn't implement the 9p protocol handlingcode. It adds a simple device which dump the protocol data.
[jvrao@linux.vnet.ibm.com: Little-Endian to host format conversion][aneesh.kumar@linux.vnet.ibm.com: Multiple-mounts support]...
linux-user: Remove ELFLOAD32.
The ABI-specific types used by linux_binprm and image_infoare different after forcing TARGET_ABI32 on. Which meansthat the parameters that load_elf_binary_multi sees are notthose that loader_exec passed. This is inherently broken...
Compile event_notifier only once
Compile vl.c once
Since kvm.h can be used in files compiled once,we can partially revertb33612d03540fda7fa67485f1c20395beb7a2bf0.
provide a stub version of kvm-all.c if !CONFIG_KVM
This allows limited use of kvm functions (which will return ENOSYS)even in once-compiled modules. The patch also improves a bit the errormessages for KVM initialization.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>...
move balloon handling to balloon.c
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Make virtio-pci building conditional again
Commit b305b9d7d6990e492966ffb1fdf619482adeb7e2 made building of virtio-pciconditional and not enabled on S390x, because it collides with the S390 bus.
Commit 087431d1d1bf4e785edfa89e8cd05fcdac558dc3 accidentially reverted that...
Revert "Compile usb-ohci only once"
This reverts commit f1698408f1dcb7548a21828a0b1e2b530fae3af3.
PCI is always little-endian. Having a user-visible "be" property is justplain wrong.
sparc32: rename iommu.c to sun4m_iommu.c to make room for other IOMMUs
notifier: event notifier implementation
event notifiers are slightly generalized eventfd descriptors. Currentimplementation depends on eventfd because vhost is the only user, andvhost depends on eventfd anyway, but a stub is provided for non-eventfdcase....
vhost: vhost net support
This adds vhost net device support in qemu. Will be tied to tap deviceand virtio by following patches. Raw backend is currently missing,will be worked on/submitted separately.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>...
virtio-pci: compile per-target
With vhost, virtio-pci needs to include kvm.h and kvm.h needs to be builtper-target.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Fix -enable-kvm
Make vl.o compiled per target and fix a thinko in hw/acpi.c. It's not trivialto make kvm.h consumable by compiled-once files.
Compile most PPC devices only once
Make byte swapping unconditional since PPC is big endian.
Compile prep_pci only once
Compile qemu-timer only once
Arrange various declarations so that also non-CPU code can accessthem, adjust users.
Move CPU specific code to cpus.c.
Compile openpic only once
Replace TARGET_PAGE_SIZE with 4096. Make byte swapping unconditionalsince PPC is big endian.
Compile ide/macio only once
Compile pflash_cfi01 only once
Push TARGET_WORDS_BIGENDIAN dependency to board level.
Compile pflash_cfi02 only once
Refactor target specific handling, compile vl.c only once
Move target specific functions and RAM handling to arch_init.c.
Add a flag to QEMUOptions structure to indicate for whicharchitectures the option is allowed, check the flagin run time and remove conditional code in option handling....
Compile acpi only once
Use qemu_irqs to trigger CMOS S3 and SMI events.
Avoid using kvm.h, which uses CPUState.
Refactor CPUState handling out of vl.c
Compile vmware_vga only once
Compile some MIPS devices only once
Move CPU specific declarations to a separate file.
Compile ide/core only once
Make win2k install hack unconditional as it is still restricted tox86 only in vl.c.
Replace TARGET_PAGE_SIZE and 4096 with PAGE_SIZE.
Compile virtio-pci only once
Compile sound devices only once
Compile pci_host only once
Convert pci_host_conf_register_mmio_noswap(x) topci_host_conf_register_mmio(x, 0).
Convert pci_host_conf_register_mmio(x) topci_host_conf_register_mmio(x, 1) for big endian hosts, all caseshappen to be BE.
Compile pcie_host only once
Compile pci only once
Move coalesced_mmio declarations to a more accessible location.
Compile usb-ohci only once
Compile serial only once
Compile ne2000_isa only once
Compile isa_mmio only once
Compile most PCI network cards only once
Compile async only once
Compile qemu-error only once
Compile fdc only once
Compile most IDE devices only once
Compile usb-uhci only once
Compile vga-isa only once
Compile i8254 only once
Compile pcspk only once
Compile parallel only once
Compile vga-pci only once
Compile disassemblers only once
split out qemu-timer.c
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Merge remote branch 'markus/qerror' into staging
error: Move qemu_error() & friends from monitor.c to own file
They're about reporting errors, not about the monitor.
load_elf: replace the address addend by a translation function
A few machines need to translate the ELF header addresses into physicaladdresses. Currently the only possibility is to add a value to theaddresses.
This patch replaces the addend argument by and a translation function...
x86/cpuid: move CPUID functions into separate file
about half of target-i386/helper.c consist of CPUID related functions.Only one of them is a real TCG helper function. So move the wholeCPUID stuff out of this into a separate file to get bettermaintainable parts....
alpha-linux-user: Implement signals.
Move userland PALcode handling into linux-user main loop so thatwe can send signals from there. This also makes alpha_palcode.csystem-level only, so don't build it for userland. Add definesfor GENTRAP PALcall mapping to signals....
Don't compile rwhandler.c for user targets
rwhandler: simplified way to register for mem/io
Some users prefer a single callback with length passed as parameter tousing b/w/l callbacks. It would maybe be cleaner to just pass length toexisting callbacks but that's a lot of churn. So for now add a wrapper....
linux-user: adapt uname machine to emulated CPU
This patch for linux-user adapts the output of the emulated uname()syscall to match the configured CPU. Tested with x86, x86-64 and armemulation.
Signed-off-by: Riku Voipio <riku.voipio@iki.fi>Signed-off-by: Loïc Minier <lool@dooz.org>
Refactor DEC 21154 PCI bridge
It's currently not used by PPC machines. Refactor so that also Sparc64machines can use it.
microblaze: The petalogix s3adsp board uses intel flashes
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@petalogix.com>
virtio-console: qdev conversion, new virtio-serial-bus
This commit converts the virtio-console device to create a newvirtio-serial bus that can host console and generic serial ports. Thefile hosting this code is now called virtio-serial-bus.c.
The virtio console is now a very simple qdev device that sits on the...
Move virtio-serial to Makefile.objs
There's nothing target-dependent in the virtio-serial code so allow itto be compiled just once for all the targets.
Signed-off-by: Amit Shah <amit.shah@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
finish VPATH -> vpath translation
This adds a few more vpath suffixes and points the remaining two pathsexplicitly to $(SRC_PATH) in order to eliminate the VPATH assignmentfrom config-host.mak.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Cc: Juan Quintela <quintela@redhat.com>...
multiboot: Separate multiboot loading into separate file
Move multiboot loading code into separate files as suggested by Alex Graf.
Signed-off-by: Adam Lackorzynski <adam@os.inf.tu-dresden.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
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...
debugcon: support for debugging consoles (e.g. Bochs port 0xe9)
Add generic support for debugging consoles (simple I/O ports whichwhen written to cause debugging output to be written to a target.)The current implementation matches Bochs' port 0xe9, allowing the same...
Drop --whole-archive and static libraries
Juan has contributed a cool Makefile infrastructure that enables us to dropstatic libraries completely:
Move shared obj-y definitions to Makefile.objs, prefixed {common-,hw-,user-},and link those object files directly into the executables....
Add S390x virtio machine bus
On S390x we don't want to go through the hassle of emulating real existinghardware, because we don't need to for running Linux.
So let's instead implement a machine that is 100% based on VirtIO which wefortunately implement already....
Add S390x virtio machine description
In order to use the new S390x virtio bus we just introduced, we alsoneed a machine description that sets up the machine according to ourPV specification.
Let's add that machine description and be happy!
Signed-off-by: Alexander Graf <agraf@suse.de>...
Remove rule for config-devices.h
Since commit a992fe3d0fc185112677286f7a02204d8245b61econfig-devices.h is no longer used.
So there is no need to keep the dependency rulesany longer.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Makefile dependencies for device configs
Add makefile dependencies for target specific device configs.These will copy the default config if none exists, obsoleting the oldconfigure time code. If a config already exists but is older than thedefault then print a warning....
ARM PBX-A9 board support
Implement ARM RealView PBX-A9 board support.
Signed-off-by: Paul Brook <paul@codesourcery.com>
Built network devices once
Move some generic NICS into libhw, and build them for ARM targets.
LAN9118 emulation
Add SMSC LAN9118 ethernet emulation.
fix parallel build
Based on a ideas of Daniel Jacobowitz + Stefan Weil
Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
pci: pcie host and mmcfg support.
This patch adds common routines for pcie host bridge and pcie mmcfg.This will be used by q35 based chipset emulation.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
pci_host.h: move functions in pci_host.h into .c file.
split static functions in pci_host.h into pci_host.c andpci_host_template.h.Later a structures declared in pci_host.h, PCIHostState, will be used.However pci_host.h doesn't allow to include itself easily. This patches...
Split out bottom halves
Instead of putting more and more stuff into vl.c, let's have the genericfunctions that deal with asynchronous callbacks in their own file.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
pcnet: split away lance.c (sparc32 code).
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: split cmd646 and piix from pci.c
This patch splits cmd646 specific code from pci.c.This patch splits piix4 specific code from pci.c.And compile new piix.o and cmd646.o when they are needed.The only change that is not code movemet is removal of cmd646 specific parts...
Generate gdbstub-xml.c only when needed
First user of new config-devices.mak
Patchworks-ID: 35198Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile usb_ohci when one target uses it
Patchworks-ID: 35199Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Only compile isa_mmio when one target uses it
Patchworks-ID: 35200Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Add new config-devices.mak for each target
We generate config-devices.h from there automatically.We need to do it in main Makefile, because we are going to need a mainMakefile for them.
Patchworks-ID: 35196Signed-off-by: Juan Quintela <quintela@redhat.com>...
Generate config-devices.h
Generate config-devices.h for each target and config-all-devices.h forcommon library. We don't want to name both config-devices.h to avoidpath problems
Patchworks-ID: 35195Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Move generation of config-target.h to Makefile from configure
Patchworks-ID: 35194Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Rename config.{h, mak} config-target.{h, mak}
Add config.h file that includes config-target.h and config-host.h
Patchworks-ID: 35193Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Don't include config-host.mak from inside config.mak
Include it directly in Makefile.target
Patchworks-ID: 35189Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Compile some user files only once for all targets
Fix user emulator breakage
Fix breakage in the following conditions:- use in-tree building- build user targets after system targets
Revert "This files are compiled in libqemu.a now"
This reverts commit fe6549dfd76c278dbcd788b3c15c5e6e5ed32190.
tcg-runtime and host-utils are needed on 32 bit host and they are not partof libqemu.a.
Thanks to Stefan Weil for reporting.