Improve pflash cfi01 debug messages (Thomas Petazzoni).
This patches slightly improves the debugging messages in pflash_read()and pflash_write().
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5410 c046a42c-6fe2-441c-8c8c-71466251a162
Reset CFI01 flash wcycle after erase confirm (Thomas Petazzoni).
pfl->wcycle was set to 1 when the erase confirm command was set, whichlead to the next command being misinterpreted by Qemu:
pflash_write: Unimplemented flash cmd sequence (offset 00000000,...
Rearrange tick functions
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5408 c046a42c-6fe2-441c-8c8c-71466251a162
Resurrect the safe part of r5274
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5401 c046a42c-6fe2-441c-8c8c-71466251a162
Make PCI class description tables const
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5400 c046a42c-6fe2-441c-8c8c-71466251a162
Make some tables const
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5395 c046a42c-6fe2-441c-8c8c-71466251a162
Sun ss20 OBP does 32bit register access to esp (Robert Reif)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5394 c046a42c-6fe2-441c-8c8c-71466251a162
Reset CPU on INIT IPI
INIT IPI should reset CPU. Also non boot CPU should be halted. It willbe un-halted by SIPI.
Signed-off-by: Gleb Natapov <gleb@redhat.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5390 c046a42c-6fe2-441c-8c8c-71466251a162
qemu: improve scsi dma speed by increasing the dma buffer size
taken from Xen 17267:f4a92f0db20f, original patch by Samuel Thibault.
Signed-off-by: Avi Kivity <avi@qumranet.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>...
hw/apic.c: use bsr and bsf on x86_64
(C.W. Betts)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5382 c046a42c-6fe2-441c-8c8c-71466251a162
Check that asynchronous (DMA) submission succeeds (Ian Jackson).
If it does not, abort the command immediately rather than droppingit on the floor.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5369 c046a42c-6fe2-441c-8c8c-71466251a162
Actually check read/write errors in IDE (Ian Jackson).
This patch makes the ide emulation actually take notice oferror returns from bdrv_write and bdrv_aio_{read,write}.
(Cherry picked from qemu-xen e0e7a0afe0e324a1f7d64c240f567b15dbe454cf, first posted to qemu-devel Wed, 20 Feb 2008 15:26:41 +0000)...
Add some missing static qualifiers
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5363 c046a42c-6fe2-441c-8c8c-71466251a162
Make sure bluez programs (cross-)compile, add missing statics.
Spotted by Blue Swirl.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5358 c046a42c-6fe2-441c-8c8c-71466251a162
Fix SS-2 crash
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5357 c046a42c-6fe2-441c-8c8c-71466251a162
Refactor QEMUFile for live migration
To support live migration, we override QEMUFile so that instead of writing todisk, the save/restore state happens over a network connection.
This patch makes QEMUFile read/write operations function pointers so that we...
Emulate a USB bluetooth dongle (or HCI Transport layer).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5349 c046a42c-6fe2-441c-8c8c-71466251a162
Use VHCI to allow the host os to participate in a qemu bluetooth "vlan".
This does the reverse of bt-host.c, proxying from guest to host.Appears to be more reliable.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5348 c046a42c-6fe2-441c-8c8c-71466251a162
Bluetooth HIDP emulation on top of usb-hid.c and L2CAP and SDP.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5347 c046a42c-6fe2-441c-8c8c-71466251a162
Add L2CAP logic and a virtual SDP server for use in emulated devices.
Note that the L2CAP flow-controlled mode is not fully supported.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5346 c046a42c-6fe2-441c-8c8c-71466251a162
Add a virtual HCI.
This implements most of the logic of a real HCI (at least the piecesmarked as mandatory). It doesn't support keys, authentication etc.It works on top of the LMP layer, which is not fully emulated becausesoftware never has direct access to it....
Emulate a serial bluetooth HCI with H4+ extensions and attach to n8x0's UART.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5343 c046a42c-6fe2-441c-8c8c-71466251a162
Add a "null" bluetooth HCI and a header file for bluetooth.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5342 c046a42c-6fe2-441c-8c8c-71466251a162
Add to machine structure a flag to use SCSI drives instead of IDE: fixes SS-20
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5339 c046a42c-6fe2-441c-8c8c-71466251a162
Fix dots per clock value, cleanup and "optimize"
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5338 c046a42c-6fe2-441c-8c8c-71466251a162
Optional "precise" VGA retrace support
Selected via: -vga <name>,retrace=precise
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5336 c046a42c-6fe2-441c-8c8c-71466251a162
Add a generic Niagara machine
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5329 c046a42c-6fe2-441c-8c8c-71466251a162
Revert r5274 which breaks savevm/loadvm
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5321 c046a42c-6fe2-441c-8c8c-71466251a162
pflash: Add missing parenthesis in error message.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5311 c046a42c-6fe2-441c-8c8c-71466251a162
Don't use ds->dpy_copy directly from hw/ (Jan Niehusmann).
I left a TODO in the code because this still doesn't definitelyfix all issues.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5308 c046a42c-6fe2-441c-8c8c-71466251a162
scsi-generic: decode correctly SCSI tape commands (Laurent Vivier)
This patch allows to use a "real" SCSI tape with qemu using"-drive /dev/sgX,if=scsi".
It allows to decode correctly transfer length when the type of thedevice is a tape.
Some issues remain when the application reading the tape tries to go...
ETRAX-FS: Correct ethernet PHY diagnostics register reads.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5300 c046a42c-6fe2-441c-8c8c-71466251a162
Add software and timer interrupt support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5299 c046a42c-6fe2-441c-8c8c-71466251a162
Add comment to windows SCSI hack.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5295 c046a42c-6fe2-441c-8c8c-71466251a162
LSI SCSI: raise UDC on infinite loop (Marcelo Tosatti)
Raise UDC (Unexpected Disconnect) when a large enough number ofinstructions has been executed by the SCRIPTS processor. This "solution" is much simpler than temporarily interrupting execution.
This remedies the situation with Windows which downloads SCRIPTS code...
scsi-generic: correct 6-bytes commands transfer length (Laurent Vivier)
According to SCSI documentation, for 6 bytes commands (READ,WRITE), if transfer length is 0 it specifies 256 blocks.
Signed-off-by: Laurent Vivier <Laurent.Vivier@bull.net>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>...
scsi-generic: correct usage of memset() (Laurent Vivier)
void *memset(void *s, int c, size_t n);
DESCRIPTION The memset() function fills the first n bytes of thememory area pointed to by s with the constant byte c."
Reported by Dietmar Maurer....
Suppress gcc 4.x -Wpointer-sign (included in -Wall) warnings
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5275 c046a42c-6fe2-441c-8c8c-71466251a162
Add signed versions of save/load functions
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5274 c046a42c-6fe2-441c-8c8c-71466251a162
Use a QEMUBH when an OMAP timer must expire immediately.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5265 c046a42c-6fe2-441c-8c8c-71466251a162
Add a comment about masking of CTI interrupt in 16550A UART.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5264 c046a42c-6fe2-441c-8c8c-71466251a162
Allow attaching devices to OMAP UARTs.
Also avoid two signedness warnings in hw/omap2.c.The API to attach new devices to serials is fine, bu the implementationis a hack.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5263 c046a42c-6fe2-441c-8c8c-71466251a162
Add Sparc32 display depth to firmware configuration
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5261 c046a42c-6fe2-441c-8c8c-71466251a162
Add common keys to firmware configuration
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5260 c046a42c-6fe2-441c-8c8c-71466251a162
Add UUID to firmware configuration info (Gleb Natapov)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5259 c046a42c-6fe2-441c-8c8c-71466251a162
Key/value based qemu<->guest firmware communication mechanism (Gleb Natapov)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5256 c046a42c-6fe2-441c-8c8c-71466251a162
[PATCH] alpha: fix linux syscall convention
According to linux kernel sources, register a3 is set in case of failure(and cleared in case of success) while register v0 contains the result(or -errno in case of error).
The convention was not followed which results in weird behaviour....
[PATCH] usb-serial: Fix data corruption with usb serial emulation
Fix warnings that would be caused by ld flag --warn-common
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5240 c046a42c-6fe2-441c-8c8c-71466251a162
16550A UART: RHR irq enable bit also masks the Rx timeout irq.
The "Rx timeout" (aka. Character Timeout Indication) has no separate maskbit in the IER register and according to the specs reading RHR is the onlyway to reset the irq. However on the hardware (tested on OMAP2 UART which...
Fix range in the hid report descriptor for USB tablet.
Should prevent the ugly wrapping due to a typo in an earlier commit.Fix by Gregor (gg@seh.de).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5232 c046a42c-6fe2-441c-8c8c-71466251a162
Right now, kvm keeps the memory allocation split, so we canhandle different areas in different ways. This schema works with qemutoo, so it appears to be the common ground.
This patch proposes using this common ground for everyone, by splitingraw qemu....
SH4: Serial controller improvement
Add receive character feature to SH4 SCIF.SH4-SCI feature implementation work is left.
(Shin-ichiro KAWASAKI)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5221 c046a42c-6fe2-441c-8c8c-71466251a162
MIPS: remove empty cpu_mips_irqctrl_init()
cpu_mips_irqctrl_init() function in hw/mips_timer.c is empty.Attached patch removes it, and its callers.
(Hervé Poussineau)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5214 c046a42c-6fe2-441c-8c8c-71466251a162
Fix warnings that would be caused by gcc flag -Wwrite-strings
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5206 c046a42c-6fe2-441c-8c8c-71466251a162
usb: Support for removing device by host addr, improved auto filter syntax (Max Krasnyansky)
This patch adds support for removing USB devices by host address.Which is usefull for things like libvirtd because there is no easy way tofind guest USB address of the host device....
uhci: Change default transaction lifetime to 32 frames (Max Krasnyansky)
Transaction lifetime was originally set to 10 frames. That was an arbitrarynumber I picked without much thinking :).I'm changing that to 32 frames because things like interrupt transfers...
alpha: only print debug information to the log file
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5181 c046a42c-6fe2-441c-8c8c-71466251a162
Fix most warnings that would be caused by gcc flag -Wundef
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5173 c046a42c-6fe2-441c-8c8c-71466251a162
CRIS: Mask off the cache selection bit after MMU translations.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5170 c046a42c-6fe2-441c-8c8c-71466251a162
hw/pcnet: use qemu_socket.h
(Jan Kiszka)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5149 c046a42c-6fe2-441c-8c8c-71466251a162
ETRAX-FS: Add support for DMA channel resets, needed for recent linux kernels.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5147 c046a42c-6fe2-441c-8c8c-71466251a162
SH4: R2D-PLUS FPGA: simply unassigned memory triggering
Use NULL to trigger unassigned memory error on 32-bit accesses insteadof assert(0) as suggested by Blue Swirl.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5141 c046a42c-6fe2-441c-8c8c-71466251a162
hw/pcnet.c: windows compile fix
(Eduardo Felipe)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5140 c046a42c-6fe2-441c-8c8c-71466251a162
pcnet: add loopback mode emulation
This patch enhances the pcnet NIC emulation with better loopback modesupport, including CRC generation for looped-back packets in "raw" mode.The patch has practically no impact on the normal RX and TX path.
Successfully tested against an ancient proprietary pcnet driver that...
sh4: Add R2D-PLUS FPGA support.
This adds trivial support for the R2D-PLUS FPGA, mostly just for theversioning information that the kernel uses for IRL mappings, in additionto handling the heartbeat and poweroff writes.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>...
sh4: CPU versioning.
Trivial patch adding CPU listing and the ability to do per-subtypeCVR/PVR/PRR values. Presently SH7750R and SH7751R definitions areprovided, as these are the ones in present use in-tree.
The CVR value for SH7751R is intentionally restricted so the kernel...
x86: Fix powerdown for non-ACPI case
Trivial fix for a corner case: system_shutdown on isapc machines causesqemu to segfaults due to accessing the uninitialized pm_state. Issue asystem shutdown instead.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>...
Reset I32_APIC_BASE on system RESET
Should be done according to spec.
Signed-off-by: Gleb Natapov <gleb@qumranet.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5128 c046a42c-6fe2-441c-8c8c-71466251a162
suppress a couple of spurious warnings in scsi-generic.c
This patch fixes two spurious `may be used uninitialised' warningswhen compiling with some compilers.
Signed-off-by: Andre Przywara <andre.przywara@amd.com>Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>...
Fix some warnings that would be generated by gcc -Wredundant-decls
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5115 c046a42c-6fe2-441c-8c8c-71466251a162
uhci: improved TD matching, working ISOC transfers
While trying to make VX-3000 camera work on XP under KVM I realized thatwe do not necessarily have to find original TD address. All we care aboutis the token which identifies the transfer rather well (direction, endpoint,...
uhci: Fixed length handling for SETUP and OUT tokens
Fixes regression reported agains Linux 2.6.18.Looks like XP and newer Linux kernels are less sensitiveto length returned for control transfers.
Signed-off-by: Max Krasnyansky <maxk@kernel.org>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>...
[sh4] MMU bug fix
Some bugs on SH4 MMU are fixed.
- When a TLB entry is overwritten or invalidated, tlb_flush_page() should be invoked to invalidate old entry.- When a ASID is changed, tlb_flush() should be invoke to invalidate entries which have old ASID....
[sh4] memory mapped TLB entries
SH4 MMU's memory mapped TLB feature is implemented.SH-Linux seems to write to memory mapped TLB to invalidate a TLB entry,but does not to read it. So only memory write feature is implemented.Work on memory read feature is left....
array overflow in hw/stellaris.c and hw/omap_dss.c
(Jindrich Makovicka)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5064 c046a42c-6fe2-441c-8c8c-71466251a162
Parallel Port Direction Fix
The direction bit in the control register should not be directly
set using PPWCONTROL. The kernel gives the following debug message.
parport0 (ppdev0): use data_reverse for this!
More over setting the data pins to forward mode does not work,...
PC: suggest a workaround to boot a kernel without hard-disk
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5061 c046a42c-6fe2-441c-8c8c-71466251a162
Ignore IDE command if issued while IDE is busy (Gleb Natapov)
Feature, Sector Count, LBA Low/Mid/High and Device registers should bewritten only when both BSY and DRQ are cleared to zero.Command register shall only be written when BSY and DRQ are set to zero...
Add image format option for USB mass-storage devices
(fix CVE-2008-1945)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5059 c046a42c-6fe2-441c-8c8c-71466251a162
uhci: fixes for save/load-vm (Max Krasnyansky)
For some reason we were not registering save/load-vm handler for piix3flavor of UHCI and hence save/load was broken.
Async transactions need to be canceled when we save the VM because thereis no way we can save/restore all that state. Since we do not mess the...
uhci: rewrite UHCI emulator, fully async operation with multiple outstanding transactions (Max Krasnyansky)
This is esentially a re-write of the QEMU UHCI layer. My initial goalwas to support fully async operation with multiple outstanding asynctransactions. Along the way I realized that I can greatly simplify...
usb: generic packet handler cleanup and documentation (Max Krasnyansky)
A bit better documentation of the USB device API, namelyreturn codes.Rewrite of usb_generic_handle_packet() to make it morereable and easier to follow.
Signed-off-by: Max Krasnyansky <maxk@kernel.org>...
husb: support for USB host device auto connect (Max Krasnyansky)
QEMU can now automatically grab host USB devices that match the filter.For now I just extended 'host:X.Y' and 'host:VID:PID' syntax to handlewildcards. So for example if you do something like...
husb: support for USB host device auto disconnect (Max Krasnyansky)
I got really annoyed by the fact that you have to manually dousb_del in the monitor when host device is unplugged and decidedto fix it :)
Basically we now automatically remove guest USB device...
Fix OpenBSD linker warnings
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5044 c046a42c-6fe2-441c-8c8c-71466251a162
De-assert PIC IRQs properly at APIC level
[ Taking latest isapc changes into account. ]
Ensure that PIC-delivered IRQs are properly de-asserted in case the APICis in EXTINT or FIXED mode (with level-triggering selected) on LINT0.Fixes EFI-BIOS boot issues....
De-assert ISA PIC IRQs properly
In case the PIC IRQ gets de-asserted on an isapc machine, we also haveto reset CPU_INTERRUPT_HARD. This is what older qemu (before therouting-through-APIC changes) used to do as well....
Silence vmport unless DEBUG is enabled.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5030 c046a42c-6fe2-441c-8c8c-71466251a162
ACPI suspend type field is 3 bits long
According to ACPI spec table 4-13 suspend type field should be 3 bitslong.
(Gleb Natapov)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5027 c046a42c-6fe2-441c-8c8c-71466251a162
i386: fix isapc machine
- cirrus vga: enable graphic console- pc: don't use apic for interrupts on ISA machine
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5026 c046a42c-6fe2-441c-8c8c-71466251a162
APIC: Do not start zero-period timers (Jan Kiszka)
The APIC timer must not start when the initial count is (still) zero.
This caused occasional stalls when booting secondary CPUs of Linux SMPguests.
Signed-off-by: Jan Kiszka <jan.kiszka@web.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>...
Fix some warnings that would be generated by gcc -Wmissing-prototypes
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5022 c046a42c-6fe2-441c-8c8c-71466251a162
Fix warnings that would be generated by gcc -Wstrict-prototypes
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5021 c046a42c-6fe2-441c-8c8c-71466251a162
Fix g364fb video emulation
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5016 c046a42c-6fe2-441c-8c8c-71466251a162
Use C99 initializers
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5013 c046a42c-6fe2-441c-8c8c-71466251a162
Cancel IDE outstanding IO on device reset (Gleb Natapov)
Cancel AIO in IDE layer on device rest in order to be in deterministic stateduring next boot.
Signed-off-by: Gleb Natapov <gleb@qumranet.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>...
Allow diskless operation for all mips platforms.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5001 c046a42c-6fe2-441c-8c8c-71466251a162
usb-serial: add support for modem lines
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4998 c046a42c-6fe2-441c-8c8c-71466251a162
Allow boot without a drive on Sparc machines (partly extracted from Xen)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4997 c046a42c-6fe2-441c-8c8c-71466251a162