qemu/include/hw/ppc
Nicholas Piggin c26504afd5 ppc/pnv: Add a big-core mode that joins two regular cores
POWER9 and POWER10 machines come in two variants, big-core and
small-core. Big-core machines are SMT8 from software's point of view,
but the low level platform topology ("xscom registers and pervasive
addressing"), these look more like a pair of small cores ganged
together.

Presently the way this is modelled is to create one SMT8 PnvCore and add
special cases to xscom and pervasive for big-core mode that tries to
split this into two small cores, but this is becoming too complicated to
manage.

A better approach is to create 2 core structures and ganging them
together to look like an SMT8 core in TCG. Then the xscom and pervasive
models mostly do not need to differentiate big and small core modes.

This change adds initial mode bits and QEMU topology handling to
split SMT8 cores into 2xSMT4 cores.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
2024-07-26 09:21:06 +10:00
..
fdt.h hw/ppc: Clean up local variable shadowing in _FDT helper routine 2023-09-29 10:07:17 +02:00
mac_dbdma.h
openpic_kvm.h
openpic.h ppc: spelling fixes 2023-09-20 07:54:34 +03:00
pnv_adu.h ppc/pnv: Implement ADU access to LPC space 2024-07-26 09:21:06 +10:00
pnv_chip.h ppc/pnv: Add a big-core mode that joins two regular cores 2024-07-26 09:21:06 +10:00
pnv_chiptod.h ppc/pnv: Implement the ChipTOD to Core transfer 2024-02-23 23:24:43 +10:00
pnv_core.h ppc/pnv: Add a big-core mode that joins two regular cores 2024-07-26 09:21:06 +10:00
pnv_homer.h include/hw/ppc include/hw/pci-host: Drop extra typedefs 2023-01-20 07:25:22 +01:00
pnv_i2c.h ppc/pnv: Add an I2C controller model 2023-11-07 15:49:41 -03:00
pnv_lpc.h ppc/pnv: Implement ADU access to LPC space 2024-07-26 09:21:06 +10:00
pnv_n1_chiplet.h hw/ppc: Add N1 chiplet model 2024-02-23 23:24:42 +10:00
pnv_nest_pervasive.h hw/ppc: Add pnv nest pervasive common chiplet model 2024-02-23 23:24:42 +10:00
pnv_occ.h include/hw/ppc: Supply a few missing includes 2023-01-20 07:25:14 +01:00
pnv_pnor.h include/hw/ppc: Supply a few missing includes 2023-01-20 07:25:14 +01:00
pnv_psi.h hw/ppc: Avoid using Monitor in pnv_psi_pic_print_info() 2024-06-19 12:40:49 +02:00
pnv_sbe.h include/hw/ppc: Supply a few missing includes 2023-01-20 07:25:14 +01:00
pnv_xive.h hw/ppc: Avoid using Monitor in pnv_xive2_pic_print_info() 2024-06-19 12:40:49 +02:00
pnv_xscom.h ppc/pnv: Begin a more complete ADU LPC model for POWER9/10 2024-07-26 09:21:06 +10:00
pnv.h ppc/pnv: Add a big-core mode that joins two regular cores 2024-07-26 09:21:06 +10:00
ppc4xx.h hw/ppc/ppc4xx_pci: Extract PCI host definitions to hw/pci-host/ppc4xx.h 2024-02-22 12:47:40 +01:00
ppc_e500.h
ppc.h target/ppc: Move PowerPCCPUClass definition to 'cpu.h' 2023-11-07 12:13:28 +01:00
spapr_cpu_core.h ppc/spapr: Add a nested state struct 2023-06-25 22:41:30 +02:00
spapr_drc.h spapr: rollback 'unplug timeout' for CPU hotunplugs 2021-04-12 12:27:14 +10:00
spapr_irq.h hw/ppc: Avoid using Monitor in spapr_irq_print_info() 2024-06-19 12:40:49 +02:00
spapr_nested.h spapr: nested: Use correct source for parttbl info for nested PAPR API. 2024-03-13 02:47:04 +10:00
spapr_numa.h spapr: move FORM1 verifications to post CAS 2021-09-30 12:26:06 +10:00
spapr_nvdimm.h spapr: nvdimm: Implement H_SCM_FLUSH hcall 2022-02-18 08:34:14 +01:00
spapr_ovec.h spapr_numa.c: FORM2 NUMA affinity support 2021-09-30 12:26:06 +10:00
spapr_tpm_proxy.h
spapr_vio.h dma: Let ld*_dma() propagate MemTxResult 2021-12-31 01:05:27 +01:00
spapr_xive.h
spapr.h spapr: Migrate ail-mode-3 spapr cap 2024-07-26 09:21:06 +10:00
vof.h hw/ppc/vof: Do not include the full "cpu.h" 2022-12-21 14:17:55 -03:00
xics_spapr.h
xics.h hw/ppc: Avoid using Monitor in ics_pic_print_info() 2024-06-19 12:40:49 +02:00
xive2_regs.h hw/ppc: Avoid using Monitor in xive2_end_pic_print_info() 2024-06-19 12:40:49 +02:00
xive2.h include/hw/ppc: Supply a few missing includes 2023-01-20 07:25:14 +01:00
xive_regs.h hw/ppc: Avoid using Monitor in xive_end_eas_pic_print_info() 2024-06-19 12:40:49 +02:00
xive.h hw/ppc: Avoid using Monitor in xive_source_pic_print_info() 2024-06-19 12:40:49 +02:00