aboutsummaryrefslogtreecommitdiff
path: root/hw
AgeCommit message (Collapse)Author
2012-11-01xhci: add xhci_port_notifyGerd Hoffmann
Create a function to notify the guest about port status changes and put it into use. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01xhci: add xhci_port_have_deviceGerd Hoffmann
Factor out the code which checks whenever a usb device is attached to the port in question. No functional change. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01xhci: s/xhci_update_port/xhci_port_update/Gerd Hoffmann
Rename the function for xhci_port_* naming scheme, also drop the xhci parameter as port carries a pointer to xhci anyway. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01xhci: add {get,set}_field macros & enum for plsGerd Hoffmann
Add {get,set}_field macros (simliar to ehci) to read and update some bits of a word. Put them into use for updating pls (port link state) values. Also add a enum for pls values. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01vga: fix text mode updatingGerd Hoffmann
With both text (curses) and graphics (vnc/sdl/spice/...) display active vga text mode emulation fails to update both correctly. Depending on whenever vga_update_text() or vga_draw_text() happens to be called first only the text display or only the graphics display will see display resolution changes and full redraws. Fix it by calling both text/gfx resize functions in both code paths and keep track of full screen redraws needed in VGACommonState fields. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01console: untangle gfx & txt updatesGerd Hoffmann
Stop abusing displaysurface fields for text mode displays. (bpp = 0, width = cols, height = lines). Add flags to displaystate indicating whenever text mode display (curses) or gfx mode displays (sdl, vnc, ...) are present. Add separate displaychangelistener callbacks for text / gfx mode resize & updates. This allows to enable gfx and txt diplays at the same time and also paves the way for more cleanups in the future. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01console: move set_mouse + cursor_define callbacksGerd Hoffmann
When adding DisplayChangeListeners the set_mouse and cursor_define callbacks have been left in DisplayState for some reason. Fix it. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01console: QLIST-ify display change listeners.Gerd Hoffmann
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-01pseries: Cleanup duplications of ics_valid_irq() codeDavid Gibson
A couple of places in xics.c open-coded the same logic as is already implemented in ics_valid_irq(). This patch fixes the code duplication. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
2012-11-01pseries: Clean up inconsistent variable name in xics.cDavid Gibson
Throughout xics.c 'nr' is used to refer to a global interrupt number, and 'server' is used to refer to an interrupt server number (i.e. CPU number). Except in icp_set_mfrr(), where 'nr' is used as a server number. Fix this confusing inconsistency. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
2012-11-01Revert "PPC: pseries: Remove hack for PIO window"David Gibson
This reverts commit a178274efabcbbc5d44805b51def874e47051325. Contrary to that commit's message, the users of old_portio are not all gone. In particular VGA still uses it via portio_list_add(). Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
2012-11-01e1000: pre-initialize RAH/RAL registersGabriel L. Somlo
Some guest operating systems' drivers (Mac OS X in particular) fail to properly initialize the Receive Address registers (probably expecting them to be pre-initialized by an earlier component, such as a specific proprietary BIOS). This patch pre-initializes the RA registers, allowing OS X networking to function properly. Other guest operating systems are not affected, and free to (re)initialize these registers during boot. [According to the datasheet the Address Valid bits in the RA registers are cleared on PCI or software reset. This patch adds the NIC's MAC address and sets Address Valid on reset. So we diverge from real hardware behavior here. -- Stefan] Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2012-11-01e1000: drop check_rxov, always treat RX ring with RDH == RDT as emptyDmitry Fleytman
Real HW always treats RX ring with RDH == RDT as empty. Emulation is supposed to behave the same. Reported-by: Chris Webb <chris.webb@elastichosts.com> Reported-by: Richard Davies <richard.davies@elastichosts.com> Signed-off-by: Dmitry Fleytman <dmitry@daynix.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2012-10-31Merge remote-tracking branch 'origin/master' into threadpoolPaolo Bonzini
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-10-31cpus: Pass CPUState to run_on_cpu()Andreas Färber
CPUArchState is no longer needed. Move the declaration to include/qemu/cpu.h and add documentation. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31cpus: Pass CPUState to [qemu_]cpu_has_work()Andreas Färber
For target-mips also change the return type to bool. Make include paths for cpu-qom.h consistent for alpha and unicore32. Signed-off-by: Andreas Färber <afaerber@suse.de> [AF: Updated new target-openrisc function accordingly] Acked-by: Richard Henderson <rth@twiddle.net> (for alpha)
2012-10-30cirrus_vga: allow configurable vram sizeMarcelo Tosatti
Allow RAM size to be configurable for cirrus, to allow migration compatibility from qemu-kvm. Acked-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
2012-10-31spapr: Pass PowerPCCPU to hypercallsAndreas Färber
Needed for changing cpu_has_work() argument type to CPUState, used in h_cede(). Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31spapr: Pass PowerPCCPU to spapr_hypercall()Andreas Färber
Needed for changing the hypercall handlers' argument type to PowerPCCPU. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31target-ppc: Pass PowerPCCPU to cpu_ppc_hypercallAndreas Färber
Adapt emulate_spapr_hypercall() accordingly. Needed for changing spapr_hypercall() argument type to PowerPCCPU. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31xtensa_pic: Pass XtensaCPU to xtensa_ccompare_cb()Andreas Färber
Needed for changing cpu_has_work() argument type to CPUState. Signed-off-by: Andreas Färber <afaerber@suse.de> Acked-by: Max Filippov <jcmvbkbc@gmail.com>
2012-10-31cpus: Pass CPUState to qemu_cpu_kick()Andreas Färber
CPUArchState is no longer needed there. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31ppc: Pass PowerPCCPU to {ppc6xx,ppc970,power7,ppc40x,ppce500}_set_irq()Andreas Färber
Needed for changing qemu_cpu_kick() argument type to CPUState and for moving halted field into CPUState. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31cpu: Move stopped field to CPUStateAndreas Färber
Change its type to bool. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31ppce500_spin: Store PowerPCCPU in SpinKickAndreas Färber
Needed for moving stopped field to CPUState. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-31cpus: Pass CPUState to qemu_cpu_is_self()Andreas Färber
Change return type to bool, move to include/qemu/cpu.h and add documentation. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Igor Mammedov <imammedo@redhat.com> [AF: Updated new caller qemu_in_vcpu_thread()]
2012-10-30target-i386: Pass X86CPU to cpu_x86_load_seg_cache_sipi()Andreas Färber
Simplifies the call in apic_sipi() again and needed for moving halted field to CPUState. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Igor Mammedov <imammedo@redhat.com>
2012-10-30apic: Store X86CPU in APICCommonStateAndreas Färber
Prepares for using a link<> property to connect APIC with CPU and for changing the CPU APIs to CPUState. Resolve Coding Style warnings by moving the closing parenthesis of foreach_apic() macro to next line. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Igor Mammedov <imammedo@redhat.com>
2012-10-30target-i386: Inline APIC cpu_env property settingAndreas Färber
This prepares for changing the variable type from void*. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Igor Mammedov <imammedo@redhat.com>
2012-10-30target-i386: Initialize APIC at CPU levelIgor Mammedov
(L)APIC is a part of cpu [1] so move APIC initialization inside of x86_cpu object. Since cpu_model and override flags currently specify whether APIC should be created or not, APIC creation&initialization is moved into x86_cpu_apic_init() which is called from x86_cpu_realize(). [1] - all x86 cpus have integrated APIC if we overlook existence of i486, and it's more convenient to model after majority of them. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-10-30Merge branch 'qspi.2' of git://developer.petalogix.com/public/qemuBlue Swirl
* 'qspi.2' of git://developer.petalogix.com/public/qemu: xilinx_zynq: added QSPI controller xilinx_spips: Generalised to model QSPI m25p80: Support for Quad SPI
2012-10-30aio: introduce AioContext, move bottom halves therePaolo Bonzini
Start introducing AioContext, which will let us remove globals from aio.c/async.c, and introduce multiple I/O threads. The bottom half functions now take an additional AioContext argument. A bottom half is created with a specific AioContext that remains the same throughout the lifetime. qemu_bh_new is just a wrapper that uses a global context. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-10-30hw/sd.c: add SD card save/load supportIgor Mitsyanko
This patch updates SD card model to support save/load of card's state. Signed-off-by: Igor Mitsyanko <i.mitsyanko@samsung.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/sd.c: Fix erase for high capacity cardsIgor Mitsyanko
Standard capacity cards SDSC use byte unit address while SDHC and SDXC cards use block unit address (512 bytes) when setting ERASE_START and ERASE_END with CMD32 and CMD33, we have to account for this. Signed-off-by: Igor Mitsyanko <i.mitsyanko@samsung.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30pflash_cfi01: Fix debug mode printferyPeter Crosthwaite
This DPRINTF was throwing a warning due to a missing cast. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30pflash_cfi0x: QOMifiedPeter Crosthwaite
QOMified the pflash_cfi0x so machine models can connect them up in custom ways. Kept the pflash_cfi0x_register functions as is. They can still be used to create a flash straight onto system memory. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30pflash_cfi01: remove unused total_len fieldPeter Crosthwaite
This field is completely unused. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30pflash_cfi0x: remove unused base fieldPeter Crosthwaite
This field is completely unused. The base address should also be abstracted away from the device anyway. Removed. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/versatile_i2c: Use LOG_GUEST_ERRORPeter Maydell
Use LOG_GUEST_ERROR to report bad guest accesses. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/arm_l2x0: Use LOG_GUEST_ERRORPeter Maydell
Use LOG_GUEST_ERROR to report bad guest accesses. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/arm_sysctl: Use LOG_GUEST_ERRORPeter Maydell
Use LOG_GUEST_ERROR to report bad guest accesses. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/armv7m_nvic: Use LOG_GUEST_ERROR and LOG_UNIMPPeter Maydell
Use LOG_GUEST_ERROR and LOG_UNIMP rather than hw_error() where appropriate. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/arm_timer: Use LOG_GUEST_ERROR and LOG_UNIMPPeter Maydell
Use LOG_GUEST_ERROR to report guest accesses to bad register offsets, and LOG_UNIMP for access to the unimplemented test registers. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/arm_gic: Use LOG_GUEST_ERRORPeter Maydell
Use LOG_GUEST_ERROR to report guest accesses to bad offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/arm11mpcore: Use LOG_GUEST_ERROR rather than hw_error()Peter Maydell
Use LOG_GUEST_ERROR to report guest accesses to bad offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/pl190: Use LOG_UNIMP rather than hw_error()Peter Maydell
Use LOG_UNIMP to report attempts to use the unimplemented test mode. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/pl110: Use LOG_GUEST_ERROR rather than hw_error()Peter Maydell
Use LOG_GUEST_ERROR to report guest accesses to invalid register offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/pl080: Use LOG_GUEST_ERROR and LOG_UNIMPPeter Maydell
Use LOG_GUEST_ERROR and LOG_UNIMP in preference to hw_error(). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/pl061: Use LOG_GUEST_ERRORPeter Maydell
Use LOG_GUEST_ERROR to report guest attempts to access bad register offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-10-30hw/pl050: Use LOG_GUEST_ERRORPeter Maydell
Use LOG_GUEST_ERROR for reporting guest attempts to access invalid register offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>