Message ID | 20180209143937.28866-8-andre.przywara@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | New VGIC(-v2) implementation | expand |
Hi, On 02/09/2018 02:38 PM, Andre Przywara wrote: > The prototype for gic_remove_from_lr_pending() is the last function in > gic.h which references a VGIC data structure. > Move it over to vgic.h, so that we can remove the inclusion of vgic.h > from gic.h. We add it to asm/domain.h instead, where it is actually > needed. > > Signed-off-by: Andre Przywara <andre.przywara@linaro.org> Reviewed-by: Julien Grall <julien.grall@arm.com> > --- > xen/include/asm-arm/domain.h | 1 + > xen/include/asm-arm/gic.h | 2 -- > xen/include/asm-arm/vgic.h | 1 + > 3 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h > index 3eda7196ff..1dd9683d25 100644 > --- a/xen/include/asm-arm/domain.h > +++ b/xen/include/asm-arm/domain.h > @@ -8,6 +8,7 @@ > #include <asm/vfp.h> > #include <asm/mmio.h> > #include <asm/gic.h> > +#include <asm/vgic.h> > #include <public/hvm/params.h> > #include <xen/serial.h> > #include <xen/rbtree.h> > diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h > index 497f195bc1..1d382b0ade 100644 > --- a/xen/include/asm-arm/gic.h > +++ b/xen/include/asm-arm/gic.h > @@ -156,7 +156,6 @@ > #ifndef __ASSEMBLY__ > #include <xen/device_tree.h> > #include <xen/irq.h> > -#include <asm-arm/vgic.h> > > #define DT_COMPAT_GIC_CORTEX_A15 "arm,cortex-a15-gic" > > @@ -245,7 +244,6 @@ extern void init_maintenance_interrupt(void); > extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, > unsigned int priority); > extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); > -extern void gic_remove_from_lr_pending(struct vcpu *v, struct pending_irq *p); > > /* Accept an interrupt from the GIC and dispatch its handler */ > extern void gic_interrupt(struct cpu_user_regs *regs, int is_fiq); > diff --git a/xen/include/asm-arm/vgic.h b/xen/include/asm-arm/vgic.h > index d61b54867b..d03298e12c 100644 > --- a/xen/include/asm-arm/vgic.h > +++ b/xen/include/asm-arm/vgic.h > @@ -205,6 +205,7 @@ extern struct vcpu *vgic_get_target_vcpu(struct vcpu *v, unsigned int virq); > extern void vgic_vcpu_inject_irq(struct vcpu *v, unsigned int virq); > extern void vgic_vcpu_inject_spi(struct domain *d, unsigned int virq); > extern void vgic_remove_irq_from_queues(struct vcpu *v, struct pending_irq *p); > +extern void gic_remove_from_lr_pending(struct vcpu *v, struct pending_irq *p); > extern void vgic_clear_pending_irqs(struct vcpu *v); > extern void vgic_init_pending_irq(struct pending_irq *p, unsigned int virq); > extern struct pending_irq *irq_to_pending(struct vcpu *v, unsigned int irq); > Cheers,
diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h index 3eda7196ff..1dd9683d25 100644 --- a/xen/include/asm-arm/domain.h +++ b/xen/include/asm-arm/domain.h @@ -8,6 +8,7 @@ #include <asm/vfp.h> #include <asm/mmio.h> #include <asm/gic.h> +#include <asm/vgic.h> #include <public/hvm/params.h> #include <xen/serial.h> #include <xen/rbtree.h> diff --git a/xen/include/asm-arm/gic.h b/xen/include/asm-arm/gic.h index 497f195bc1..1d382b0ade 100644 --- a/xen/include/asm-arm/gic.h +++ b/xen/include/asm-arm/gic.h @@ -156,7 +156,6 @@ #ifndef __ASSEMBLY__ #include <xen/device_tree.h> #include <xen/irq.h> -#include <asm-arm/vgic.h> #define DT_COMPAT_GIC_CORTEX_A15 "arm,cortex-a15-gic" @@ -245,7 +244,6 @@ extern void init_maintenance_interrupt(void); extern void gic_raise_guest_irq(struct vcpu *v, unsigned int irq, unsigned int priority); extern void gic_raise_inflight_irq(struct vcpu *v, unsigned int virtual_irq); -extern void gic_remove_from_lr_pending(struct vcpu *v, struct pending_irq *p); /* Accept an interrupt from the GIC and dispatch its handler */ extern void gic_interrupt(struct cpu_user_regs *regs, int is_fiq); diff --git a/xen/include/asm-arm/vgic.h b/xen/include/asm-arm/vgic.h index d61b54867b..d03298e12c 100644 --- a/xen/include/asm-arm/vgic.h +++ b/xen/include/asm-arm/vgic.h @@ -205,6 +205,7 @@ extern struct vcpu *vgic_get_target_vcpu(struct vcpu *v, unsigned int virq); extern void vgic_vcpu_inject_irq(struct vcpu *v, unsigned int virq); extern void vgic_vcpu_inject_spi(struct domain *d, unsigned int virq); extern void vgic_remove_irq_from_queues(struct vcpu *v, struct pending_irq *p); +extern void gic_remove_from_lr_pending(struct vcpu *v, struct pending_irq *p); extern void vgic_clear_pending_irqs(struct vcpu *v); extern void vgic_init_pending_irq(struct pending_irq *p, unsigned int virq); extern struct pending_irq *irq_to_pending(struct vcpu *v, unsigned int irq);
The prototype for gic_remove_from_lr_pending() is the last function in gic.h which references a VGIC data structure. Move it over to vgic.h, so that we can remove the inclusion of vgic.h from gic.h. We add it to asm/domain.h instead, where it is actually needed. Signed-off-by: Andre Przywara <andre.przywara@linaro.org> --- xen/include/asm-arm/domain.h | 1 + xen/include/asm-arm/gic.h | 2 -- xen/include/asm-arm/vgic.h | 1 + 3 files changed, 2 insertions(+), 2 deletions(-)