ppc/pnv: Extend chip_pir class method to TIR as well

The chip_pir chip class method allows the platform to set the PIR
processor identification register. Extend this to a more general
ID function which also allows the TIR to be set. This is in
preparation for "big core", which is a more complicated topology
of cores and threads.

Reviewed-by: Cédric Le Goater <clg@redhat.com>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
This commit is contained in:
Nicholas Piggin 2024-05-24 11:54:09 +10:00
parent d76cb5a53b
commit 25de28220c
3 changed files with 62 additions and 33 deletions

View file

@ -150,7 +150,9 @@ struct PnvChipClass {
DeviceRealize parent_realize;
uint32_t (*chip_pir)(PnvChip *chip, uint32_t core_id, uint32_t thread_id);
/* Get PIR and TIR values for a CPU thread identified by core/thread id */
void (*get_pir_tir)(PnvChip *chip, uint32_t core_id, uint32_t thread_id,
uint32_t *pir, uint32_t *tir);
void (*intc_create)(PnvChip *chip, PowerPCCPU *cpu, Error **errp);
void (*intc_reset)(PnvChip *chip, PowerPCCPU *cpu);
void (*intc_destroy)(PnvChip *chip, PowerPCCPU *cpu);