qemu-e2k/include/hw
Greg Kurz 9ed656631d xics: setup cpu at realize time
Until recently, spapr used to allocate ICPState objects for the lifetime
of the machine. They would only be associated to vCPUs in xics_cpu_setup()
when plugging a CPU core.

Now that ICPState objects have the same lifecycle as vCPUs, it is
possible to associate them during realization.

This patch hence open-codes xics_cpu_setup() in icp_realize(). The vCPU
is passed as a property. Note that vCPU now needs to be realized first
for the IRQs to be allocated. It also needs to resetted before ICPState
realization in order to synchronize with KVM.

Since ICPState objects are freed when unrealized, xics_cpu_destroy() isn't
needed anymore and can be safely dropped.

Signed-off-by: Greg Kurz <groug@kaod.org>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2017-06-09 12:15:57 +10:00
..
acpi migration: Remove unneeded includes of migration/vmstate.h 2017-06-01 18:49:22 +02:00
adc
arm aspeed: add a FTGMAC100 nic 2017-04-25 19:17:25 +08:00
audio audio: Rename hw/audio/audio.h to hw/audio/soundhw.h 2017-05-19 10:48:54 +02:00
block hw/block: Introduce share-rw qdev property 2017-02-28 20:40:36 +01:00
char char: move CharBackend handling in char-fe unit 2017-06-02 11:33:53 +04:00
core
cpu
cris
display
dma
gpio bcm2835_gpio: add bcm2835 gpio controller 2017-02-28 17:10:00 +00:00
i2c
i386 pc: Use "min-[x]level" on compat_props 2017-06-05 14:59:08 -03:00
ide ide: core: add cleanup function 2017-03-15 20:50:14 -04:00
input ps2: fix mouse mappings for right/middle button 2017-02-20 11:25:38 +01:00
intc hw/intc/arm_gicv3_kvm: Add ICC_SRE_EL1 register to vmstate 2017-02-28 17:10:00 +00:00
ipack
ipmi ipmi: introduce an ipmi_bmc_gen_event() API 2017-04-26 12:41:55 +10:00
isa
kvm
lm32
m68k hw/char/mcf_uart: QOMify the ColdFire UART 2017-02-16 14:06:56 +01:00
mem
mips hw/mips: add missing include 2017-06-04 18:42:55 +03:00
misc target-arm: Implement BCM2835 hardware RNG 2017-02-28 12:08:13 +00:00
net net/ftgmac100: add a 'aspeed' property 2017-04-25 19:17:25 +08:00
nvram
pci migration: Remove unneeded includes of migration/vmstate.h 2017-06-01 18:49:22 +02:00
pci-host hw/ppc: removing drc->detach_cb and drc->detach_cb_opaque 2017-05-25 11:31:33 +10:00
ppc xics: setup cpu at realize time 2017-06-09 12:15:57 +10:00
s390x s390x/css: ccw translation infrastructure 2017-05-19 12:29:01 +02:00
scsi hw: Deprecate -drive if=scsi with non-onboard HBAs 2017-02-21 13:17:45 +01:00
sd hw/sd: add card-reparenting function 2017-02-28 17:10:00 +00:00
sh4
smbios
sparc
ssi
timer armv7m: Split systick out from NVIC 2017-02-28 16:18:49 +00:00
tricore
unicore32
usb
vfio vfio/ccw: vfio based subchannel passthrough driver 2017-05-19 12:29:01 +02:00
virtio vhost: rework IOTLB messaging 2017-06-02 18:57:17 +03:00
watchdog
xen xen/9pfs: build and register Xen 9pfs backend 2017-04-25 11:04:33 -07:00
boards.h machine: call machine init from wrapper 2017-05-11 16:08:50 -03:00
bt.h
compat.h virtio_net: Bypass backends for MTU feature negotiation 2017-05-25 21:25:28 +03:00
devices.h sm501: QOMify 2017-04-24 12:32:12 +01:00
elf_ops.h elf-loader: Allow late loading of elf 2017-02-28 12:04:48 +01:00
empty_slot.h
fw-path-provider.h
hotplug.h
hw.h migration: Split qemu-file.h 2017-06-01 18:49:22 +02:00
ide.h
irq.h
loader-fit.h loader: Support Flattened Image Trees (FIT images) 2017-02-21 23:47:40 +00:00
loader.h elf-loader: Allow late loading of elf 2017-02-28 12:04:48 +01:00
nmi.h
or-irq.h
pcmcia.h
platform-bus.h
ptimer.h tests: fix ptimer leaks 2017-03-01 00:09:28 +04:00
qdev-core.h qdev: Replace cannot_instantiate_with_device_add_yet with !user_creatable 2017-05-17 10:37:00 -03:00
qdev-dma.h
qdev-properties.h qdev: Replace cannot_instantiate_with_device_add_yet with !user_creatable 2017-05-17 10:37:00 -03:00
qdev.h
register.h
registerfields.h
stream.h
sysbus.h
usb.h usb: replace handle_destroy with unrealize 2017-02-23 15:40:19 +01:00