xref: /openbmc/qemu/hw/ppc/e500.h (revision 2eaaac1f)
1e6eaabebSScott Wood #ifndef PPCE500_H
2e6eaabebSScott Wood #define PPCE500_H
3e6eaabebSScott Wood 
492238367SMarkus Armbruster #include "hw/boards.h"
592238367SMarkus Armbruster 
6e6eaabebSScott Wood typedef struct PPCE500Params {
7492ec48dSAlexander Graf     int pci_first_slot;
8492ec48dSAlexander Graf     int pci_nr_slots;
9e6eaabebSScott Wood 
10e6eaabebSScott Wood     /* required -- must at least add toplevel board compatible */
11e6eaabebSScott Wood     void (*fixup_devtree)(struct PPCE500Params *params, void *fdt);
12f5fba9d2SScott Wood 
13f5fba9d2SScott Wood     int mpic_version;
14b88e77f4SAlexander Graf     bool has_mpc8xxx_gpio;
15f7087343SAlexander Graf     bool has_platform_bus;
16f7087343SAlexander Graf     hwaddr platform_bus_base;
17f7087343SAlexander Graf     hwaddr platform_bus_size;
18f7087343SAlexander Graf     int platform_bus_first_irq;
19f7087343SAlexander Graf     int platform_bus_num_irqs;
20*2eaaac1fSAlexander Graf     hwaddr ccsrbar_base;
21*2eaaac1fSAlexander Graf     hwaddr pci_pio_base;
22*2eaaac1fSAlexander Graf     hwaddr spin_base;
23e6eaabebSScott Wood } PPCE500Params;
24e6eaabebSScott Wood 
253ef96221SMarcel Apfelbaum void ppce500_init(MachineState *machine, PPCE500Params *params);
26e6eaabebSScott Wood 
27e6eaabebSScott Wood #endif
28