mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 23:33:54 -06:00
hw/mips/loongson3_virt: Propagate %processor_id to init_boot_param()
Propagate %processor_id from mips_loongson3_virt_init() where we have a reference to the first vCPU, so use it instead of the &first_cpu global. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20250115232952.31166-11-philmd@linaro.org>
This commit is contained in:
parent
7eb372cc8b
commit
92c63c9afd
1 changed files with 3 additions and 4 deletions
|
@ -173,7 +173,7 @@ static uint64_t get_cpu_freq_hz(const MIPSCPU *cpu)
|
||||||
return DEF_LOONGSON3_FREQ;
|
return DEF_LOONGSON3_FREQ;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void init_boot_param(unsigned cpu_count)
|
static void init_boot_param(unsigned cpu_count, uint32_t processor_id)
|
||||||
{
|
{
|
||||||
static void *p;
|
static void *p;
|
||||||
struct boot_params *bp;
|
struct boot_params *bp;
|
||||||
|
@ -184,8 +184,7 @@ static void init_boot_param(unsigned cpu_count)
|
||||||
bp->efi.smbios.vers = cpu_to_le16(1);
|
bp->efi.smbios.vers = cpu_to_le16(1);
|
||||||
init_reset_system(&(bp->reset_system));
|
init_reset_system(&(bp->reset_system));
|
||||||
p += ROUND_UP(sizeof(struct boot_params), 64);
|
p += ROUND_UP(sizeof(struct boot_params), 64);
|
||||||
init_loongson_params(&(bp->efi.smbios.lp), p, cpu_count,
|
init_loongson_params(&(bp->efi.smbios.lp), p, cpu_count, processor_id,
|
||||||
MIPS_CPU(first_cpu)->env.CP0_PRid,
|
|
||||||
loaderparams.cpu_freq, loaderparams.ram_size);
|
loaderparams.cpu_freq, loaderparams.ram_size);
|
||||||
|
|
||||||
rom_add_blob_fixed("params_rom", bp,
|
rom_add_blob_fixed("params_rom", bp,
|
||||||
|
@ -643,7 +642,7 @@ static void mips_loongson3_virt_init(MachineState *machine)
|
||||||
loaderparams.kernel_entry = load_kernel(&cpu->env);
|
loaderparams.kernel_entry = load_kernel(&cpu->env);
|
||||||
|
|
||||||
init_boot_rom();
|
init_boot_rom();
|
||||||
init_boot_param(machine->smp.cpus);
|
init_boot_param(machine->smp.cpus, cpu->env.CP0_PRid);
|
||||||
} else {
|
} else {
|
||||||
filename = qemu_find_file(QEMU_FILE_TYPE_BIOS,
|
filename = qemu_find_file(QEMU_FILE_TYPE_BIOS,
|
||||||
machine->firmware ?: LOONGSON3_BIOSNAME);
|
machine->firmware ?: LOONGSON3_BIOSNAME);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue