2016-04-11 23:32:54 +08:00
|
|
|
/*
|
|
|
|
* include/linux/irqchip/arm-gic-common.h
|
|
|
|
*
|
|
|
|
* Copyright (C) 2016 ARM Limited, All Rights Reserved.
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
|
|
* published by the Free Software Foundation.
|
|
|
|
*/
|
|
|
|
#ifndef __LINUX_IRQCHIP_ARM_GIC_COMMON_H
|
|
|
|
#define __LINUX_IRQCHIP_ARM_GIC_COMMON_H
|
|
|
|
|
|
|
|
#include <linux/types.h>
|
|
|
|
#include <linux/ioport.h>
|
|
|
|
|
|
|
|
enum gic_type {
|
|
|
|
GIC_V2,
|
2016-04-11 23:32:57 +08:00
|
|
|
GIC_V3,
|
2016-04-11 23:32:54 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
struct gic_kvm_info {
|
|
|
|
/* GIC type */
|
|
|
|
enum gic_type type;
|
|
|
|
/* Virtual CPU interface */
|
|
|
|
struct resource vcpu;
|
|
|
|
/* Interrupt number */
|
|
|
|
unsigned int maint_irq;
|
|
|
|
/* Virtual control interface */
|
|
|
|
struct resource vctrl;
|
2017-06-25 21:10:46 +08:00
|
|
|
/* vlpi support */
|
|
|
|
bool has_v4;
|
2016-04-11 23:32:54 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
const struct gic_kvm_info *gic_get_kvm_info(void);
|
|
|
|
|
|
|
|
#endif /* __LINUX_IRQCHIP_ARM_GIC_COMMON_H */
|