path: root/plat/fvp/platform.h
diff options
authorAchin Gupta <achin.gupta@arm.com>2014-05-04 19:02:52 +0100
committerAchin Gupta <achin.gupta@arm.com>2014-05-22 17:47:19 +0100
commitdcc1816c91a63e959330d3a05bb085d0c77fb69a (patch)
tree33be23dba0b92d7296610664b942446c47131c59 /plat/fvp/platform.h
parente1333f753f2760499ceed5c2d8f816574c3feb02 (diff)
Introduce platform api to access an ARM GIC
This patch introduces a set of functions which allow generic firmware code e.g. the interrupt management framework to access the platform interrupt controller. APIs for finding the type and id of the highest pending interrupt, acknowledging and EOIing an interrupt and finding the security state of an interrupt have been added. It is assumed that the platform interrupt controller implements the v2.0 of the ARM GIC architecture specification. Support for v3.0 of the specification for managing interrupts in EL3 and the platform port will be added in the future. Change-Id: Ib3a01c2cf3e3ab27806930f1be79db2b29f91bcf
Diffstat (limited to 'plat/fvp/platform.h')
1 files changed, 7 insertions, 2 deletions
diff --git a/plat/fvp/platform.h b/plat/fvp/platform.h
index 814fb77..9b85b23 100644
--- a/plat/fvp/platform.h
+++ b/plat/fvp/platform.h
@@ -425,7 +425,12 @@ extern void plat_get_entry_point_info(unsigned long target_security,
extern void fvp_cci_setup(void);
-/* Declarations for fvp_gic.c */
+/* Declarations for plat_gic.c */
+extern uint32_t ic_get_pending_interrupt_id(void);
+extern uint32_t ic_get_pending_interrupt_type(void);
+extern uint32_t ic_acknowledge_interrupt(void);
+extern uint32_t ic_get_interrupt_type(uint32_t id);
+extern void ic_end_of_interrupt(uint32_t id);
extern void gic_cpuif_deactivate(unsigned int);
extern void gic_cpuif_setup(unsigned int);
extern void gic_pcpu_distif_setup(unsigned int);
@@ -433,7 +438,7 @@ extern void gic_setup(void);
extern uint32_t plat_interrupt_type_to_line(uint32_t type,
uint32_t security_state);
-/* Declarations for fvp_topology.c */
+/* Declarations for plat_topology.c */
extern int plat_setup_topology(void);
extern int plat_get_max_afflvl(void);
extern unsigned int plat_get_aff_count(unsigned int, unsigned long);