aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-05-01exec: prepare for splittingBlue Swirl
Make s_cputlb_empty_entry 'const'. Rename tlb_flush_jmp_cache() to tb_flush_jmp_cache(). Refactor code to add cpu_tlb_reset_dirty_all(), memory_region_section_get_iotlb() and memory_region_is_unassigned(). Remove unused cpu_tlb_update_dirty(). Fix coding style in areas to be moved. Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-05-01Merge branch 'maintainers-up' of git://repo.or.cz/qemu/afaerberBlue Swirl
* 'maintainers-up' of git://repo.or.cz/qemu/afaerber: MAINTAINERS: Document all stable trees MAINTAINERS: Fix SCM tree for virtio-9p MAINTAINERS: Indicate type of SCM MAINTAINERS: Fix TCI file pattern MAINTAINERS: Fix virtio-9p file pattern MAINTAINERS: Fix PC file pattern
2012-05-01Merge branch 'cocoa-for-upstream' of git://repo.or.cz/qemu/afaerberBlue Swirl
* 'cocoa-for-upstream' of git://repo.or.cz/qemu/afaerber: Drop darwin-user configure: add '--disable-cocoa' switch raw-posix: Do not use CONFIG_COCOA macro
2012-05-01Merge branch 'prep-up' of git://repo.or.cz/qemu/afaerberBlue Swirl
* 'prep-up' of git://repo.or.cz/qemu/afaerber: prep: Move int-ack register from PReP to Raven PCI emulation prep: Initialize PC speaker isa: Add isa_bus_from_device() method fdc: Parametrize ISA base, IRQ and DMA i82378/i82374: Do not create DMA controller twice
2012-05-01Merge branch 'qom-cpu-rest.v1' of git://github.com/afaerber/qemu-cpuBlue Swirl
* 'qom-cpu-rest.v1' of git://github.com/afaerber/qemu-cpu: Makefile: Simplify compilation of target-*/cpu.c target-mips: Start QOM'ifying CPU init target-mips: QOM'ify CPU target-m68k: Add QOM CPU subclasses target-m68k: Start QOM'ifying CPU init target-m68k: QOM'ify CPU reset target-m68k: QOM'ify CPU target-sh4: Start QOM'ifying CPU init target-sh4: QOM'ify CPU reset target-sh4: QOM'ify CPU MAINTAINERS: Downgrade target-mips and target-sh4 to Odd Fixes MAINTAINERS: Downgrade target-m68k to Odd Fixes
2012-05-01Drop darwin-userAndreas Färber
It's been orphaned, not compiling for a long time and despite Apple's drop of their Rosetta ppc emulation technology with Mac OS X Lion no one has stepped up to fix it. Testing necessary changes wrt QOM'ification thus is impossible, so we might as well remove it completely. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
2012-05-01configure: add '--disable-cocoa' switchPavel Borzenkov
When SDL support is disabled, there is no way to build QEMU without Cocoa support on MacOS X. This patch adds '--disable-cocoa' switch and allows to build QEMU without both SDL and Cocoa frontends. Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com> [AF: Adapt help output] Signed-off-by: Andreas Färber <andreas.faerber@web.de>
2012-05-01raw-posix: Do not use CONFIG_COCOA macroPavel Borzenkov
Use __APPLE__ and __MACH__ macros instead of CONFIG_COCOA to detect Mac OS X host. The patch is based on Ben Leslie's patch: http://patchwork.ozlabs.org/patch/97859/ Signed-off-by: Ben Leslie <benno@benno.id.au> Signed-off-by: Pavel Borzenkov <pavel.borzenkov@gmail.com> Acked-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
2012-04-30prep: Move int-ack register from PReP to Raven PCI emulationHervé Poussineau
Register is one byte-wide (as per specification), so there is no need to specify endianness. Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> [AF: Limit access validity to size 1] Signed-off-by: Andreas Färber <andreas.faerber@web.de>
2012-04-30Makefile: Simplify compilation of target-*/cpu.cAndreas Färber
All targets except for ppc now have a standalone cpu.c file. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-04-30target-mips: Start QOM'ifying CPU initAndreas Färber
Move code not dependent on mips_def_t from cpu_mips_init() into a QOM initfn, as a start. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Richard Henderson <rth@twiddle.net>
2012-04-30target-mips: QOM'ify CPUAndreas Färber
Embed CPUMIPSState as first member of QOM MIPSCPU. Let CPUClass::reset() call cpu_state_reset() for now. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Richard Henderson <rth@twiddle.net>
2012-04-30target-m68k: Add QOM CPU subclassesAndreas Färber
Move code from cpu_m68k_set_model() into model-specific initfns and inline the remaining parts into cpu_m68k_init(). Let m68k_cpu_list() print CPU classes alphabetically except for "any". Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Laurent Vivier <Laurent@Vivier.EU> Tested-by: Laurent Vivier <Laurent@Vivier.EU>
2012-04-30target-m68k: Start QOM'ifying CPU initAndreas Färber
Move model-independent code from cpu_m68k_init() into a QOM initfn. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Laurent Vivier <Laurent@Vivier.EU> Tested-by: Laurent Vivier <Laurent@Vivier.EU>
2012-04-30target-m68k: QOM'ify CPU resetAndreas Färber
Move code from cpu_state_reset() into QOM m68k_cpu_reset(). Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Laurent Vivier <Laurent@Vivier.EU> Tested-by: Laurent Vivier <Laurent@Vivier.EU>
2012-04-30target-m68k: QOM'ify CPUAndreas Färber
Embed CPUM68KState as first member of QOM M68kCPU. Drop cpu_m68k_close() in favor of object_delete(). Let CPUClass::reset() call cpu_state_reset() for now. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Laurent Vivier <Laurent@Vivier.EU> Tested-by: Laurent Vivier <Laurent@Vivier.EU>
2012-04-30target-sh4: Start QOM'ifying CPU initAndreas Färber
Move code from cpu_sh4_init() into a QOM initfn. Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-04-30target-sh4: QOM'ify CPU resetAndreas Färber
Move code from cpu_state_reset() to QOM superh_cpu_reset(). Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
2012-04-30target-sh4: QOM'ify CPUAndreas Färber
Embed CPUSH4State as first member of SuperHCPU. Let CPUClass::reset() call cpu_state_reset() for now. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
2012-04-30MAINTAINERS: Downgrade target-mips and target-sh4 to Odd FixesAndreas Färber
Patches are not being handled, so let's downgrade to Odd Fixes. Signed-off-by: Andreas Färber <afaerber@suse.de> Acked-by: Aurélien Jarno <aurelien@aurel32.net>
2012-04-30MAINTAINERS: Downgrade target-m68k to Odd FixesAndreas Färber
m68k patches are not being handled, so let's downgrade to Odd Fixes. Signed-off-by: Andreas Färber <afaerber@suse.de> Acked-by: Paul Brook <paul@codesourcery.com>
2012-04-28prep: Initialize PC speakerHervé Poussineau
Speaker init has been added in 506b7ddf889312659b36c667f7ae17bc9e909418, but audio subsystem init was missing. Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
2012-04-28isa: Add isa_bus_from_device() methodHervé Poussineau
Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Acked-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
2012-04-28fdc: Parametrize ISA base, IRQ and DMAHervé Poussineau
Keep the PC values as defaults but allow to override them for PReP. Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Andreas Färber <andreas.faerber@web.de> Reviewed-by: Markus Armbruster <armbru@redhat.com>
2012-04-28i82378/i82374: Do not create DMA controller twiceHervé Poussineau
This fixes a crash in PReP emulation when using DMA controller to access floppy drive. Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Andreas Färber <andreas.faerber@web.de>
2012-04-28main-loop: Fix build for w32 and w64Stefan Weil
This patch fixes a build regression with MinGW which was introduced by commit 7c7db75576bd5a31508208f153c5aada64b2c8df. The 3rd argument of g_main_context_query must point to a gint value. Using a pointer to an uint32_t value is wrong. The timeout argument of function os_host_main_loop_wait was never used for w32 / w64. Signed-off-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-04-28configure: Don't build bsd-user on Mac OS X by defaultAndreas Färber
Fixes the build when combined with the drop of darwin-user. Enthusiasts can still try building it using --enable-bsd-user. Signed-off-by: Andreas Färber <andreas.faerber@web.de> Cc: Bernhard Walle <bernhard@bwalle.de> Tested-by: Bernhard Walle <bernhard@bwalle.de> [Mac OS 10.7.3] Acked-by: Bernhard Walle <bernhard@bwalle.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-04-28softfloat: Replace int16 type with int_fast16_tAndreas Färber
Based on the following Coccinelle patch: @@ typedef int16, int_fast16_t; @@ -int16 +int_fast16_t Avoids a workaround for AIX. Add typedef for pre-10 Solaris. Signed-off-by: Andreas Färber <afaerber@suse.de> Cc: malc <av1474@comtv.ru> Cc: Ben Taylor <bentaylor.solx86@gmail.com> Tested-by: Bernhard Walle <bernhard@bwalle.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-04-28softfloat: Replace uint16 type with uint_fast16_tAndreas Färber
Based on the following Coccinelle patch: @@ typedef uint16, uint_fast16_t; @@ -uint16 +uint_fast16_t Fixes the build of the Cocoa frontend on Mac OS X and avoids a workaround for AIX. For pre-10 Solaris include osdep.h. Reported-by: Pavel Borzenkov <pavel.borzenkov@gmail.com> Reported-by: Rui Carmo <rui.carmo@gmail.com> Signed-off-by: Andreas Färber <afaerber@suse.de> Cc: Juan Pineda <juan@logician.com> Cc: malc <av1474@comtv.ru> Cc: Ben Taylor <bentaylor.solx86@gmail.com> Tested-by: Bernhard Walle <bernhard@bwalle.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-04-28target-mips: Move definition of uint_fast{8, 16}_t to osdep.hAndreas Färber
osdep.h is included via qemu-common.h. Prepares for use of [u]int_fast*_t types in softfloat code. Signed-off-by: Andreas Färber <afaerber@suse.de> Cc: Ben Taylor <bentaylor.solx86@gmail.com> Cc: Aurélien Jarno <aurelien@aurel32.net> Cc: Peter Maydell <peter.maydell@linaro.org> Tested-by: Bernhard Walle <bernhard@bwalle.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-04-28softfloat: Fix mixups of int and int16Andreas Färber
normalizeFloat{32,64}Subnormal() expect the exponent as int16, not int. This went unnoticed since int16 and uint16 were both typedef'ed to int. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Tested-by: Bernhard Walle <bernhard@bwalle.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-04-28Merge branch 'target-arm.for-upstream' of ↵Blue Swirl
git://git.linaro.org/people/pmaydell/qemu-arm * 'target-arm.for-upstream' of git://git.linaro.org/people/pmaydell/qemu-arm: target-arm: Make SETEND respect bswap_code (BE8) setting target-arm: Move A9 config_base_address reset value to ARMCPU target-arm: Change cpu_arm_init() return type to ARMCPU
2012-04-28Merge branch 'timer' of git://qemu.weilnetz.de/qemuBlue Swirl
* 'timer' of git://qemu.weilnetz.de/qemu: qemu-timer: Optimize data structures qemu-timer: Remove function alarm_has_dynticks qemu-timer: Use bool, false, true for boolean values qemu-timer: Remove unused function qemu_alarm_pending qemu-timer: Remove redundant include statements
2012-04-27Merge remote-tracking branch 'qmp/queue/qmp' into stagingAnthony Liguori
* qmp/queue/qmp: qapi: fix qmp_balloon() conversion qemu-iotests: add block-stream speed value test case block: add 'speed' optional parameter to block-stream block: change block-job-set-speed argument from 'value' to 'speed' block: use Error mechanism instead of -errno for block_job_set_speed() block: use Error mechanism instead of -errno for block_job_create()
2012-04-27qapi: fix qmp_balloon() conversionLuiz Capitulino
Commit d72f326431 forgot to convert a call from qerror_report() to error_set(). Fix it. Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com>
2012-04-27qemu-iotests: add block-stream speed value test caseStefan Hajnoczi
Add tests to exercise the InvalidParameter 'speed' error code path, as well as the regular success case for setting the speed. The block-stream 'speed' parameter allows the speed limit of the job to be applied immediately when the job starts instead of issuing a separate block-job-set-speed command later. If the parameter has an invalid value we expect to get an error and the job is not created. It turns out that cancelling a block job is a common operation in these test cases, let's extract a cancel_and_wait() function instead of duplicating the QMP commands. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2012-04-27block: add 'speed' optional parameter to block-streamStefan Hajnoczi
Allow streaming operations to be started with an initial speed limit. This eliminates the window of time between starting streaming and issuing block-job-set-speed. Users should use the new optional 'speed' parameter instead so that speed limits are in effect immediately when the job starts. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2012-04-27block: change block-job-set-speed argument from 'value' to 'speed'Stefan Hajnoczi
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2012-04-27block: use Error mechanism instead of -errno for block_job_set_speed()Stefan Hajnoczi
There are at least two different errors that can occur in block_job_set_speed(): the job might not support setting speeds or the value might be invalid. Use the Error mechanism to report the error where it occurs. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2012-04-27block: use Error mechanism instead of -errno for block_job_create()Stefan Hajnoczi
The block job API uses -errno return values internally and we convert these to Error in the QMP functions. This is ugly because the Error should be created at the point where we still have all the relevant information. More importantly, it is hard to add new error cases to this case since we quickly run out of -errno values without losing information. Go ahead and use Error directly and don't convert later. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2012-04-27target-arm: Make SETEND respect bswap_code (BE8) settingPeter Maydell
Make the SETEND instruction respect the setting of bswap_code, so that in BE8 mode we UNDEF for attempts to switch into little-endian mode and nop for attempts to stay in big-endian mode. (This is the inverse of the existing handling of SETEND in the more common little-endian setup, which we use since we don't implement the architecturally-mandated dynamic endianness switching.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-04-27target-arm: Move A9 config_base_address reset value to ARMCPUPeter Maydell
Move the A9 config_base_address cp15 register reset value to ARMCPU. This should become a QOM property so that the Highbank board can set it without having to pull in cpu-qom.h, but at least this avoids the implicit dependency on reset ordering that the previous workaround had. Cc: Mark Langsdorf <mark.langsdorf@calxeda.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Andreas Färber <afaerber@suse.de>
2012-04-27target-arm: Change cpu_arm_init() return type to ARMCPUAndreas Färber
Make cpu_arm_init() return a QOM ARMCPU, so that we don't need to obtain an ARMCPU through arm_env_get_cpu() in machine init code. This requires to adjust the inclusion site of cpu-qom.h and in turn, forward-looking, to homogenize its include order. cpu_init() must still return a CPUARMState for backwards and cross-target compatibility, so adjust the cpu_init macro. Signed-off-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2012-04-27qemu-timer: Optimize data structuresStefan Weil
Remove all holes which were found by pahole on Linux x86_64 (and replace "struct QEMUTimer" by "QEMUTimer"). Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Stefan Weil <sw@weilnetz.de>
2012-04-27qemu-timer: Remove function alarm_has_dynticksStefan Weil
Some time ago, the last time which did not have dynticks was removed, so now all timers have dynticks. I also removed a misleading error message for the dynticks timer. If timer_create fails, there is already an error message, and QEMU will use the unix timer which also provides dynamic ticks, therefore dynamic ticks are not disabled. v2: Remove two if statements because they were always true (thanks to Paolo Bonzini for this correction). Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Stefan Weil <sw@weilnetz.de>
2012-04-27qemu-timer: Use bool, false, true for boolean valuesStefan Weil
This avoids conversions between int and bool / char. It also makes the code more readable. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Stefan Weil <sw@weilnetz.de>
2012-04-27qemu-timer: Remove unused function qemu_alarm_pendingStefan Weil
The last user of this function was removed by commit 12d4536f7d911b6d87a766ad7300482ea663cea2. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Stefan Weil <sw@weilnetz.de>
2012-04-27qemu-timer: Remove redundant include statementsStefan Weil
qemu-timer.h includes qemu-common.h which already includes time.h, sys/time.h, windows.h, unistd.h, fcntl.h, errno.h and signal.h. Therefore those include statements are redundant and can be removed. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Stefan Weil <sw@weilnetz.de>
2012-04-26Merge remote-tracking branch 'bonzini/nbd-next' into stagingAnthony Liguori
* bonzini/nbd-next: nbd: Fix uninitialised use of s->sock
2012-04-26Merge remote-tracking branch 'kraxel/usb.49' into stagingAnthony Liguori
* kraxel/usb.49: usb-uhci: update irq line on reset usb: add serial number generator usb-redir: Not finding an async urb id is not an error usb-redir: Reset device address and speed on disconnect usb-redir: An interface count of 0 is a valid value usb-xhci: fix bit test usb-xhci: Use PCI DMA helper functions usb-host: fix zero-length packets usb-host: don't dereference invalid iovecs usb-storage: fix request canceling usb-ehci: Ensure frindex writes leave a valid frindex value usb-ehci: add missing usb_packet_init() call usb-ehci: remove hack