qdev/prop: add CharDriverState property.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Message-Id:
Add/Fix command-line checks for smbios options v2
- One type 4 table is required per cpu. Add a check for this.- Fix check for smbios file.
Changes from v1:- static designation of smbios_validate_table, and remove whitespace
Signed-off-by: Beth Kon <eak@us.ibm.com>...
make windows notice media change
Windows seems to be very stupid about cdrom media change. It pollscdrom status and if status goes ready->media not present->readyit assumes that media was changed. If "media not present" step doesn'thappen even if "medium may have changed" was seen it assumes media...
qdev/prop: macros for creating typechecked properties.
There are DEFINE_PROP_$TYPE macros foreach property type. These macros link the qdev_prop_$name struct to thetype used by that property. typeof(struct->field) is verifyed to be the...
vga: do not resize the screen on hw_invalidate
Hi all,currently vga always resizes the screen when vga_hw_invalidate is calledwhile this is not required and all the other graphic emulators don't.This patch fixes it, making vga invalidate behaviour consistent with the...
qdev/isa: convert fdc.
qdev/isa: make pc use qdev for i8042 setup.
qdev-ify virtio-blk.
First user of the new drive property. With this patch applied hostand guest config can be specified separately, like this:
-drive if=none,id=disk1,file=/path/to/disk.img -device virtio-blk-pci,drive=disk1
You can set any property for virtio-blk-pci now. You can set the pci...
qdev/isa: add isa bus support to qdev.
Pretty simple and straigt forward.IRQs modeled simliar to sysbus.
qdev/isa: add qdev support to i8042 (aka ps/2 kbd+mouse).
qdev/isa: make the piix isa bridge register an isa bus.
QemuOpts: switch over -device.
Make -device switch use the QemuOpts framework.Everything should continue to work like it did before.
New: "-set device.$id.$property=$value" works.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>...
qdev/prop: add drive property.
Adds a (host) drive property, intended to be used by virtual diskbackend drivers.
tolower -> qemu_tolower
Use qemu_tolower() instead of tolower().Fixes warning on NetBSD.
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Message-Id:
Use qemu_irq for system_powerdown
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Sparc32: use qemu_irq for system_powerdown
Sparc32: move sparc32_dma init to sun4m.c
Also connect ESP and Lance reset signals to DMA.
Sparc32: remove VRAM and NVRAM sizes from hwdef
Sparc32: remove IRQ numbers from hwdef
Sparc32: move intbit_to_level table back to slavio_intctl.c
Sparc32: move device instantiation to sun4m.c
Sparc32: Refactor slavio timer
ppc_newworld: configure screen size from QEMU command line options
Use the FW_CFG interface to send user requested screen size and depth toOpenBIOS like 7f1aec5f93382eef75920899f4065613aeaf02a2 for ppc_oldworld.
Sparc64: configure screen size from QEMU command line options
ppc_oldworld: configure screen size from qemu command line options
This patch uses the FW_CFG interface to send user requested screen sizeand depth to openbios.
Signed-off-by: Laurent Vivier <laurent@vivier.eu>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Fix Sparse warnings: "Using plain integer as NULL pointer"
PPC: convert Uni-north to qdev: also fixes Mac99 machine crash
PPC: convert Grackle to qdev
esp: fix interrupt register read
Read of interrupt register should clear it and also sequence step and status.
Fix SDL zooming with pl110 (cf. d3ffcafe25b5966b351ea6100160c2156688f22f)
e1000.c doesn't properly emulate EERD and ICS registers
Once again, the emulation of the EERD and ICS registers in e1000.c isincorrect. Nobody has noticed this before because none of the Intel-writtene1000 drivers use these registers, and all of the independently written open...
Remove the virtio-{blk, console}-pci-0-10 device types
These are now unused.
However, perhaps the idea is that when we add -device, they will beuseful? In that case, we should add virtio-net-pci-0-10 too.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
Fix VM state change handlers running out of order
When a VM state change handler changes VM state, other VM state changehandlers can see the state transitions out of order.
bmdma_map(), scsi_disk_init() and virtio_blk_init() install VM statechange handlers to restart DMA. These handlers can vm_stop() by...
qdev: factor out qdev_print_devinfo.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
qdev/core: add monitor command to list all drivers
qdev: convert all vga devices.
Remove the pc-0-10 machine type
We have the pc-0.10 machine type now which does exactly the samething.
Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
rename WORDS_BIGENDIAN to HOST_WORDS_BIGENDIAN
Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Rename HAVE_FDT to CONFIG_FDT and define it also in Makefile
Refactor code to remove one #ifdef CONFIG_FDT
Introduce -smp , maxcpus= flag to specify maximum number of CPUS.
Follow on patch will use it to determine the size of the MADT andother BIOS tables.
Signed-off-by: Jes Sorensen <jes@sgi.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
qemu: msix nit: clear msix_entries_nr on error
I don't think it's critical to do this, but it'sbest to keep uninit and error recovery consistent.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
kill drives_table
First step cleaning up the drives handling. This one does nothing butremoving drives_table[], still it became seriously big.
drive_get_index() is gone and is replaced by drives_get() which handsout DriveInfo pointers instead of a table index. This needs adaption in...
kill drives_opt
cleanup pretty simliar to the drives_table removal patch: - drop the table and make a linked list out of it. - pass around struct pointers instead of table indices.
switch -drive to QemuOpts.
Demo QemuOpts in action ;)
Implementing a alternative way to specify the filename should bejust a few lines of code now once we decided how the cmd line syntaxshould look like.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>...
HPET fixes for reg writes
This patch addresses the problems found by Andriy Gapon:
- The code was incorrectly overwriting the high order 32 bits of the timer and hpet config registers. This didn't show up in testing because linux and windows use hpet in legacy mode,...
qdev/pci: hook up i440fx.
Hook i44fx pcihost into sysbus.Convert Host bridge and ISA bridge pci devices to qdev.Tag as no-user.
qdev/prop: add pci devfn property
So we can parse "$slot.$fn" strings into devfn numbers.
qdev/pci: use qdev_prop_pci_devfn
Put the new property into use.
qdev: create default bus names.
Create a default bus name if none is passed to qbus_create().
If the parent device has DeviceState->id set it will be used to createthe bus name,. i.e. -device lsi,id=foo will give you a scsi bus named"foo.0".
If there is no id BusInfo->name (lowercased) will be used instead, i.e....
qdev: bus walker + qdev_device_add()
This patch implements a parser and qdev tree walker for bus paths andadds qdev_device_add on top of this.
A bus path can be: (1) full path, i.e. /i440FX-pcihost/pci.0/lsi/scsi.0 (2) bus name, i.e. "scsi.0". Best used together with id= to make...
Add machine type aliases
Add an 'alias' field to QEMUMachine and display it in the output of'qemu -M ?' with an '(aliased to foo)' suffix.
Aliases can change targets in newer versions of qemu, so management toolsmay choose canonicalize machine types to ensure that if a user chooses an...
Add a pc-0.11 machine type and make the pc type an alias
The pc-0.11 type allows users of qemu-0.11 to use a machine type whichthey know will remain compatible when the upgrade to qemu-0.12.
Management tools may choose to canonicalize the 'pc' machine type to...
Give the kernel more room
My self-built PPC kernel doesn't fit in the region reserved forthe kernel, so I can't use -kernel with it.
Let's just extend the region.
Signed-off-by: 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'sjust round up the VGA BIOS size so nobody complains anymore and we don't needto implement sub-page slots.
Required for booting a PPC guest in KVM....
notify io_thread at the end of rx handling
This is a backport from qemu-kvm. Just instead of using kvm's specificnotification mechanism, we use qemu_notify_event()
Signed-off-by: Glauber Costa <glommer@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Add save/restore support to the LSI logic SCSI device model.
This patch requires "Handle BH's queued by AIO completions inqemu_aio_flush()" to work reliably. The combination of those twopatches survived 300+ migrations with heavy IO load running in the...
Sparc32: convert Sun4c interrupt controller to qdev
Sparc32: convert SBI to qdev
Sparc32/64: use 64 bit type for memory size
qdev: add 64 bit type
Sparc64: refactor kernel init
Sparc64: refactor CPU init
Sparc64: convert memory to qdev
Sparc64: convert boot prom to qdev
Sparc32: Fix lance
Sparc64: convert APB to qdev
Thanks to Igor Kovalenko for a bugfix.
Fix most warnings (errors with -Werror) when debugging is enabled
I used the following command to enable debugging:perl -p -i -e 's/^\/\/#define DEBUG/#define DEBUG/g' * /* *//*
Fix build with DEBUG_PCI in pci_host.h enabled
Clean up fdc qdev conversion
isxdigit -> qemu_isxdigit
Hi!
Attached patch uses qemu_isxdigit() instead of isxdigit().Fixes build warning on NetBSD.
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
-----to satisfy European Law for business letters:Advanced Micro Devices GmbH...
Suppress a Sparse warning
Move the export to a file used by both qdev.c and sysbus.c.
Sparc32: use hex for version numbers
0x10000000 looks better than 268435456.
Sparc32: fix escc devices broken by ee6847d19be16c789b8bd4e553b7cd6701ba1245
The logic of Zilog makes channel B the first device and channel A thesecond one.
Sparc32: fix fdc io_base
On some Sparc32 machines, fdc is located above 4G limit, so uint32_t is notappropriate type for io_base.
Fix sparc-softmmu breakage by ee6847d19be16c789b8bd4e553b7cd6701ba1245
Move the qdev_init(dev); call after the setting of d->size.Thanks to Filip Navara.
fix for bad macaddr of e1000 in Windows 2003 server with original MS driver
The sequence of reading from eeprom is "offset by one" moved because of a falsedetection of a clock cycle after an eeprom reset. Keeping the last clock valueafter a reset keeps it in sync....
qdev: add user-specified identifier to devices.
Add id field to DeviceState. Make "info qtree" print it.
This helps users and management apps identifying devices in monitoroutput, which is especially useful with otherwise identical devicessuch as two virtio disks....
qdev/compat: virtio-blk-pci 0.10 compatibility.
Add class property to virtio-blk-pci allowing to specify the PCI class.Add compat property to pc-0.10 to set the old PCI class.
qdev: add id= support for pci nics.
qdev/compat: virtio-console-pci 0.10 compatibility.
Add class property to virtio-console-pci allowing to specify the PCI class.Add compat property to pc-0.10 to set the old PCI class.
qdev: print device id in "info pci".
qdev/compat: virtio-net-pci 0.10 compatibility.
Add vectors property, allowing to turn off msi by setting vectors=0.Add compat property to pc-0.10 disabling msi.
qdev: es1370+ac97 description
qdev: factor out driver search to qdev_find_info()
qdev/compat: compat property infrastructure.
This add support for switching devices into a compatibility modeusing device properties. Machine types can have a list of propertiesfor specific devices attached to allow the easy creation of machinetypes compatible to older qemu versions....
qdev: add no_user, alias and desc
no_user: prevent users from adding certain devices.desc: description of the device.alias: to allow user friendly shortcuts on the command line, i.e. -device usbmouse instead of -device "QEMU USB Mouse" or -device lsi instead of -device lsi53c895a...
qdev/compat: add pc-0.10 machine type.
Initialize PS2 keyboard / mouse state on reset
Currently only common PS2 state is initialized, leaving keyboard andmouse specific state to contain stale values.
Signed-off-by: Dinesh Subhraveti <dineshs@us.ibm.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
qdev: rework device properties.
This patch is a major overhaul of the device properties. The propertiesare saved directly in the device state struct now, the linked list ofproperty values is gone.
Advantages: * We don't have to maintain the list with the property values....
cleanup: drop unused struct elements from VirtIOPCIProxy.
Handle vga= in -append
Here is a patch I had sent twice to the list 2 years ago.Hopefuly this time someone will be interested
It adds support for passing vga mode to linux kernel throughvga= option in -append
Signed-off-by: Pascal Terjan <pterjan@gmail.com>...
Reset HPET config register on hpet_reset
Without this, after system reset, hpet does not detect transition fromnon-legacy to legacy mode.
Signed-off-by: Beth Kon <eak@us.ibm.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Update to a hopefully more future proof FSF address
Sparc32: convert slavio interrupt controller to qdev
Also increase QDEV_MAX_IRQ.
Sparc32: refactor CPU init
Sparc32: convert memory to qdev
Sparc32: convert boot prom to qdev
Sparc32: convert iommu to qdev
Sparc32: convert cs4231 to qdev