qemu/hw/ppc
Bharata B Rao 94a94e4c49 spapr: convert boot CPUs into CPU core devices
Introduce sPAPRMachineClass.dr_cpu_enabled to indicate support for
CPU core hotplug. Initialize boot time CPUs as core deivces and prevent
topologies that result in partially filled cores. Both of these are done
only if CPU core hotplug is supported.

Note: An unrelated change in the call to xics_system_init() is done
in this patch as it makes sense to use the local variable smt introduced
in this patch instead of kvmppc_smt_threads() call here.

TODO: We derive sPAPR core type by looking at -cpu <model>. However
we don't take care of "compat=" feature yet for boot time as well
as hotplug CPUs.

Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2016-06-17 16:33:49 +10:00
..
e500-ccsr.h ppc: do not use ../ in include files 2013-03-01 13:57:33 +01:00
e500.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
e500.h PPC: e500 pci host: Add support for ATMUs 2015-01-07 16:16:24 +01:00
e500plat.c dma: do not depend on kvm_enabled() 2016-05-19 16:42:28 +02:00
mac.h cuda: port SET_DEVICE_LIST command to new framework 2016-02-17 09:59:30 +11:00
mac_newworld.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
mac_oldworld.c vl: Eliminate usb_enabled() 2016-06-13 13:24:41 +02:00
Makefile.objs spapr: Abstract CPU core device and type specific core devices 2016-06-17 16:33:48 +10:00
mpc8544_guts.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
mpc8544ds.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
ppc.c ppc: Remove a potential overflow in muldiv64() 2016-06-07 18:02:49 +03:00
ppc4xx_devs.c qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00
ppc4xx_pci.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
ppc405.h hw: move private headers to hw/ subdirectories. 2013-04-08 18:13:16 +02:00
ppc405_boards.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
ppc405_uc.c Replaced get_tick_per_sec() by NANOSECONDS_PER_SECOND 2016-03-22 22:20:17 +01:00
ppc440_bamboo.c loader: Add data swap option to load-elf 2016-03-04 11:30:21 +00:00
ppc_booke.c Replaced get_tick_per_sec() by NANOSECONDS_PER_SECOND 2016-03-22 22:20:17 +01:00
ppce500_spin.c ppc: Clean up includes 2016-01-29 15:07:22 +00:00
prep.c vl: Eliminate usb_enabled() 2016-06-13 13:24:41 +02:00
spapr.c spapr: convert boot CPUs into CPU core devices 2016-06-17 16:33:49 +10:00
spapr_cpu_core.c spapr: convert boot CPUs into CPU core devices 2016-06-17 16:33:49 +10:00
spapr_drc.c spapr_drc: Prevent detach racing against attach for CPU DR 2016-06-17 16:33:48 +10:00
spapr_events.c spapr_drc: fix aborts during DRC-count based hotplug 2016-04-26 11:16:08 +10:00
spapr_hcall.c ppc: Add PowerISA 2.07 compatibility mode 2016-06-14 10:41:38 +10:00
spapr_iommu.c spapr_iommu: Add root memory region 2016-06-07 10:17:45 +10:00
spapr_pci.c spapr_pci: Drop cannot_instantiate_with_device_add_yet=false 2016-06-07 10:17:45 +10:00
spapr_pci_vfio.c hw/ppc/spapr: Silence deprecation message in qtest mode 2016-06-17 09:47:59 +10:00
spapr_rng.c hw: explicitly include qemu-common.h and cpu.h 2016-03-22 22:20:17 +01:00
spapr_rtas.c hw: explicitly include qemu/log.h 2016-05-19 16:42:29 +02:00
spapr_rtc.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
spapr_vio.c spapr_iommu: Introduce "enabled" state for TCE table 2016-06-07 10:17:45 +10:00
virtex_ml507.c qemu-common: push cpu.h inclusion out of qemu-common.h 2016-05-19 16:42:29 +02:00