65b4c8c759
Fix 'Identifer' -> 'Identifier' typo. Cc: Laurent Vivier <laurent@vivier.eu> Fixes:8c6df16ff6
("hw/char: add goldfish-tty") Fixes:8785559390
("hw/intc: add goldfish-pic") Fixes:2fde99ee31
("m68k: add an interrupt controller") Fixes:0791bc02b8
("m68k: add a system controller") Fixes:e1cecdca55
("m68k: add Virtual M68k Machine") Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20211103105311.3399293-1-f4bug@amsat.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
42 lines
832 B
C
42 lines
832 B
C
/*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
|
*
|
|
* QEMU Motorola 680x0 IRQ Controller
|
|
*
|
|
* (c) 2020 Laurent Vivier <laurent@vivier.eu>
|
|
*
|
|
*/
|
|
|
|
#ifndef M68K_IRQC_H
|
|
#define M68K_IRQC_H
|
|
|
|
#include "hw/sysbus.h"
|
|
|
|
#define TYPE_M68K_IRQC "m68k-irq-controller"
|
|
#define M68K_IRQC(obj) OBJECT_CHECK(M68KIRQCState, (obj), \
|
|
TYPE_M68K_IRQC)
|
|
|
|
#define M68K_IRQC_AUTOVECTOR_BASE 25
|
|
|
|
enum {
|
|
M68K_IRQC_LEVEL_1 = 0,
|
|
M68K_IRQC_LEVEL_2,
|
|
M68K_IRQC_LEVEL_3,
|
|
M68K_IRQC_LEVEL_4,
|
|
M68K_IRQC_LEVEL_5,
|
|
M68K_IRQC_LEVEL_6,
|
|
M68K_IRQC_LEVEL_7,
|
|
};
|
|
#define M68K_IRQC_LEVEL_NUM (M68K_IRQC_LEVEL_7 - M68K_IRQC_LEVEL_1 + 1)
|
|
|
|
typedef struct M68KIRQCState {
|
|
SysBusDevice parent_obj;
|
|
|
|
uint8_t ipr;
|
|
|
|
/* statistics */
|
|
uint64_t stats_irq_count[M68K_IRQC_LEVEL_NUM];
|
|
} M68KIRQCState;
|
|
|
|
#endif
|