qemu/include/hw/intc/bcm2835_ic.h
<<
>>
Prefs
   1/*
   2 * Raspberry Pi emulation (c) 2012 Gregory Estrade
   3 * This code is licensed under the GNU GPLv2 and later.
   4 */
   5
   6#ifndef BCM2835_IC_H
   7#define BCM2835_IC_H
   8
   9#include "hw/sysbus.h"
  10
  11#define TYPE_BCM2835_IC "bcm2835-ic"
  12#define BCM2835_IC(obj) OBJECT_CHECK(BCM2835ICState, (obj), TYPE_BCM2835_IC)
  13
  14#define BCM2835_IC_GPU_IRQ "gpu-irq"
  15#define BCM2835_IC_ARM_IRQ "arm-irq"
  16
  17typedef struct BCM2835ICState {
  18    /*< private >*/
  19    SysBusDevice busdev;
  20    /*< public >*/
  21
  22    MemoryRegion iomem;
  23    qemu_irq irq;
  24    qemu_irq fiq;
  25
  26    /* 64 GPU IRQs + 8 ARM IRQs = 72 total (GPU first) */
  27    uint64_t gpu_irq_level, gpu_irq_enable;
  28    uint8_t arm_irq_level, arm_irq_enable;
  29    bool fiq_enable;
  30    uint8_t fiq_select;
  31} BCM2835ICState;
  32
  33#endif
  34