qemu/hw/ppc
Aditya Gupta 43af067317 hw/ppc: Fix build error with CONFIG_POWERNV disabled
Currently when CONFIG_POWERNV is not enabled, the build fails, such as
with --without-default-devices:

    $ ./configure --without-default-devices
    $ make

    [281/283] Linking target qemu-system-ppc64
    FAILED: qemu-system-ppc64
    cc -m64 @qemu-system-ppc64.rsp
    /usr/bin/ld: libqemu-ppc64-softmmu.a.p/target_ppc_misc_helper.c.o: in function `helper_load_sprd':
    .../target/ppc/misc_helper.c:335:(.text+0xcdc): undefined reference to `pnv_chip_find_core'
    /usr/bin/ld: libqemu-ppc64-softmmu.a.p/target_ppc_misc_helper.c.o: in function `helper_store_sprd':
    .../target/ppc/misc_helper.c:375:(.text+0xdf4): undefined reference to `pnv_chip_find_core'
    collect2: error: ld returned 1 exit status
    ...

This is since target/ppc/misc_helper.c references PowerNV specific
'pnv_chip_find_core' call.

Split the PowerNV specific SPRD code out of the generic PowerPC code, by
moving the SPRD code to pnv.c

Fixes: 9808ce6d5c ("target/ppc: Big-core scratch register fix")
Cc: Philippe Mathieu-Daudé <philmd@linaro.org>
Reported-by: Thomas Huth <thuth@redhat.com>
Suggested-by: Cédric Le Goater <clg@redhat.com>
Signed-off-by: Aditya Gupta <adityag@linux.ibm.com>
Acked-by: Cédric Le Goater <clg@redhat.com>
Message-ID: <20250820122516.949766-2-adityag@linux.ibm.com>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
(cherry picked from commit 46d03bb23d)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2025-09-04 23:16:52 +03:00
..
amigaone.c ppc/amigaone: Constify default_env 2025-03-21 13:54:34 +10:00
e500-ccsr.h Use OBJECT_DECLARE_SIMPLE_TYPE when possible 2020-09-18 14:12:32 -04:00
e500.c hw/sd/sdhci: Set reset value of interrupt registers 2025-03-11 20:00:16 +01:00
e500.h hw/ppc: Consolidate e500 initial mapping creation functions 2024-11-04 10:09:36 +10:00
e500plat.c hw/boards: Do not create unusable default if=sd drives 2025-02-16 14:25:08 +01:00
fdt.c target/ppc: Split page size information into a separate allocation 2018-04-27 18:05:22 +10:00
fw_cfg.c hw/ppc: Implement fw_cfg_arch_key_name() 2019-05-23 14:10:31 +02:00
Kconfig ppc/ppc405: Remove boards 2025-03-11 22:40:47 +10:00
mac_newworld.c load_aout: replace bswap_needed with big_endian 2025-03-21 12:51:16 +01:00
mac_oldworld.c load_aout: replace bswap_needed with big_endian 2025-03-21 12:51:16 +01:00
meson.build ppc/ppc405: Remove boards 2025-03-11 22:40:47 +10:00
mpc8544_guts.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
mpc8544ds.c hw/boards: Do not create unusable default if=sd drives 2025-02-16 14:25:08 +01:00
pef.c system: Move 'exec/confidential-guest-support.h' to system/ 2024-12-20 17:44:56 +01:00
pegasos2.c hw: Centralize handling of -machine dumpdtb option 2025-02-24 15:03:42 +00:00
pnv_adu.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
pnv_bmc.c ppc/pnv: Move the PNOR LPC address into struct PnvPnor 2025-03-20 19:58:10 +10:00
pnv_chiptod.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
pnv_core.c ppc/spapr: Fix RTAS stopped state 2025-03-20 14:48:17 +10:00
pnv_homer.c ppc/pnv: Make HOMER memory a RAM region 2025-03-11 22:43:30 +10:00
pnv_i2c.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
pnv_lpc.c ppc/pnv: Implement LPC FW address space IDSEL 2025-03-11 22:43:30 +10:00
pnv_n1_chiplet.c hw/ppc: Add N1 chiplet model 2024-02-23 23:24:42 +10:00
pnv_nest_pervasive.c ppc/pnv: Add xscom- prefix to pervasive-control region name 2024-11-27 02:49:36 +10:00
pnv_occ.c ppc/pnv: Fix system symbols in HOMER structure definitions 2025-03-20 19:58:11 +10:00
pnv_pnor.c ppc/pnv: Move the PNOR LPC address into struct PnvPnor 2025-03-20 19:58:10 +10:00
pnv_psi.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
pnv_sbe.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
pnv_xscom.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
pnv.c hw/ppc: Fix build error with CONFIG_POWERNV disabled 2025-09-04 23:16:52 +03:00
ppc4xx_devs.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
ppc4xx_sdram.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
ppc440_bamboo.c hw/boards: Do not create unusable default if=sd drives 2025-02-16 14:25:08 +01:00
ppc440_uc.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
ppc440.h ppc440: Remove ppc460ex_pcie_init legacy init function 2023-07-07 04:47:49 -03:00
ppc_booke.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
ppc.c target/ppc: fix timebase register reset state 2025-03-11 22:43:32 +10:00
ppce500_spin.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
prep_systemio.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
prep.c hw/boards: Do not create unusable default if=sd drives 2025-02-16 14:25:08 +01:00
rs6000_mc.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
sam460ex.c hw/ppc/epapr: Do not swap ePAPR magic value 2025-03-11 22:43:32 +10:00
spapr_caps.c vfio queue: 2025-03-13 10:35:12 +08:00
spapr_cpu_core.c ppc/spapr: Fix RTAS stopped state 2025-03-20 14:48:17 +10:00
spapr_drc.c qapi: Move include/qapi/qmp/ to include/qobject/ 2025-02-10 15:33:16 +01:00
spapr_events.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
spapr_hcall.c ppc: spapr: Enable 2nd DAWR on Power10 pSeries machine 2025-03-11 22:43:32 +10:00
spapr_iommu.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
spapr_irq.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
spapr_nested.c spapr: nested: Add support for reporting Hostwide state counter 2025-03-11 22:43:32 +10:00
spapr_numa.c spapr: Remove support for NVIDIA V100 GPU with NVLink2 2023-09-18 07:25:28 -03:00
spapr_nvdimm.c include/hw/qdev-properties: Remove DEFINE_PROP_END_OF_LIST 2024-12-19 19:36:37 +01:00
spapr_ovec.c hw/ppc: Constify VMState 2023-12-30 07:38:06 +11:00
spapr_pci_vfio.c hw/ppc/Kconfig: Imply VFIO_PCI 2023-12-19 19:03:38 +01:00
spapr_pci.c hw/ppc/spapr_pci: Do not reject VFs created after a PF 2025-02-20 18:23:19 -05:00
spapr_rng.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
spapr_rtas_ddw.c spapr/ddw: Implement 64bit query extension 2022-07-06 10:22:37 -03:00
spapr_rtas.c ppc/spapr: Fix RTAS stopped state 2025-03-20 14:48:17 +10:00
spapr_rtc.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
spapr_tpm_proxy.c Accel & Exec patch queue 2024-12-21 11:07:00 -05:00
spapr_vhyp_mmu.c target/ppc: Unexport some functions from mmu-book3s-v3.h 2024-07-26 09:51:34 +10:00
spapr_vio.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
spapr_vof.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00
spapr.c ppc/spapr: fix default cpu for pre-9.0 machines. 2025-03-21 13:54:34 +10:00
trace-events ppc/pnv: Begin a more complete ADU LPC model for POWER9/10 2024-07-26 09:21:06 +10:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
virtex_ml507.c hw/ppc/epapr: Do not swap ePAPR magic value 2025-03-11 22:43:32 +10:00
vof.c include: Rename sysemu/ -> system/ 2024-12-20 17:44:56 +01:00