cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

e500.h (1141B)


      1#ifndef PPCE500_H
      2#define PPCE500_H
      3
      4#include "hw/boards.h"
      5#include "hw/platform-bus.h"
      6#include "qom/object.h"
      7
      8struct PPCE500MachineState {
      9    /*< private >*/
     10    MachineState parent_obj;
     11
     12    /* points to instance of TYPE_PLATFORM_BUS_DEVICE if
     13     * board supports dynamic sysbus devices
     14     */
     15    PlatformBusDevice *pbus_dev;
     16};
     17
     18struct PPCE500MachineClass {
     19    /*< private >*/
     20    MachineClass parent_class;
     21
     22    /* required -- must at least add toplevel board compatible */
     23    void (*fixup_devtree)(void *fdt);
     24
     25    int pci_first_slot;
     26    int pci_nr_slots;
     27
     28    int mpic_version;
     29    bool has_mpc8xxx_gpio;
     30    bool has_platform_bus;
     31    hwaddr platform_bus_base;
     32    hwaddr platform_bus_size;
     33    int platform_bus_first_irq;
     34    int platform_bus_num_irqs;
     35    hwaddr ccsrbar_base;
     36    hwaddr pci_pio_base;
     37    hwaddr pci_mmio_base;
     38    hwaddr pci_mmio_bus_base;
     39    hwaddr spin_base;
     40};
     41
     42void ppce500_init(MachineState *machine);
     43
     44hwaddr booke206_page_size_to_tlb(uint64_t size);
     45
     46#define TYPE_PPCE500_MACHINE      "ppce500-base-machine"
     47OBJECT_DECLARE_TYPE(PPCE500MachineState, PPCE500MachineClass, PPCE500_MACHINE)
     48
     49#endif