Jelajahi Sumber

ppc4xx: Export ECB and PLB emulation

Make these device models available outside ppc405_uc.c for reuse in
460EX emulation. They are left in their current place for now because
they are used mostly unchanged and I'm not sure these correctly model
the components in 440 SoCs (but they seem to be good enough). These
functions could be moved in a subsequent clean up series when this is
confirmed.

Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
BALATON Zoltan 8 tahun lalu
induk
melakukan
97c2acb550
2 mengubah file dengan 5 tambahan dan 2 penghapusan
  1. 3 0
      hw/ppc/ppc405.h
  2. 2 2
      hw/ppc/ppc405_uc.c

+ 3 - 0
hw/ppc/ppc405.h

@@ -59,6 +59,9 @@ struct ppc4xx_bd_info_t {
 ram_addr_t ppc405_set_bootinfo (CPUPPCState *env, ppc4xx_bd_info_t *bd,
 ram_addr_t ppc405_set_bootinfo (CPUPPCState *env, ppc4xx_bd_info_t *bd,
                                 uint32_t flags);
                                 uint32_t flags);
 
 
+void ppc4xx_plb_init(CPUPPCState *env);
+void ppc405_ebc_init(CPUPPCState *env);
+
 CPUPPCState *ppc405cr_init(MemoryRegion *address_space_mem,
 CPUPPCState *ppc405cr_init(MemoryRegion *address_space_mem,
                         MemoryRegion ram_memories[4],
                         MemoryRegion ram_memories[4],
                         hwaddr ram_bases[4],
                         hwaddr ram_bases[4],

+ 2 - 2
hw/ppc/ppc405_uc.c

@@ -174,7 +174,7 @@ static void ppc4xx_plb_reset (void *opaque)
     plb->besr = 0x00000000;
     plb->besr = 0x00000000;
 }
 }
 
 
-static void ppc4xx_plb_init(CPUPPCState *env)
+void ppc4xx_plb_init(CPUPPCState *env)
 {
 {
     ppc4xx_plb_t *plb;
     ppc4xx_plb_t *plb;
 
 
@@ -585,7 +585,7 @@ static void ebc_reset (void *opaque)
     ebc->cfg = 0x80400000;
     ebc->cfg = 0x80400000;
 }
 }
 
 
-static void ppc405_ebc_init(CPUPPCState *env)
+void ppc405_ebc_init(CPUPPCState *env)
 {
 {
     ppc4xx_ebc_t *ebc;
     ppc4xx_ebc_t *ebc;