#include <lunaix/types.h>
#include <lunaix/ds/bitmap.h>
#include <lunaix/ds/hashtable.h>
+
+#include <hal/devtree.h>
+
#include <asm/aa64_gic.h>
#include <asm-generic/isrm.h>
enum gic_tri_type trigger;
enum gic_grp_type group;
unsigned int priority;
+ unsigned int rel_intid;
int cpu_id;
bool as_nmi;
bool ext_range;
} mmrs;
struct {
- union {
- ptr_t prop;
- lpi_entry_t* property;
- };
+ ptr_t prop_pa;
+ lpi_entry_t* prop_table;
ptr_t pend;
BITMAP(gic_bmp) pendings;
} idomain;
};
+void
+gic_create_from_dt(struct arm_gic* gic);
+
+unsigned int;
+gic_dtprop_interpret(struct gic_int_param* param,
+ struct dt_prop_val* val, int width);
+
#endif /* __LUNAIX_GIC_H */