OSDN Git Service

qmiga/qemu.git
12 years agoehci: remove unused attach_poll_counter
Gerd Hoffmann [Thu, 24 May 2012 14:48:04 +0000 (16:48 +0200)]
ehci: remove unused attach_poll_counter

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: fix halt status handling
Gerd Hoffmann [Thu, 24 May 2012 10:53:43 +0000 (12:53 +0200)]
ehci: fix halt status handling

When the enable bits for controller / async schedule / periodic schedule
change just make sure we kick the frame timer and let
ehci_advance_periodic_state and ehci_advance_async_state handle the
controller state changes.

This will make ehci set USBSTS_HALT when the controller shutdown is
actually done, once both schedules are in inactive state and the
USBSTS_PSS and USBSTS_ASS bits are clear.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: update status bits in ehci_set_state
Gerd Hoffmann [Thu, 24 May 2012 10:34:18 +0000 (12:34 +0200)]
ehci: update status bits in ehci_set_state

Update the status register in the ehci_set_state function, to make sure
the guest-visible register is in sync with our internal schedule state.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: add ehci_*_enabled() helpers
Gerd Hoffmann [Thu, 24 May 2012 10:31:34 +0000 (12:31 +0200)]
ehci: add ehci_*_enabled() helpers

Add helper functions to query whenever the async / periodic schedule
is enabled or not.  Put them into use too.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: fix reset
Gerd Hoffmann [Thu, 24 May 2012 10:04:50 +0000 (12:04 +0200)]
ehci: fix reset

Check for the reset bit first when processing USBCMD register writes.
Also break out of the switch, there is no need to check the other bits.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: kick async schedule on wakeup
Gerd Hoffmann [Tue, 22 May 2012 15:24:59 +0000 (17:24 +0200)]
ehci: kick async schedule on wakeup

Kick async schedule when we get a wakeup
notification from a usb device.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: schedule async bh on async packet completion
Gerd Hoffmann [Fri, 11 May 2012 09:31:56 +0000 (11:31 +0200)]
ehci: schedule async bh on async packet completion

When a packet completes which happens to be part of the async schedule
kick the async bottom half for processing,

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: move async schedule to bottom half
Gerd Hoffmann [Fri, 11 May 2012 09:19:11 +0000 (11:19 +0200)]
ehci: move async schedule to bottom half

This way we can kick the async schedule independant from the
periodic frame timer.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: add async field to EHCIQueue
Gerd Hoffmann [Fri, 11 May 2012 07:05:15 +0000 (09:05 +0200)]
ehci: add async field to EHCIQueue

Keep track whenever a EHCIQueue is part of the async or periodic
schedule.  This way we don't have to pass around the async flag
everywhere but can look it up from the EHCIQueue struct when needed.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: tweak queue initialization
Gerd Hoffmann [Fri, 11 May 2012 06:56:49 +0000 (08:56 +0200)]
ehci: tweak queue initialization

Little tweak for the queue initialization, set the QH address in the
allocation function.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: add queuing support
Gerd Hoffmann [Thu, 10 May 2012 12:12:38 +0000 (14:12 +0200)]
ehci: add queuing support

Add packet queuing.  Follow the qTD chain to see if there are more
packets we can submit.  Improves performance on larger transfers,
especially with usb-host, as we don't have to wait for a packet to
finish before sending the next one to the host for processing.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: move ehci_flush_qh
Gerd Hoffmann [Thu, 10 May 2012 12:13:41 +0000 (14:13 +0200)]
ehci: move ehci_flush_qh

Move ehci_flush_qh() function up in the source code.
No code change.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: cache USBDevice in EHCIQueue
Gerd Hoffmann [Thu, 10 May 2012 10:18:45 +0000 (12:18 +0200)]
ehci: cache USBDevice in EHCIQueue

Keep a USBDevice pointer in EHCIQueue so we don't have to lookup the
device on each usb packet submission.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: make ehci_execute work on EHCIPacket instead of EHCIQueue
Gerd Hoffmann [Thu, 10 May 2012 10:10:47 +0000 (12:10 +0200)]
ehci: make ehci_execute work on EHCIPacket instead of EHCIQueue

This way it is possible to use ehci_execute to submit others than the
first EHCIPacket of the EHCIQueue.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoehci: add EHCIPacket
Gerd Hoffmann [Wed, 9 May 2012 15:06:36 +0000 (17:06 +0200)]
ehci: add EHCIPacket

Add a separate EHCIPacket struct and move fields over from EHCIQueue.
Preparing for supporting multiple packets per queue being in flight at
the same time.  No functional changes yet.

Fix some codestyle issues along the way.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: trace: slots
Gerd Hoffmann [Fri, 11 May 2012 13:15:27 +0000 (15:15 +0200)]
xhci: trace: slots

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: trace: transfers
Gerd Hoffmann [Fri, 11 May 2012 12:27:08 +0000 (14:27 +0200)]
xhci: trace: transfers

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: trace: endpoints
Gerd Hoffmann [Fri, 11 May 2012 12:26:15 +0000 (14:26 +0200)]
xhci: trace: endpoints

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: trace: ring fetch
Gerd Hoffmann [Fri, 11 May 2012 12:23:42 +0000 (14:23 +0200)]
xhci: trace: ring fetch

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: trace: irq + events
Gerd Hoffmann [Fri, 11 May 2012 11:25:09 +0000 (13:25 +0200)]
xhci: trace: irq + events

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: trace: run+stop
Gerd Hoffmann [Fri, 11 May 2012 12:54:57 +0000 (14:54 +0200)]
xhci: trace: run+stop

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: trace: mmio reads+writes
Gerd Hoffmann [Fri, 11 May 2012 10:49:31 +0000 (12:49 +0200)]
xhci: trace: mmio reads+writes

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoxhci: Clean up reset function
Jan Kiszka [Fri, 11 May 2012 14:36:37 +0000 (11:36 -0300)]
xhci: Clean up reset function

Properly register reset function via the device class.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agousb-storage: migration support
Gerd Hoffmann [Mon, 14 May 2012 11:56:40 +0000 (13:56 +0200)]
usb-storage: migration support

With all scsi migration support bits in place the
final step is pretty simple ;)

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agousb-storage: add scsi_off, remove scsi_buf
Gerd Hoffmann [Wed, 16 May 2012 13:03:40 +0000 (15:03 +0200)]
usb-storage: add scsi_off, remove scsi_buf

Repace the running buffer pointer (scsi_buf) with a buffer offset
field (scsi_off).  The later is alot easier to live-migrate.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agousb-storage: add usb_msd_packet_complete()
Gerd Hoffmann [Tue, 22 May 2012 12:30:20 +0000 (14:30 +0200)]
usb-storage: add usb_msd_packet_complete()

Factor out packet completion to a separate function which
cares to get the MSDState->packet update right.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agousb-storage: remove MSDState->residue
Gerd Hoffmann [Mon, 14 May 2012 12:00:02 +0000 (14:00 +0200)]
usb-storage: remove MSDState->residue

We have the field twice, once in MSDState directly and one in the status
word struct.  Drop one.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoscsi: prepare migration code for usb-storage support
Gerd Hoffmann [Wed, 16 May 2012 12:20:03 +0000 (14:20 +0200)]
scsi: prepare migration code for usb-storage support

usb-storage can't handle requests in one go as the data transfer can be
splitted into lots of usb packets.  Because of that there can be
normal in-flight requests at savevm time and we need to handle that.
With other scsi hba's this happens only in case i/o is stopped due to
errors and there are pending requests which need to be restarted
(req->retry = true).

So, first we need to save req->retry and then handle the req->retry =
false case.  Write requests are handled fine already.  For read requests
we have to save the buffer as we will not restart the request (and thus
not refill the buffer) on the target host.

Cc: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agouhci: fix irq routing
Gerd Hoffmann [Fri, 25 May 2012 10:53:47 +0000 (12:53 +0200)]
uhci: fix irq routing

The multifunction ich9 ehci controller with uhci companions uses a
different interrupt pin for each function.  The three uhci devices
get pins A, B and C, whereas ehci uses pin D.  This way the guest
can assign different IRQ lines to each controller.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agouhci: zap uhci_pre_save
Gerd Hoffmann [Mon, 14 May 2012 12:02:14 +0000 (14:02 +0200)]
uhci: zap uhci_pre_save

Cancel transactions before saving vmstate is pretty pointless and just
causes disruptions.  We need to cancel them before *loading* vmstate,
but in that case uhci_reset() handles it already and no special action
is needed.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agouhci: fix trace format strings
Gerd Hoffmann [Fri, 11 May 2012 10:57:34 +0000 (12:57 +0200)]
uhci: fix trace format strings

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agouhci: make bandwidth tunable
Gerd Hoffmann [Fri, 11 May 2012 08:02:53 +0000 (10:02 +0200)]
uhci: make bandwidth tunable

Add a property for the uhci bandwidth.  Can be used to make uhci
emulation run faster than real hardware.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agouhci: use bottom half
Gerd Hoffmann [Fri, 11 May 2012 07:33:07 +0000 (09:33 +0200)]
uhci: use bottom half

Schedule bottom half on completion of async packets instead of calling
uhci_process_frame directly.  This way we run uhci_process_frame only
once in case multiple packets finish in a row.  Also check whenever
there is bandwidth left before scheduling uhci_process_frame.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agouhci: fix bandwidth management
Gerd Hoffmann [Fri, 11 May 2012 07:18:05 +0000 (09:18 +0200)]
uhci: fix bandwidth management

uhci_process_frame() can be invoked multiple times per frame, so
accounting usb bandwith in a local variable doesn't fly, use a variable
in UHCIState instead.  Also check the limit more frequently.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
12 years agoMerge remote-tracking branch 'qmp/queue/qmp' into staging
Anthony Liguori [Wed, 6 Jun 2012 12:57:56 +0000 (20:57 +0800)]
Merge remote-tracking branch 'qmp/queue/qmp' into staging

* qmp/queue/qmp: (29 commits)
  Add 'query-events' command to QMP to query async events
  qapi: convert netdev_del
  qapi: convert netdev_add
  net: net_client_init(): use error_set()
  net: purge the monitor object from all init functions
  qemu-config: introduce qemu_find_opts_err()
  qemu-config: find_list(): use error_set()
  qerror: introduce QERR_INVALID_OPTION_GROUP
  qemu-option: qemu_opts_from_qdict(): use error_set()
  qemu-option: introduce qemu_opt_set_err()
  qemu-option: opt_set(): use error_set()
  qemu-option: qemu_opts_validate(): use error_set()
  qemu-option: qemu_opt_parse(): use error_set()
  qemu-option: parse_option_size(): use error_set()
  qemu-option: parse_option_bool(): use error_set()
  qemu-option: parse_option_number(): use error_set()
  qemu-option: qemu_opts_create(): use error_set()
  introduce a new monitor command 'dump-guest-memory' to dump guest's memory
  make gdb_id() generally avialable and rename it to cpu_index()
  target-i386: Add API to get note's size
  ...

12 years agoMerge remote-tracking branch 'afaerber-or/qom-cpu-3' into staging
Anthony Liguori [Wed, 6 Jun 2012 09:55:07 +0000 (17:55 +0800)]
Merge remote-tracking branch 'afaerber-or/qom-cpu-3' into staging

* afaerber-or/qom-cpu-3: (74 commits)
  Kill off cpu_state_reset()
  linux-user: Use cpu_reset() after cpu_init() / cpu_copy()
  bsd-user: Use cpu_reset() in after cpu_init()
  leon3: Store SPARCCPU in ResetData
  leon3: Use cpu_sparc_init() to obtain SPARCCPU
  sun4u: Store SPARCCPU in ResetData
  sun4u: Let cpu_devinit() return SPARCCPU
  sun4u: Use cpu_sparc_init() to obtain SPARCCPU
  sun4m: Pass SPARCCPU to {main,secondary}_cpu_reset()
  sun4m: Use cpu_sparc_init() to obtain SPARCCPU
  target-sparc: Let cpu_sparc_init() return SPARCCPU
  cpu-exec: Use cpu_reset() in cpu_exec() for TARGET_PPC
  virtex_ml507: Pass PowerPCCPU to main_cpu_reset()
  virtex_ml507: Let ppc440_init_xilinx() return PowerPCCPU
  virtex_ml507: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_prep: Pass PowerPCCPU to ppc_prep_reset()
  ppc_prep: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_oldworld: Pass PowerPCCPU to ppc_heathrow_reset()
  ppc_oldworld: Use cpu_ppc_init() to obtain PowerPCCPU
  ppc_newworld: Pass PowerPCCPU to ppc_core99_reset()
  ...

12 years agoMerge remote-tracking branch 'qemu-kvm/uq/master' into staging
Anthony Liguori [Wed, 6 Jun 2012 09:23:59 +0000 (17:23 +0800)]
Merge remote-tracking branch 'qemu-kvm/uq/master' into staging

* qemu-kvm/uq/master:
  kvm: Fix build for non-CAP_IRQ_ROUTING targets

12 years agokvm: Fix build for non-CAP_IRQ_ROUTING targets
Jan Kiszka [Tue, 5 Jun 2012 19:03:57 +0000 (21:03 +0200)]
kvm: Fix build for non-CAP_IRQ_ROUTING targets

A type definition and a KVMState field initialization escaped the
required wrapping with KVM_CAP_IRQ_ROUTING. Also, we need to provide a
dummy kvm_irqchip_release_virq as virtio-pci references (but does not
use) it.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Acked-by: Ben Collins <bcollins@ubuntu.com>
Tested-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
12 years agoRevert "Revert "rtl8139: do the network/host communication only in normal operating...
Anthony Liguori [Tue, 5 Jun 2012 01:05:51 +0000 (09:05 +0800)]
Revert "Revert "rtl8139: do the network/host communication only in normal operating mode""

This reverts commit 9c92bf7f6c3f675e60b8ba8a5287bb88ea1eac36.

Per Jason's request.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
12 years agoKill off cpu_state_reset()
Andreas Färber [Sat, 5 May 2012 13:43:31 +0000 (15:43 +0200)]
Kill off cpu_state_reset()

In commit 1bba0dc932e8826a7d030df3767daf0bc339f9a2 cpu_reset()
was renamed to cpu_state_reset(), to allow introducing a new cpu_reset()
that would operate on QOM objects.

All callers have been updated except for one in target-mips, so drop all
implementations except for the one in target-mips and move the
declaration there until MIPSCPU reset can be fully QOM'ified.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Michael Walle <michael@walle.cc> (for lm32)
Acked-by: Max Filippov <jcmvbkbc@gmail.com> (for xtensa)
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> (for mb + cris)
Acked-by: Alexander Graf <agraf@suse.de> (for ppc)
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agolinux-user: Use cpu_reset() after cpu_init() / cpu_copy()
Andreas Färber [Sat, 5 May 2012 12:47:34 +0000 (14:47 +0200)]
linux-user: Use cpu_reset() after cpu_init() / cpu_copy()

Eliminates cpu_state_reset() usage.

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agobsd-user: Use cpu_reset() in after cpu_init()
Andreas Färber [Sat, 5 May 2012 12:28:09 +0000 (14:28 +0200)]
bsd-user: Use cpu_reset() in after cpu_init()

Eliminates cpu_state_reset() usage.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agoleon3: Store SPARCCPU in ResetData
Andreas Färber [Fri, 4 May 2012 00:36:04 +0000 (02:36 +0200)]
leon3: Store SPARCCPU in ResetData

Allows us to use cpu_reset() in place of cpu_state_reset() in
main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agoleon3: Use cpu_sparc_init() to obtain SPARCCPU
Andreas Färber [Fri, 4 May 2012 00:33:34 +0000 (02:33 +0200)]
leon3: Use cpu_sparc_init() to obtain SPARCCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agosun4u: Store SPARCCPU in ResetData
Andreas Färber [Thu, 3 May 2012 01:41:16 +0000 (03:41 +0200)]
sun4u: Store SPARCCPU in ResetData

We can now use cpu_reset() in place of cpu_state_reset() in
main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agosun4u: Let cpu_devinit() return SPARCCPU
Andreas Färber [Thu, 3 May 2012 01:33:52 +0000 (03:33 +0200)]
sun4u: Let cpu_devinit() return SPARCCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agosun4u: Use cpu_sparc_init() to obtain SPARCCPU
Andreas Färber [Thu, 3 May 2012 01:29:49 +0000 (03:29 +0200)]
sun4u: Use cpu_sparc_init() to obtain SPARCCPU

This prepares using it in sun4uv_init().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agosun4m: Pass SPARCCPU to {main,secondary}_cpu_reset()
Andreas Färber [Thu, 3 May 2012 01:21:31 +0000 (03:21 +0200)]
sun4m: Pass SPARCCPU to {main,secondary}_cpu_reset()

We can now use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agosun4m: Use cpu_sparc_init() to obtain SPARCCPU
Andreas Färber [Thu, 3 May 2012 01:14:37 +0000 (03:14 +0200)]
sun4m: Use cpu_sparc_init() to obtain SPARCCPU

Needed for {main,secondary}_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agotarget-sparc: Let cpu_sparc_init() return SPARCCPU
Andreas Färber [Thu, 3 May 2012 01:12:35 +0000 (03:12 +0200)]
target-sparc: Let cpu_sparc_init() return SPARCCPU

Make include paths for cpu-qom.h consistent, so that SPARCCPU can be
used in cpu.h.

Turn cpu_init macro into a static inline function returning
CPUSPARCState for backwards compatibility.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Blue Swirl <blauwirbel@gmail.com>
12 years agocpu-exec: Use cpu_reset() in cpu_exec() for TARGET_PPC
Andreas Färber [Fri, 4 May 2012 17:39:23 +0000 (19:39 +0200)]
cpu-exec: Use cpu_reset() in cpu_exec() for TARGET_PPC

CPUState will be needed for all targets in the future, so place it into
the main variable declaration block.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agovirtex_ml507: Pass PowerPCCPU to main_cpu_reset()
Andreas Färber [Fri, 4 May 2012 16:20:07 +0000 (18:20 +0200)]
virtex_ml507: Pass PowerPCCPU to main_cpu_reset()

Allows us to call cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agovirtex_ml507: Let ppc440_init_xilinx() return PowerPCCPU
Andreas Färber [Fri, 4 May 2012 15:59:06 +0000 (17:59 +0200)]
virtex_ml507: Let ppc440_init_xilinx() return PowerPCCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agovirtex_ml507: Use cpu_ppc_init() to obtain PowerPCCPU
Andreas Färber [Fri, 4 May 2012 15:57:13 +0000 (17:57 +0200)]
virtex_ml507: Use cpu_ppc_init() to obtain PowerPCCPU

Needed to change ppc440_init_xilinx() return type.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc_prep: Pass PowerPCCPU to ppc_prep_reset()
Andreas Färber [Fri, 4 May 2012 15:46:13 +0000 (17:46 +0200)]
ppc_prep: Pass PowerPCCPU to ppc_prep_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc_prep: Use cpu_ppc_init() to obtain PowerPCCPU
Andreas Färber [Fri, 4 May 2012 15:45:09 +0000 (17:45 +0200)]
ppc_prep: Use cpu_ppc_init() to obtain PowerPCCPU

Needed for ppc_prep_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc_oldworld: Pass PowerPCCPU to ppc_heathrow_reset()
Andreas Färber [Fri, 4 May 2012 15:42:23 +0000 (17:42 +0200)]
ppc_oldworld: Pass PowerPCCPU to ppc_heathrow_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc_oldworld: Use cpu_ppc_init() to obtain PowerPCCPU
Andreas Färber [Fri, 4 May 2012 15:38:41 +0000 (17:38 +0200)]
ppc_oldworld: Use cpu_ppc_init() to obtain PowerPCCPU

Needed for ppc_heathrow_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc_newworld: Pass PowerPCCPU to ppc_core99_reset()
Andreas Färber [Fri, 4 May 2012 15:30:25 +0000 (17:30 +0200)]
ppc_newworld: Pass PowerPCCPU to ppc_core99_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc_newworld: Use cpu_ppc_init() to obtain PowerPCCPU
Andreas Färber [Fri, 4 May 2012 15:29:07 +0000 (17:29 +0200)]
ppc_newworld: Use cpu_ppc_init() to obtain PowerPCCPU

Needed for ppc_core99_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc4xx_devs: Pass PowerPCCPU to ppc4xx_reset()
Andreas Färber [Fri, 4 May 2012 15:22:20 +0000 (17:22 +0200)]
ppc4xx_devs: Pass PowerPCCPU to ppc4xx_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc4xx_devs: Use cpu_ppc_init() to obtain PowerPCCPU
Andreas Färber [Fri, 4 May 2012 15:20:11 +0000 (17:20 +0200)]
ppc4xx_devs: Use cpu_ppc_init() to obtain PowerPCCPU

Needed for ppc4xx_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc440_bamboo: Pass PowerPCCPU to main_cpu_reset()
Andreas Färber [Fri, 4 May 2012 14:39:39 +0000 (16:39 +0200)]
ppc440_bamboo: Pass PowerPCCPU to main_cpu_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppc440_bamboo: Use cpu_ppc_init() to obtain PowerPCCPU
Andreas Färber [Fri, 4 May 2012 14:35:51 +0000 (16:35 +0200)]
ppc440_bamboo: Use cpu_ppc_init() to obtain PowerPCCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agospapr: Pass PowerPCCPU to spapr_cpu_reset()
Andreas Färber [Fri, 4 May 2012 15:49:38 +0000 (17:49 +0200)]
spapr: Pass PowerPCCPU to spapr_cpu_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agospapr: Use cpu_ppc_init() to obtain PowerPCCPU
Andreas Färber [Thu, 3 May 2012 03:45:10 +0000 (05:45 +0200)]
spapr: Use cpu_ppc_init() to obtain PowerPCCPU

Needed for spapr_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agoppce500_mpc8544ds: Pass PowerPCCPU to mpc8544ds_cpu_reset[_sec]
Andreas Färber [Fri, 4 May 2012 00:09:06 +0000 (02:09 +0200)]
ppce500_mpc8544ds: Pass PowerPCCPU to mpc8544ds_cpu_reset[_sec]

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agotarget-ppc: Let cpu_ppc_init() return PowerPCCPU
Andreas Färber [Thu, 3 May 2012 03:43:05 +0000 (05:43 +0200)]
target-ppc: Let cpu_ppc_init() return PowerPCCPU

Adapt e500 mpc8544ds machine accordingly.

Turn cpu_init() into a static inline function returning CPUPPCState for
backwards compatibility.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Alexander Graf <agraf@suse.de>
12 years agomips_r4k: Store MIPSCPU in ResetData
Andreas Färber [Sat, 5 May 2012 12:23:25 +0000 (14:23 +0200)]
mips_r4k: Store MIPSCPU in ResetData

Allows us to use cpu_reset() in place of cpu_state_reset() in
main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agomips_r4k: Use cpu_mips_init() to obtain MIPSCPU
Andreas Färber [Sat, 5 May 2012 12:21:43 +0000 (14:21 +0200)]
mips_r4k: Use cpu_mips_init() to obtain MIPSCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agomips_mipssim: Store MIPSCPU in ResetData
Andreas Färber [Sat, 5 May 2012 12:19:45 +0000 (14:19 +0200)]
mips_mipssim: Store MIPSCPU in ResetData

Allows us to use cpu_reset() in place of cpu_state_reset() in
main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agomips_mipssim: Use cpu_mips_init() to obtain MIPSCPU
Andreas Färber [Sat, 5 May 2012 12:17:49 +0000 (14:17 +0200)]
mips_mipssim: Use cpu_mips_init() to obtain MIPSCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agomips_malta: Pass MIPSCPU to main_cpu_reset()
Andreas Färber [Sat, 5 May 2012 12:14:00 +0000 (14:14 +0200)]
mips_malta: Pass MIPSCPU to main_cpu_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agomips_malta: Use cpu_mips_init() to obtain MIPSCPU
Andreas Färber [Sat, 5 May 2012 12:11:48 +0000 (14:11 +0200)]
mips_malta: Use cpu_mips_init() to obtain MIPSCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agomips_jazz: Pass MIPSCPU to main_cpu_reset()
Andreas Färber [Sat, 5 May 2012 12:06:50 +0000 (14:06 +0200)]
mips_jazz: Pass MIPSCPU to main_cpu_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Hervé Poussineau <hpoussin@reactos.org>
12 years agomips_jazz: Use cpu_mips_init() to obtain MIPSCPU
Andreas Färber [Sat, 5 May 2012 12:05:42 +0000 (14:05 +0200)]
mips_jazz: Use cpu_mips_init() to obtain MIPSCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Hervé Poussineau <hpoussin@reactos.org>
12 years agomips_fulong2e: Pass MIPSCPU to main_cpu_reset()
Andreas Färber [Sat, 5 May 2012 11:56:22 +0000 (13:56 +0200)]
mips_fulong2e: Pass MIPSCPU to main_cpu_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agomips_fulong2e: Use cpu_mips_cpu() to obtain MIPSCPU
Andreas Färber [Sat, 5 May 2012 11:54:41 +0000 (13:54 +0200)]
mips_fulong2e: Use cpu_mips_cpu() to obtain MIPSCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agotarget-mips: Let cpu_mips_init() return MIPSCPU
Andreas Färber [Sat, 5 May 2012 11:33:04 +0000 (13:33 +0200)]
target-mips: Let cpu_mips_init() return MIPSCPU

Turn cpu_init macro into a static inline function returning CPUMIPSState
for backwards compatibility.

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agotarget-mips: Use cpu_reset() in do_interrupt()
Andreas Färber [Sat, 5 May 2012 10:53:17 +0000 (12:53 +0200)]
target-mips: Use cpu_reset() in do_interrupt()

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agotarget-mips: Use cpu_reset() in cpu_mips_init()
Andreas Färber [Sat, 5 May 2012 11:06:10 +0000 (13:06 +0200)]
target-mips: Use cpu_reset() in cpu_mips_init()

Commit 0f71a7095db6bc055bc5bb520d85ea650cca8a33 (target-mips: QOM'ify
CPU) hooked up cpu_state_reset() to CPUClass::reset(). Dropping the
introduction of subclasses for 1.1, due to mips_def_t the reset code
could not be QOM'ified yet, i.e. cpu_state_reset() will not forward to
CPUClass::reset().

Update cpu_mips_init() with cpu_reset() nontheless, indirectly calling
cpu_state_reset(), so that generic code can be converted to call
cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agor2d: Store SuperHCPU in ResetData
Andreas Färber [Fri, 4 May 2012 16:40:14 +0000 (18:40 +0200)]
r2d: Store SuperHCPU in ResetData

Allows us to use cpu_reset() in place of cpu_state_reset() in
main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agor2d: Use cpu_sh4_init() to obtain SuperHCPU
Andreas Färber [Fri, 4 May 2012 16:38:01 +0000 (18:38 +0200)]
r2d: Use cpu_sh4_init() to obtain SuperHCPU

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agotarget-sh4: Let cpu_sh4_init() return SuperHCPU
Andreas Färber [Fri, 4 May 2012 16:35:09 +0000 (18:35 +0200)]
target-sh4: Let cpu_sh4_init() return SuperHCPU

Turn cpu_init macro into a static inline function returning
CPUSH4State for backwards compatibility.

Signed-off-by: Andreas Färber <afaerber@suse.de>
12 years agopc: Pass X86CPU to pc_cpu_reset()
Andreas Färber [Wed, 2 May 2012 17:37:34 +0000 (19:37 +0200)]
pc: Pass X86CPU to pc_cpu_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
12 years agopc: Use cpu_x86_init() to obtain X86CPU
Andreas Färber [Wed, 2 May 2012 16:49:27 +0000 (18:49 +0200)]
pc: Use cpu_x86_init() to obtain X86CPU

Needed for pc_cpu_reset().

Also change return type to X86CPU.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
12 years agotarget-i386: Let cpu_x86_init() return X86CPU
Andreas Färber [Wed, 2 May 2012 16:42:46 +0000 (18:42 +0200)]
target-i386: Let cpu_x86_init() return X86CPU

Turn cpu_init macro into a static inline function returning CPUX86State
for backwards compatibility.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
12 years agotarget-i386: Pass X86CPU to do_cpu_{init,sipi}()
Andreas Färber [Fri, 4 May 2012 23:14:41 +0000 (01:14 +0200)]
target-i386: Pass X86CPU to do_cpu_{init,sipi}()

Allows to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
12 years agomicroblaze_boot: Pass MicroBlazeCPU to microblaze_load_kernel()
Andreas Färber [Sat, 5 May 2012 10:30:53 +0000 (12:30 +0200)]
microblaze_boot: Pass MicroBlazeCPU to microblaze_load_kernel()

Allows us to use cpu_reset() in place of cpu_state_reset() in
main_cpu_reset().

Also pass it through to its reset callbacks, while at it.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agopetalogix_s3adsp1800_mmu: Use cpu_mb_init() to obtain MicroBlazeCPU
Andreas Färber [Sat, 5 May 2012 10:20:29 +0000 (12:20 +0200)]
petalogix_s3adsp1800_mmu: Use cpu_mb_init() to obtain MicroBlazeCPU

Needed for microblaze_load_kernel().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agopetalogix_ml605: Use cpu_mb_init() to obtain MicroBlazeCPU
Andreas Färber [Sat, 5 May 2012 10:19:03 +0000 (12:19 +0200)]
petalogix_ml605: Use cpu_mb_init() to obtain MicroBlazeCPU

Needed for microblaze_load_kernel().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agotarget-microblaze: Let cpu_mb_init() return MicroBlazeCPU
Andreas Färber [Sat, 5 May 2012 10:14:03 +0000 (12:14 +0200)]
target-microblaze: Let cpu_mb_init() return MicroBlazeCPU

Since qemu_init_vcpu() is no-op for CONFIG_USER_ONLY drop the env
variable that is now unused there.

Turn cpu_init macro into a static inline function returning CPUMBState
for backwards compatibility.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agocris-boot: Pass CRISCPU to main_cpu_reset().
Andreas Färber [Sat, 5 May 2012 09:58:29 +0000 (11:58 +0200)]
cris-boot: Pass CRISCPU to main_cpu_reset().

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agocris-boot: Pass CRISCPU to cris_load_image()
Andreas Färber [Sat, 5 May 2012 09:57:07 +0000 (11:57 +0200)]
cris-boot: Pass CRISCPU to cris_load_image()

Needed for main_cpu_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agoaxis_dev88: Use cpu_cris_init() to obtain CRISCPU
Andreas Färber [Sat, 5 May 2012 09:50:35 +0000 (11:50 +0200)]
axis_dev88: Use cpu_cris_init() to obtain CRISCPU

Needed for cris_load_image().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agotarget-cris: Let cpu_cris_init() return CRISCPU
Andreas Färber [Sat, 5 May 2012 09:37:07 +0000 (11:37 +0200)]
target-cris: Let cpu_cris_init() return CRISCPU

Turn cpu_init macro into a static inline function returning CPUCRISState
for backwards compatibility.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agotarget-cris: Reindent cpu_cris_init()
Andreas Färber [Sat, 5 May 2012 09:45:32 +0000 (11:45 +0200)]
target-cris: Reindent cpu_cris_init()

Judging by TCG variable initialization it used 8-char tabs; use 4 spaces
instead. Also remove trailing whitespace.

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
12 years agoxtensa_lx60: Pass XtensaCPU to lx60_reset()
Andreas Färber [Fri, 4 May 2012 17:33:05 +0000 (19:33 +0200)]
xtensa_lx60: Pass XtensaCPU to lx60_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Max Filippov <jcmvbkbc@gmail.com>
12 years agoxtensa_lx60: Use cpu_xtensa_init() to obtain XtensaCPU
Andreas Färber [Fri, 4 May 2012 17:31:25 +0000 (19:31 +0200)]
xtensa_lx60: Use cpu_xtensa_init() to obtain XtensaCPU

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Max Filippov <jcmvbkbc@gmail.com>
12 years agoxtensa_sim: Pass XtensaCPU to sim_reset()
Andreas Färber [Fri, 4 May 2012 17:28:19 +0000 (19:28 +0200)]
xtensa_sim: Pass XtensaCPU to sim_reset()

Allows us to use cpu_reset() in place of cpu_state_reset().

Signed-off-by: Andreas Färber <afaerber@suse.de>
Acked-by: Max Filippov <jcmvbkbc@gmail.com>