summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authordp-arm <dimitris.papastamos@arm.com>2016-09-09 11:39:09 +0100
committerdp-arm <dimitris.papastamos@arm.com>2016-09-14 11:41:41 +0100
commit2d84b46e96124d1d4953e25d70980263163dc90a (patch)
tree1f5cefb499b9a4a11e64822c09a70304c57fcaa6 /include
parent77b05323921c23e4261ddd8fee5c326a79b0af97 (diff)
Ensure PMF service timestamps are properly aligned on a cache line boundary
When using more than a single service in PMF, it is necessary that the per-service timestamps begin on a cache line boundary. Previously it was possible that two services shared a cache line for their timestamps. This made it difficult to reason about cache maintenance operations within a single service and required a global understanding of how all services operate. Change-Id: Iacaae5154a7e19ad4107468e56df9ad082ee371c
Diffstat (limited to 'include')
-rw-r--r--include/lib/pmf/pmf_helpers.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/lib/pmf/pmf_helpers.h b/include/lib/pmf/pmf_helpers.h
index 9be6050f..bb4242c1 100644
--- a/include/lib/pmf/pmf_helpers.h
+++ b/include/lib/pmf/pmf_helpers.h
@@ -71,7 +71,9 @@ typedef struct pmf_svc_desc {
*/
#define PMF_ALLOCATE_TIMESTAMP_MEMORY(_name, _total_id) \
unsigned long long pmf_ts_mem_ ## _name[_total_id] \
- __section("pmf_timestamp_array") __used;
+ __aligned(CACHE_WRITEBACK_GRANULE) \
+ __section("pmf_timestamp_array") \
+ __used;
/*
* Convenience macro to validate tid index for the given TS array.