diff options
| author | davidcunado-arm <david.cunado@arm.com> | 2017-12-24 10:58:53 +0000 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-12-24 10:58:53 +0000 | 
| commit | ac4626dc4845a82aa0a86c92134bbd996eaf0357 (patch) | |
| tree | 25e361edadc2b43c7a1a2415adf78968824d7fbe | |
| parent | 3c95ea01a263eeb82a7139b260fc7549c387533b (diff) | |
| parent | 7bdf0c1ffab9de48b9e3c7f6959818badbffc232 (diff) | |
Merge pull request #1201 from jeenu-arm/sdei-plat-events
ARM platforms: Allow platforms to define SDEI events
| -rw-r--r-- | include/plat/arm/common/arm_def.h | 11 | ||||
| -rw-r--r-- | plat/arm/board/fvp/include/platform_def.h | 3 | ||||
| -rw-r--r-- | plat/arm/board/juno/include/platform_def.h | 3 | ||||
| -rw-r--r-- | plat/arm/common/aarch64/arm_sdei.c | 19 | 
4 files changed, 22 insertions, 14 deletions
| diff --git a/include/plat/arm/common/arm_def.h b/include/plat/arm/common/arm_def.h index 78875259..f38c357b 100644 --- a/include/plat/arm/common/arm_def.h +++ b/include/plat/arm/common/arm_def.h @@ -491,4 +491,15 @@  #define ARM_SDEI_DS_EVENT_1		2001  #define ARM_SDEI_DS_EVENT_2		2002 +#define ARM_SDEI_PRIVATE_EVENTS \ +	SDEI_DEFINE_EVENT_0(ARM_SDEI_SGI), \ +	SDEI_PRIVATE_EVENT(ARM_SDEI_DP_EVENT_0, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), \ +	SDEI_PRIVATE_EVENT(ARM_SDEI_DP_EVENT_1, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), \ +	SDEI_PRIVATE_EVENT(ARM_SDEI_DP_EVENT_2, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC) + +#define ARM_SDEI_SHARED_EVENTS \ +	SDEI_SHARED_EVENT(ARM_SDEI_DS_EVENT_0, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), \ +	SDEI_SHARED_EVENT(ARM_SDEI_DS_EVENT_1, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), \ +	SDEI_SHARED_EVENT(ARM_SDEI_DS_EVENT_2, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC) +  #endif /* __ARM_DEF_H__ */ diff --git a/plat/arm/board/fvp/include/platform_def.h b/plat/arm/board/fvp/include/platform_def.h index 7080fc30..4ac08504 100644 --- a/plat/arm/board/fvp/include/platform_def.h +++ b/plat/arm/board/fvp/include/platform_def.h @@ -146,4 +146,7 @@  #define PLAT_ARM_G0_IRQ_PROPS(grp)	ARM_G0_IRQ_PROPS(grp) +#define PLAT_ARM_PRIVATE_SDEI_EVENTS	ARM_SDEI_PRIVATE_EVENTS +#define PLAT_ARM_SHARED_SDEI_EVENTS	ARM_SDEI_SHARED_EVENTS +  #endif /* __PLATFORM_DEF_H__ */ diff --git a/plat/arm/board/juno/include/platform_def.h b/plat/arm/board/juno/include/platform_def.h index e475ece5..cac47f72 100644 --- a/plat/arm/board/juno/include/platform_def.h +++ b/plat/arm/board/juno/include/platform_def.h @@ -238,4 +238,7 @@  /* CSS SoC NIC-400 Global Programmers View (GPV) */  #define PLAT_SOC_CSS_NIC400_BASE	0x2a000000 +#define PLAT_ARM_PRIVATE_SDEI_EVENTS	ARM_SDEI_PRIVATE_EVENTS +#define PLAT_ARM_SHARED_SDEI_EVENTS	ARM_SDEI_SHARED_EVENTS +  #endif /* __PLATFORM_DEF_H__ */ diff --git a/plat/arm/common/aarch64/arm_sdei.c b/plat/arm/common/aarch64/arm_sdei.c index 514800c3..687b21d4 100644 --- a/plat/arm/common/aarch64/arm_sdei.c +++ b/plat/arm/common/aarch64/arm_sdei.c @@ -11,23 +11,14 @@  #include <sdei.h>  /* Private event mappings */ -static sdei_ev_map_t arm_private_sdei[] = { -	/* Event 0 */ -	SDEI_DEFINE_EVENT_0(ARM_SDEI_SGI), - -	/* Dynamic private events */ -	SDEI_PRIVATE_EVENT(ARM_SDEI_DP_EVENT_0, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), -	SDEI_PRIVATE_EVENT(ARM_SDEI_DP_EVENT_1, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), -	SDEI_PRIVATE_EVENT(ARM_SDEI_DP_EVENT_2, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), +static sdei_ev_map_t arm_sdei_private[] = { +	PLAT_ARM_PRIVATE_SDEI_EVENTS  };  /* Shared event mappings */ -static sdei_ev_map_t arm_shared_sdei[] = { -	/* Dynamic shared events */ -	SDEI_SHARED_EVENT(ARM_SDEI_DS_EVENT_0, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), -	SDEI_SHARED_EVENT(ARM_SDEI_DS_EVENT_1, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), -	SDEI_SHARED_EVENT(ARM_SDEI_DS_EVENT_2, SDEI_DYN_IRQ, SDEI_MAPF_DYNAMIC), +static sdei_ev_map_t arm_sdei_shared[] = { +	PLAT_ARM_SHARED_SDEI_EVENTS  };  /* Export ARM SDEI events */ -REGISTER_SDEI_MAP(arm_private_sdei, arm_shared_sdei); +REGISTER_SDEI_MAP(arm_sdei_private, arm_sdei_shared); | 
