mirror of https://github.com/xemu-project/xemu.git
target/mips/cpu: Introduce mips_cpu_create_with_clock() helper
Introduce an helper to create a MIPS CPU and connect it to a reference clock. This helper is not MIPS specific, but so far only MIPS CPUs need it. Suggested-by: Huacai Chen <zltjiangshi@gmail.com> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20201012095804.3335117-13-f4bug@amsat.org>
This commit is contained in:
parent
a0713e85bf
commit
7aaab96a9b
|
@ -288,3 +288,15 @@ static void mips_cpu_register_types(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
type_init(mips_cpu_register_types)
|
type_init(mips_cpu_register_types)
|
||||||
|
|
||||||
|
/* Could be used by generic CPU object */
|
||||||
|
MIPSCPU *mips_cpu_create_with_clock(const char *cpu_type, Clock *cpu_refclk)
|
||||||
|
{
|
||||||
|
DeviceState *cpu;
|
||||||
|
|
||||||
|
cpu = DEVICE(object_new(cpu_type));
|
||||||
|
qdev_connect_clock_in(cpu, "clk-in", cpu_refclk);
|
||||||
|
qdev_realize(cpu, NULL, &error_abort);
|
||||||
|
|
||||||
|
return MIPS_CPU(cpu);
|
||||||
|
}
|
||||||
|
|
|
@ -1307,4 +1307,16 @@ static inline void cpu_get_tb_cpu_state(CPUMIPSState *env, target_ulong *pc,
|
||||||
MIPS_HFLAG_HWRENA_ULR);
|
MIPS_HFLAG_HWRENA_ULR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* mips_cpu_create_with_clock:
|
||||||
|
* @typename: a MIPS CPU type.
|
||||||
|
* @cpu_refclk: this cpu input clock (an output clock of another device)
|
||||||
|
*
|
||||||
|
* Instantiates a MIPS CPU, set the input clock of the CPU to @cpu_refclk,
|
||||||
|
* then realizes the CPU.
|
||||||
|
*
|
||||||
|
* Returns: A #CPUState or %NULL if an error occurred.
|
||||||
|
*/
|
||||||
|
MIPSCPU *mips_cpu_create_with_clock(const char *cpu_type, Clock *cpu_refclk);
|
||||||
|
|
||||||
#endif /* MIPS_CPU_H */
|
#endif /* MIPS_CPU_H */
|
||||||
|
|
Loading…
Reference in New Issue