aboutsummaryrefslogtreecommitdiffstats
path: root/include/drivers
diff options
context:
space:
mode:
authorJeenu Viswambharan <jeenu.viswambharan@arm.com>2017-07-19 17:07:00 +0100
committerJeenu Viswambharan <jeenu.viswambharan@arm.com>2017-08-01 14:33:47 +0100
commite33fd44548e41bcfa7bf697a36653e19e410e6c6 (patch)
treea713d900923ebca9e03277edc89e8f5c697af237 /include/drivers
parenteeb9ff9990e67f363fb7ec4ae432a1c88af50339 (diff)
downloadplatform_external_arm-trusted-firmware-e33fd44548e41bcfa7bf697a36653e19e410e6c6.tar.gz
platform_external_arm-trusted-firmware-e33fd44548e41bcfa7bf697a36653e19e410e6c6.tar.bz2
platform_external_arm-trusted-firmware-e33fd44548e41bcfa7bf697a36653e19e410e6c6.zip
CCI: Adapt for specific product at run time
The current build system and driver requires the CCI product to be specified at build time. The device constraints can be determined at run time from its ID registers, obviating the need for specifying them ahead. This patch adds changes to identify and validate CCI at run time. Some global variables are renamed to be in line with the rest of the code base. The build option ARM_CCI_PRODUCT_ID is now removed, and user guide is updated. Change-Id: Ibb765e349d3bc95ff3eb9a64bde1207ab710a93d Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>
Diffstat (limited to 'include/drivers')
-rw-r--r--include/drivers/arm/cci.h16
1 files changed, 3 insertions, 13 deletions
diff --git a/include/drivers/arm/cci.h b/include/drivers/arm/cci.h
index 5ac79c61f..1def6a8f2 100644
--- a/include/drivers/arm/cci.h
+++ b/include/drivers/arm/cci.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2015, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2015-2017, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -98,14 +98,6 @@
#define SLAVE_IF_UNUSED -1
-#if ARM_CCI_PRODUCT_ID == 400
- #define CCI_SLAVE_INTERFACE_COUNT 5
-#elif ARM_CCI_PRODUCT_ID == 500
- #define CCI_SLAVE_INTERFACE_COUNT 7
-#else
- #error "Invalid CCI product or CCI not supported"
-#endif
-
#ifndef __ASSEMBLY__
#include <stdint.h>
@@ -114,7 +106,7 @@
/*
* The ARM CCI driver needs the following:
- * 1. Base address of the CCI-500/CCI-400
+ * 1. Base address of the CCI product
* 2. An array of map between AMBA 4 master ids and ACE/ACE lite slave
* interfaces.
* 3. Size of the array.
@@ -122,9 +114,7 @@
* SLAVE_IF_UNUSED should be used in the map to represent no AMBA 4 master exists
* for that interface.
*/
-void cci_init(uintptr_t cci_base,
- const int *map,
- unsigned int num_cci_masters);
+void cci_init(uintptr_t base, const int *map, unsigned int num_cci_masters);
void cci_enable_snoop_dvm_reqs(unsigned int master_id);
void cci_disable_snoop_dvm_reqs(unsigned int master_id);