root/drivers/irqchip/irq-gic-common.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  * Copyright (C) 2002 ARM Limited, All Rights Reserved.
   4  */
   5 
   6 #ifndef _IRQ_GIC_COMMON_H
   7 #define _IRQ_GIC_COMMON_H
   8 
   9 #include <linux/of.h>
  10 #include <linux/irqdomain.h>
  11 #include <linux/irqchip/arm-gic-common.h>
  12 
  13 struct gic_quirk {
  14         const char *desc;
  15         const char *compatible;
  16         bool (*init)(void *data);
  17         u32 iidr;
  18         u32 mask;
  19 };
  20 
  21 int gic_configure_irq(unsigned int irq, unsigned int type,
  22                        void __iomem *base, void (*sync_access)(void));
  23 void gic_dist_config(void __iomem *base, int gic_irqs,
  24                      void (*sync_access)(void));
  25 void gic_cpu_config(void __iomem *base, int nr, void (*sync_access)(void));
  26 void gic_enable_quirks(u32 iidr, const struct gic_quirk *quirks,
  27                 void *data);
  28 void gic_enable_of_quirks(const struct device_node *np,
  29                           const struct gic_quirk *quirks, void *data);
  30 
  31 void gic_set_kvm_info(const struct gic_kvm_info *info);
  32 
  33 #endif /* _IRQ_GIC_COMMON_H */

/* [<][>][^][v][top][bottom][index][help] */