summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* hw: move interrupt controllers to hw/intc/, configure with default-configs/Paolo Bonzini2013-04-0835-28/+34
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move DMA controllers to hw/dma/, configure with default-configs/Paolo Bonzini2013-04-0811-10/+13
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move VFIO and ivshmem to hw/misc/Paolo Bonzini2013-04-084-10/+6
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move PCI bridges to hw/pci-* or hw/ARCHPaolo Bonzini2013-04-0835-27/+26
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move SD/MMC devices to hw/sd/, configure with default-configs/Paolo Bonzini2013-04-086-3/+6
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move timer devices to hw/timer/, configure with default-configs/Paolo Bonzini2013-04-0828-17/+37
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move ISA bridges and devices to hw/isa/, configure with default-configs/Paolo Bonzini2013-04-0811-2/+10
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move char devices to hw/char/, configure via default-configs/Paolo Bonzini2013-04-0829-19/+29
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move more files to hw/xen/Paolo Bonzini2013-04-0810-3/+6
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move SCSI controllers to hw/scsi/, configure via default-configs/Paolo Bonzini2013-04-083-1/+2
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move SSI controllers to hw/ssi/, configure via default-configs/Paolo Bonzini2013-04-089-6/+8
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move I2C controllers to hw/i2c/, configure via default-configs/Paolo Bonzini2013-04-086-3/+6
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move display devices to hw/display/, configure via default-configs/Paolo Bonzini2013-04-0831-23/+45
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move audio devices to hw/audio/, configure via default-configs/Paolo Bonzini2013-04-089-3/+8
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move block devices to hw/block/, configure via default-configs/Paolo Bonzini2013-04-0812-3/+10
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move NICs to hw/net/, configure via default-configs/Paolo Bonzini2013-04-0825-10/+22
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move MC146818RTC to hw/timer/, configure via default-configs/Paolo Bonzini2013-04-0820-9/+18
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move watchdogs to hw/watchdog, configure via default-configs/Paolo Bonzini2013-04-086-2/+5
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: make all of hw/pci/ configurable via default-configs/Paolo Bonzini2013-04-086-2/+8
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: make all of hw/usb/ configurable via default-configs/Paolo Bonzini2013-04-083-1/+3
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: make all of hw/ide/ configurable via default-configs/Paolo Bonzini2013-04-086-2/+6
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move virtio devices to hw/ subdirectoriesPaolo Bonzini2013-04-0824-7/+15
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move target-independent files to subdirectoriesPaolo Bonzini2013-04-08227-208/+205
| | | | | | | This patch tackles all files that are compiled once, moving them to subdirectories of hw/. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* moxie: configure with default-configs filePaolo Bonzini2013-04-082-1/+4
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: make subdirectories for devicesPaolo Bonzini2013-04-0825-3/+31
| | | | | | Prepare the new directory structure. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* hw: move headers to include/Paolo Bonzini2013-04-08511-830/+829
| | | | | | | | | Many of these should be cleaned up with proper qdev-/QOM-ification. Right now there are many catch-all headers in include/hw/ARCH depending on cpu.h, and this makes it necessary to compile these files per-target. However, fixing this does not belong in these patches. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* build: enable using $(CONFIG_FOO) on the rhs of config filesPaolo Bonzini2013-04-081-1/+4
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* Merge branch 'arm-devs.next' of git://git.linaro.org/people/pmaydell/qemu-armBlue Swirl2013-04-0613-125/+137
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'arm-devs.next' of git://git.linaro.org/people/pmaydell/qemu-arm: hw/nand.c: Fix nand erase operation cadence_uart: Flush queued characters on reset pl330: Don't inhibit ES bits on INTEN pflash_cfi01: Implement migration support pflash_cfi01: Drop unused 'bypass' field hw/arm_gic_common: Use vmstate struct rather than save/load functions arm_gic: Fix sizes of state fields in preparation for vmstate support vmstate: Add support for two dimensional arrays hw/onenand.c: fix migration of dynamically allocated buffer "otp" hw/sd.c: fix migration of dynamically allocated buffer "buf" vmstate.h: introduce VMSTATE_BUFFER_POINTER_UNSAFE macro hw/arm_mptimer: Save the timer state pl050: Don't send always-constant is_mouse field hw/arm/nseries: don't print to stdout or stderr
| * hw/nand.c: Fix nand erase operationWendy Liang2013-04-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Usually, nand erase operation has only 2 or 3 address cycles. We need to mask s->addr to zero unset stale high-order bytes in the nand address before using it as the erase address. This fixes the NAND erase operation in Linux. [PC: Generalised to work for any number of address cycles rather than just 3] Signed-off-by: Wendy Liang <jliang@xilinx.com> Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Message-id: 1364967188-26711-1-git-send-email-peter.crosthwaite@xilinx.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * cadence_uart: Flush queued characters on resetPeter Crosthwaite2013-04-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Reset can be used to empty the rx-fifo. As the fifo full condition is used to return false from can_receive, queued rx data should be flushed on reset accordingly. Cc: Wendy Liang <jliang@xilinx.com> Cc: Jason Wu <huanyu@xilinx.com> Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reported-by: Jason Wu <huanyu@xilinx.com> Message-id: 494c1e005e225c915d295ddfd75d992ad2dabc3c.1364964526.git.peter.crosthwaite@xilinx.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * pl330: Don't inhibit ES bits on INTENPeter Crosthwaite2013-04-051-2/+1
| | | | | | | | | | | | | | | | | | | | This if-else logic inhibits setting of the event status (ES) bits when interrupts are enabled. This is incorrect. ES should be set regardless on INTEN state. INTEN only inhibits the signalling of events to PL330 threads, not setting of the ES register. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * pflash_cfi01: Implement migration supportPeter Maydell2013-04-051-3/+17
| | | | | | | | | | | | | | Add a vmstate to pflash_cfi01, so that it can be live migrated. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1363717469-30980-3-git-send-email-peter.maydell@linaro.org
| * pflash_cfi01: Drop unused 'bypass' fieldPeter Maydell2013-04-051-8/+2
| | | | | | | | | | | | | | | | | | For pflash_cfi01 the 'bypass' field is set to zero and never changes, so remove it (it is a leftover from pflash_cfi02, where bypass is implemented). Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1363717469-30980-2-git-send-email-peter.maydell@linaro.org
| * hw/arm_gic_common: Use vmstate struct rather than save/load functionsPeter Maydell2013-04-051-67/+41
| | | | | | | | | | | | | | | | | | Update the GIC save/restore to use vmstate rather than hand-rolled save/load functions. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Igor Mitsyanko <i.mitsyanko@gmail.com> Message-id: 1363975375-3166-4-git-send-email-peter.maydell@linaro.org
| * arm_gic: Fix sizes of state fields in preparation for vmstate supportPeter Maydell2013-04-053-25/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In preparation for switching to vmstate for migration support, fix the sizes of various GIC state fields. In particular, we replace all the bitfields (which VMState can't deal with) with straightforward uint8_t values which we do bit operations on. (The bitfields made more sense when NCPU was set differently in different situations, but we now always model at the architectural limit of 8.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Igor Mitsyanko <i.mitsyanko@gmail.com> Reviewed-by: Andreas Färber <afaerber@suse.de> Message-id: 1363975375-3166-3-git-send-email-peter.maydell@linaro.org
| * vmstate: Add support for two dimensional arraysPeter Maydell2013-04-051-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | Add support for migrating two dimensional arrays, by defining a set of new macros VMSTATE_*_2DARRAY paralleling the existing VMSTATE_*_ARRAY macros. 2D arrays are handled the same for actual state serialization; the only difference is that the type check has to change for a 2D array. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Igor Mitsyanko <i.mitsyanko@gmail.com> Message-id: 1363975375-3166-2-git-send-email-peter.maydell@linaro.org
| * hw/onenand.c: fix migration of dynamically allocated buffer "otp"Igor Mitsyanko2013-04-051-1/+2
| | | | | | | | | | | | | | | | | | | | | | VMSTATE_BUFFER_UNSAFE should be used for buffers inlined in device state, not for buffers allocated dynamically. Change to VMSTATE_BUFFER_POINTER_UNSAFE macro, which will do migration right. Signed-off-by: Igor Mitsyanko <i.mitsyanko@gmail.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1362923278-4080-4-git-send-email-i.mitsyanko@gmail.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * hw/sd.c: fix migration of dynamically allocated buffer "buf"Igor Mitsyanko2013-04-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | VMSTATE_BUFFER_UNSAFE should be used for buffers inlined in device state, not for buffers allocated dynamically. Change to VMSTATE_BUFFER_POINTER_UNSAFE macro, which will do migration right. Signed-off-by: Igor Mitsyanko <i.mitsyanko@gmail.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Tested-by: Michael Walle <michael@walle.cc> Message-id: 1362923278-4080-3-git-send-email-i.mitsyanko@gmail.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * vmstate.h: introduce VMSTATE_BUFFER_POINTER_UNSAFE macroIgor Mitsyanko2013-04-051-0/+9
| | | | | | | | | | | | | | | | | | Macro could be used to migrate a dynamically allocated buffer of known size. Signed-off-by: Igor Mitsyanko <i.mitsyanko@gmail.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1362923278-4080-2-git-send-email-i.mitsyanko@gmail.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * hw/arm_mptimer: Save the timer statePeter Maydell2013-04-051-2/+3
| | | | | | | | | | | | | | | | | | | | Add a missing VMSTATE_TIMER() entry to the arm_mptimer vmstate description; this omission meant that we would probably hang on reload when the timer failed to fire. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Message-id: 1363967348-3044-1-git-send-email-peter.maydell@linaro.org
| * pl050: Don't send always-constant is_mouse fieldPeter Maydell2013-04-051-3/+2
| | | | | | | | | | | | | | | | | | The is_mouse field of the pl050 state structure is constant (it tracks whether this is a 'pl050_keyboard' or 'pl050_mouse'), so there's no need to include it in the VMState structure. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-id: 1363628480-29306-1-git-send-email-peter.maydell@linaro.org
| * hw/arm/nseries: don't print to stdout or stderrPeter Maydell2013-04-051-13/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove various bits of printing to stdout or stderr from the nseries code, replacing it with a qemu log message where there's an appropriate log category, and just dropping the output for some of the more debug-like printing. In particular, this will get rid of the 'mipid_reset' message you currently get from 'make check'. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Andreas Färber <afaerber@suse.de> Message-id: 1363368565-24546-1-git-send-email-peter.maydell@linaro.org
* | main-loop: drop the BQL if the I/O appears to be spinningAnthony Liguori2013-04-051-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The char-flow refactoring introduced a busy-wait that depended on an action from the VCPU thread. However, the VCPU thread could never take that action because the busy-wait starved the VCPU thread of the BQL because it never dropped the mutex while running select. Paolo doesn't want to drop this optimization for fear that we will stop detecting these busy waits. I'm afraid to keep this optimization even with the busy-wait fixed because I think a similar problem can occur just with heavy I/O thread load manifesting itself as VCPU pauses. As a compromise, introduce an artificial timeout after a thousand iterations but print a rate limited warning when this happens. This let's us still detect when this condition occurs without it being a fatal error. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> Message-id: 1365169560-11012-1-git-send-email-aliguori@us.ibm.com
* | qemu-char: eliminate busy waiting on can_read returning zeroPaolo Bonzini2013-04-051-43/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The character backend refactoring introduced an undesirable busy wait. The busy wait happens if can_read returns zero and there is data available on the character device's file descriptor. Then, the I/O watch will fire continuously and, with TCG, the CPU thread will never run. 1) Char backend asks front end if it can write 2) Front end says no 3) poll() finds the char backend's descriptor is available 4) Goto (1) What we really want is this (note that step 3 avoids the busy wait): 1) Char backend asks front end if it can write 2) Front end says no 3) poll() goes on without char backend's descriptor 4) Goto (1) until qemu_chr_accept_input() called 5) Char backend asks front end if it can write 6) Front end says yes 7) poll() finds the char backend's descriptor is available 8) Backend handler called After this patch, the IOWatchPoll source and the watch source are separated. The IOWatchPoll is simply a hook that runs during the prepare phase on each main loop iteration. The hook adds/removes the actual source depending on the return value from can_read. A simple reproducer is qemu-system-i386 -serial mon:stdio ... followed by banging on the terminal as much as you can. :) Without this patch, emulation will hang. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-id: 1365177573-11817-1-git-send-email-pbonzini@redhat.com Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* | Merge remote-tracking branch 'stefanha/trivial-patches' into stagingAnthony Liguori2013-04-055-6/+15
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # By Peter Crosthwaite (2) and others # Via Stefan Hajnoczi * stefanha/trivial-patches: xilinx_zynq: Cleanup ssi_create_slave petalogix_ml605_mmu: Cleanup ssi_create_slave() target-s390: Fix SRNMT linux-user: Don't omit comma for strace of rt_sigaction() test-visitor-serialization: Fix some memory leaks
| * | xilinx_zynq: Cleanup ssi_create_slavePeter Crosthwaite2013-04-051-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | With the recent m25p80 cleanup there is no need to use ssi_create_slave_no_init() anymore. Just use ssi_create_slave(). Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
| * | petalogix_ml605_mmu: Cleanup ssi_create_slave()Peter Crosthwaite2013-04-051-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | With the recent m25p80 cleanup there is no need to use ssi_create_slave_no_init() anymore. Just use ssi_create_slave(). Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
| * | target-s390: Fix SRNMTRichard Henderson2013-04-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fallthough into abort = oops. Cc: qemu-trivial@nongnu.org Cc: Alexander Graf <agraf@suse.de> Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
| * | linux-user: Don't omit comma for strace of rt_sigaction()Peter Maydell2013-04-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pass the 'last' parameter of print_signal() through to print_raw_param(); this fixes a problem where we weren't printing the comma separator for strace of rt_sigaction() when the signal was an unnamed (ie realtime) one: 6856 rt_sigaction(230xf6fff870,0xf6fff8fc) = 0 Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
| * | test-visitor-serialization: Fix some memory leaksStefan Berger2013-04-051-1/+11
| |/ | | | | | | | | | | | | This patch fixes some of the memory leaks in test-visitor-serialization but not all of them. Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
OpenPOWER on IntegriCloud