mirror of
https://github.com/mii443/qemu.git
synced 2025-08-22 15:15:46 +00:00
target/hppa: Report and clear BTLBs via fw_cfg at startup
Report the new number of TLB entries (without BTLBs) to the guest and drop reporting of BTLB entries which weren't used at all. Clear all BTLB and TLB entries at machine reset. Signed-off-by: Helge Deller <deller@gmx.de>
This commit is contained in:
@ -133,14 +133,10 @@ static FWCfgState *create_fw_cfg(MachineState *ms)
|
||||
fw_cfg_add_file(fw_cfg, "/etc/firmware-min-version",
|
||||
g_memdup(&val, sizeof(val)), sizeof(val));
|
||||
|
||||
val = cpu_to_le64(HPPA_TLB_ENTRIES);
|
||||
val = cpu_to_le64(HPPA_TLB_ENTRIES - HPPA_BTLB_ENTRIES);
|
||||
fw_cfg_add_file(fw_cfg, "/etc/cpu/tlb_entries",
|
||||
g_memdup(&val, sizeof(val)), sizeof(val));
|
||||
|
||||
val = cpu_to_le64(HPPA_BTLB_ENTRIES);
|
||||
fw_cfg_add_file(fw_cfg, "/etc/cpu/btlb_entries",
|
||||
g_memdup(&val, sizeof(val)), sizeof(val));
|
||||
|
||||
val = cpu_to_le64(HPA_POWER_BUTTON);
|
||||
fw_cfg_add_file(fw_cfg, "/etc/power-button-addr",
|
||||
g_memdup(&val, sizeof(val)), sizeof(val));
|
||||
@ -433,6 +429,10 @@ static void hppa_machine_reset(MachineState *ms, ShutdownCause reason)
|
||||
|
||||
cs->exception_index = -1;
|
||||
cs->halted = 0;
|
||||
|
||||
/* clear any existing TLB and BTLB entries */
|
||||
memset(cpu[i]->env.tlb, 0, sizeof(cpu[i]->env.tlb));
|
||||
cpu[i]->env.tlb_last = HPPA_BTLB_ENTRIES;
|
||||
}
|
||||
|
||||
/* already initialized by machine_hppa_init()? */
|
||||
|
Reference in New Issue
Block a user