On Wed, Feb 16, 2022 at 01:24:25PM -0300, Fabiano Rosas wrote: > These will need to be accessed from other files once we move the CPUs > code to separate files. > > The check_pow_hid0 and check_pow_hid0_74xx are too specific to be > moved to a header so I'll deal with them later when splitting this > code between the multiple CPU families. > > Signed-off-by: Fabiano Rosas <faro...@linux.ibm.com>
Reviewed-by: David Gibson <da...@gibson.dropbear.id.au> > --- > target/ppc/cpu.h | 39 +++++++++++++++++++++++++++++++++++++++ > target/ppc/cpu_init.c | 37 ------------------------------------- > 2 files changed, 39 insertions(+), 37 deletions(-) > > diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h > index 6a06a7f533..1d33e8afea 100644 > --- a/target/ppc/cpu.h > +++ b/target/ppc/cpu.h > @@ -2733,4 +2733,43 @@ void dump_mmu(CPUPPCState *env); > void ppc_maybe_bswap_register(CPUPPCState *env, uint8_t *mem_buf, int len); > void ppc_store_vscr(CPUPPCState *env, uint32_t vscr); > uint32_t ppc_get_vscr(CPUPPCState *env); > + > +/*****************************************************************************/ > +/* Power management enable checks > */ > +static inline int check_pow_none(CPUPPCState *env) > +{ > + return 0; > +} > + > +static inline int check_pow_nocheck(CPUPPCState *env) > +{ > + return 1; > +} > + > +/*****************************************************************************/ > +/* PowerPC implementations definitions > */ > + > +#define POWERPC_FAMILY(_name) \ > + static void \ > + glue(glue(ppc_, _name), _cpu_family_class_init)(ObjectClass *, void *); \ > + \ > + static const TypeInfo \ > + glue(glue(ppc_, _name), _cpu_family_type_info) = { \ > + .name = stringify(_name) "-family-" TYPE_POWERPC_CPU, \ > + .parent = TYPE_POWERPC_CPU, \ > + .abstract = true, \ > + .class_init = glue(glue(ppc_, _name), _cpu_family_class_init), \ > + }; \ > + \ > + static void glue(glue(ppc_, _name), _cpu_family_register_types)(void) \ > + { \ > + type_register_static( \ > + &glue(glue(ppc_, _name), _cpu_family_type_info)); \ > + } \ > + \ > + type_init(glue(glue(ppc_, _name), _cpu_family_register_types)) \ > + \ > + static void glue(glue(ppc_, _name), _cpu_family_class_init) > + > + > #endif /* PPC_CPU_H */ > diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c > index 4c6b462cad..5bbbcceb55 100644 > --- a/target/ppc/cpu_init.c > +++ b/target/ppc/cpu_init.c > @@ -2484,18 +2484,6 @@ static void init_excp_POWER10(CPUPPCState *env) > > #endif > > -/*****************************************************************************/ > -/* Power management enable checks > */ > -static int check_pow_none(CPUPPCState *env) > -{ > - return 0; > -} > - > -static int check_pow_nocheck(CPUPPCState *env) > -{ > - return 1; > -} > - > static int check_pow_hid0(CPUPPCState *env) > { > if (env->spr[SPR_HID0] & 0x00E00000) { > @@ -2514,31 +2502,6 @@ static int check_pow_hid0_74xx(CPUPPCState *env) > return 0; > } > > -/*****************************************************************************/ > -/* PowerPC implementations definitions > */ > - > -#define POWERPC_FAMILY(_name) \ > - static void \ > - glue(glue(ppc_, _name), _cpu_family_class_init)(ObjectClass *, void *); \ > - \ > - static const TypeInfo \ > - glue(glue(ppc_, _name), _cpu_family_type_info) = { \ > - .name = stringify(_name) "-family-" TYPE_POWERPC_CPU, \ > - .parent = TYPE_POWERPC_CPU, \ > - .abstract = true, \ > - .class_init = glue(glue(ppc_, _name), _cpu_family_class_init), \ > - }; \ > - \ > - static void glue(glue(ppc_, _name), _cpu_family_register_types)(void) \ > - { \ > - type_register_static( \ > - &glue(glue(ppc_, _name), _cpu_family_type_info)); \ > - } \ > - \ > - type_init(glue(glue(ppc_, _name), _cpu_family_register_types)) \ > - \ > - static void glue(glue(ppc_, _name), _cpu_family_class_init) > - > static void init_proc_405(CPUPPCState *env) > { > register_40x_sprs(env); -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature