diff options
author | danh-arm <dan.handley@arm.com> | 2016-12-20 12:26:23 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-20 12:26:23 +0000 |
commit | 9acdafbccf730179406ce7693772d7f7dcc4ae3c (patch) | |
tree | 3f63845f5abefdcd6a6cc977b1c8acd437dd6832 /plat/arm/common | |
parent | 9e75fddc3a89c1c2fbaf38213e627668271d6af5 (diff) | |
parent | 74a9578c209fc96eaed4ffdd26fd0e5fe94e21a9 (diff) |
Merge pull request #793 from jeenu-arm/gic-changes
GIC driver changes for extended power management
Diffstat (limited to 'plat/arm/common')
-rw-r--r-- | plat/arm/common/arm_gicv2.c | 14 | ||||
-rw-r--r-- | plat/arm/common/arm_gicv3.c | 15 | ||||
-rw-r--r-- | plat/arm/common/arm_gicv3_legacy.c | 14 |
3 files changed, 43 insertions, 0 deletions
diff --git a/plat/arm/common/arm_gicv2.c b/plat/arm/common/arm_gicv2.c index 2636d1c9..1017c9e0 100644 --- a/plat/arm/common/arm_gicv2.c +++ b/plat/arm/common/arm_gicv2.c @@ -97,3 +97,17 @@ void plat_arm_gic_pcpu_init(void) { gicv2_pcpu_distif_init(); } + +/****************************************************************************** + * Stubs for Redistributor power management. Although GICv2 doesn't have + * Redistributor interface, these are provided for the sake of uniform GIC API + *****************************************************************************/ +void plat_arm_gic_redistif_on(void) +{ + return; +} + +void plat_arm_gic_redistif_off(void) +{ + return; +} diff --git a/plat/arm/common/arm_gicv3.c b/plat/arm/common/arm_gicv3.c index ac309f2b..6d68bfbe 100644 --- a/plat/arm/common/arm_gicv3.c +++ b/plat/arm/common/arm_gicv3.c @@ -43,6 +43,8 @@ #pragma weak plat_arm_gic_cpuif_enable #pragma weak plat_arm_gic_cpuif_disable #pragma weak plat_arm_gic_pcpu_init +#pragma weak plat_arm_gic_redistif_on +#pragma weak plat_arm_gic_redistif_off /* The GICv3 driver only needs to be initialized in EL3 */ static uintptr_t rdistif_base_addrs[PLATFORM_CORE_COUNT]; @@ -115,3 +117,16 @@ void plat_arm_gic_pcpu_init(void) { gicv3_rdistif_init(plat_my_core_pos()); } + +/****************************************************************************** + * ARM common helpers to power GIC redistributor interface + *****************************************************************************/ +void plat_arm_gic_redistif_on(void) +{ + gicv3_rdistif_on(plat_my_core_pos()); +} + +void plat_arm_gic_redistif_off(void) +{ + gicv3_rdistif_off(plat_my_core_pos()); +} diff --git a/plat/arm/common/arm_gicv3_legacy.c b/plat/arm/common/arm_gicv3_legacy.c index 8396b600..cbf11fb5 100644 --- a/plat/arm/common/arm_gicv3_legacy.c +++ b/plat/arm/common/arm_gicv3_legacy.c @@ -94,3 +94,17 @@ void plat_arm_gic_pcpu_init(void) { arm_gic_pcpu_distif_setup(); } + +/****************************************************************************** + * Stubs for Redistributor power management. Although legacy configuration isn't + * supported, these are provided for the sake of uniform GIC API + *****************************************************************************/ +void plat_arm_gic_redistif_on(void) +{ + return; +} + +void plat_arm_gic_redistif_off(void) +{ + return; +} |