History | View | Annotate | Download (11.3 kB)
Implement PAPR virtual SCSI interface (ibmvscsi)
This patch implements the infrastructure and hypercalls necessary forthe PAPR specified Virtual SCSI interface. This is the normal methodfor providing (virtual) disks to PAPR partitions.
Signed-off-by: Ben Herrenschmidt <benh@kernel.crashing.org>...
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...
Implement the PAPR (pSeries) virtualized interrupt controller (xics)
PAPR defines an interrupt control architecture which is logically dividedinto ICS (Interrupt Control Presentation, each unit is responsible forpresenting interrupts to a particular "interrupt server", i.e. CPU) and...
Implement sPAPR Virtual LAN (ibmveth)
This patch implements the PAPR specified Inter Virtual Machine LogicalLAN; that is the virtual hardware used by the Linux ibmveth driver.
Signed-off-by: Paul Mackerras <paulus@samba.org>Signed-off-by: David Gibson <dwg@au1.ibm.com>...
Start implementing pSeries logical partition machine
This patch adds a "pseries" machine to qemu. This aims to emulate alogical partition on an IBM pSeries machine, compliant to the"PowerPC Architecture Platform Requirements" (PAPR) document.
This initial version is quite limited, it implements a basic machine...
Implement the bus structure for PAPR virtual IO
This extends the "pseries" (PAPR) machine to include a virtual IO bussupporting the PAPR defined hypercall based virtual IO mechanisms.
So far only one VIO device is provided, the vty / vterm, providinga full console (polled only, for now)....
xilinx: Add AXIENET & DMA models
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@petalogix.com>
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>
lm32: system control model
This patch add support for a system control block. It is supposed toact as helper for the emulated program. E.g. shutting down the VM orprinting test results. This model is intended for testing purposes only anddoesn't fit to any real hardware. Therefore, it is not added to any board...
lm32: EVR32 and uclinux BSP
This patch adds support for the following two BSPs: - LM32 EVR32 BSP (as used by RTEMS) - uclinux BSP by Theobroma Systems
Signed-off-by: Michael Walle <michael@walle.cc>Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
LatticeMico32 target support
This patch adds support for the LatticeMico32 softcore processor by LatticeSemiconductor.
lm32: interrupt controller model
This patch adds the interrupt controller of the lm32. Because the PIC isaccessed through special control registers and opcodes, there are callbacksfrom the lm32 translation code to this model.
Signed-off-by: Michael Walle <michael@walle.cc>...
lm32: juart model
This patch adds the JTAG UART model. It is accessed through special controlregisters and opcodes. Therefore the translation uses callbacks to thismodel.
lm32: timer model
This patch adds support for the LatticeMico32 system timer.
lm32: uart model
This patch add support for the LatticeMico32 UART.
applesmc: make optional
Based on patch by David Ahern.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
kvm: x86: Introduce kvmclock device to save/restore its state
If kvmclock is used, which implies the kernel supports it, register akvmclock device with the sysbus. Its main purpose is to save and restorethe kernel state on migration, but this will also allow to visualize it...
hpet: make optional
Ignore failure with hpet device creation.
x86: make vmmouse optional
Compile vmmouse in hwlib. Ignore failure if vmmouse device can't becreated.
linux-user/FLAT: allow targets to override FLAT processing
This brings flatload.c more in line with the current Linux FLAT loaderwhich allows targets to handle various FLAT aspects in their own way.For the common behavior, the new functions get stubbed out....
SPARC: Emulation of Leon3
Leon3 is an open-source VHDL System-On-Chip, well known in space industry (moreinformation on http://www.gaisler.com).
Leon3 is made of multiple components available in the GrLib VHDL library.Three devices are implemented: uart, timers and IRQ manager....
Add scripts directory
Move build and user scripts into scripts directory.
Merge remote branch 'mst/for_anthony' into staging
Merge branch 'spice.v23.pull' of git://anongit.freedesktop.org/spice/qemu
build, pci: remove QMP dependency on core PCI code
by introducing pci-stub.c, eliminate QMP dependency on core PCI coderquired by query-pci command.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
e1000: Make little endian
The e1000 has compatibility code to handle big endianness which makes itmandatory to be recompiled on different targets.
With the generic mmio endianness solution, there's no need for that anymore.We just declare all mmio to be little endian and call it a day....
rtl8139: Declare as little endian
This patch replaces explicit bswaps with endianness hints to themmio layer.
Because we don't depend on the target endianness anymore, we can alsomove the driver over to Makefile.objs.
Signed-off-by: Alexander Graf <agraf@suse.de>...
usb_ohci: Always use little endian
spice: add qxl device
qxl is a paravirtual graphics card. The qxl device is the bridgebetween the guest and the spice server (aka libspice-server). Thespice server will send the rendering commands to the spice client, whichwill actually render them....
PCI config include
Split PCI config options into a separate file
Signed-off-by: Paul Brook <paul@codesourcery.com>
VirtIO config option
Make virtio devices optional. Selecting individual devices is not usefulas the host bindings are all in one file.
Revert "Add support for generating a systemtap tapset static probes"
This reverts commit 2834c3e0140c3b0ed4422909dfa0607b7213d95d.
Conflicts:
Makefile.target
Add support for generating a systemtap tapset static probes
This introduces generation of a qemu.stp/qemu-system-XXX.stpfiles which provides tapsets with friendly names for staticprobes & their arguments. Instead of
probe process("qemu").mark("qemu_malloc") {...
Fix compilation failure with simple trace when srcdir==objdir
Fix a makefile error that meant that qemu would not compile ifthe source and object directories were the same.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Consolidate oom_check() functions
This consolidates the duplicated oom_check() functions, as well assplitting them into OS dependant versions to avoid the #ifdefgrossness that was present in the old osdep.c version.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>...
Merge remote branch 'qmp/for-anthony' into staging
Haiku doesn't have libm
Math functions are integrated into Haiku's libroot.
Signed-off-by: Andreas Färber <andreas.faerber@web.de>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Monitor: Rename the qemu-monitor.hx file
Let's be consistent and call it hmp-commands.hx, so that we haveqmp-commands.hx for QMP and hmp-commands.hx for HMP.
Please, note that this commit doesn't touch qemu-monitor.texi. Alltexi files have the qemu- prefix and I don't think it's worth...
QMP: Introduce command dispatch table
Also update QMP functions to use it. The table is generatedfrom the qmp-commands.hx file.
From now on, QMP and HMP have different command dispatchtables.
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
powerpc: Add a virtex5 ml507 refdesign board
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>Signed-off-by: Alexander Graf <agraf@suse.de>
trace: Add trace-events file for declaring trace events
This patch introduces the trace-events file where trace events can bedeclared like so:
qemu_malloc(size_t size) "size %zu" qemu_free(void *ptr) "ptr %p"
These trace event declarations are processed by a new tool called...
Fix "make install" with a cross toolchain
We must be able to use a non-native strip executable, but not allversions of 'install' support the --strip-program option (e.g.OpenBSD). Accordingly, we can't use 'install -s', and we must run stripseparately....
Disable build of ivshmem on non-KVM systems
Signed-off-by: Cam Macdonell <cam@cs.ualberta.ca>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
RESEND: Inter-VM shared memory PCI device
resend for bug fix related to removal of irqfd
Support an inter-vm shared memory device that maps a shared-memory object as aPCI device in the guest. This patch also supports interrupts between guest bycommunicating over a unix domain socket. This patch applies to the qemu-kvm...
vnc: tight add PNG encoding
Introduce a new encoding: VNC_ENCODING_TIGHT_PNG [1] (-269) with a newtight filter VNC_TIGHT_PNG (0x0A). When the client tells it supports the Tight PNGencoding, the server will use tight, but will always send encoding pixels using...
vnc: tight: add JPEG and gradient subencoding with smooth image detection
Add gradient filter and JPEG compression with an heuristic to detect howlossy the comppression will be. This code has been adapted fromlibvncserver/tight.c.
JPEG support can be enabled/disabled at compile time with --enable-vnc-jpeg...
AppleSMC device emulation
Intel Macs have a chip called the "AppleSMC" which they use to controlcertain Apple specific parts of the hardware, like the keyboard backgroundlight.
That chip is also used to store a key that Mac OS X uses to decrypt binaries....
piix4: compile only once
Compile piix4 in hwlib. Two compilations less for the full build.
hw/omap1.c : separate interrupt controller module
Signed-off-by: cmchao <cmchao@gmail.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
hw/omap2.c : separate spi module
hw/omap2.c : separate tap module(Test-Chip-level)
hw/omwp2.c : separate l4 interconnect module
hw/omap1.c : separate uart module
hw/omap2.c : separate gptimer module
hw/omap2.c : separate synctimer module
hw/omap2.c : separate gpmc(general purpose memory controller)
hw/omap2.c : separate sdrc (sdram controller)
hw/omap1.c : separate gpio module
MIPS: Initial support of fulong mini pc (machine construction)
Signed-off-by: Huacai Chen <zltjiangshi@gmail.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
MIPS: Initial support of bonito north bridge used by fulong mini pc
Initial support of vt82686b south bridge used by fulong mini pc
virtio-9p: Make infrastructure for the new security model.
This patch adds required infrastructure for the new security model.
- A new configure option for attr/xattr.- if CONFIG_VIRTFS will be defined if both CONFIG_LINUX and CONFIG_ATTR defined.- Defines routines related to both security models....
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.
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.