Remove platform dependency in CCI-400 driver
* Create cci_init() function in CCI-400 driver to allow platform
to provide arguments needed by the driver (i.e. base address
and cluster indices for the ACE slave interfaces).
* Rename cci_(en|dis)able_coherency to
cci_(en|dis)able_cluster_coherency to make it clear that
the driver only enables/disables the coherency of CPU
clusters and not other devices connected to the CCI-400.
* Update FVP port to use new cci_init() function and remove
unnecessary CCI defintions from platform_def.h. Also rename
fvp_cci_setup() to fvp_cci_enable() to more clearly
differentiate between CCI initialization and enabling.
THIS CHANGE REQUIRES PLATFORM PORTS THAT USE THE CCI-400 DRIVER
TO BE UPDATED
Fixes ARM-software/tf-issues#168
Change-Id: I1946a51409b91217b92285b6375082619f607fec
diff --git a/plat/fvp/fvp_pm.c b/plat/fvp/fvp_pm.c
index 82a663b..b7e49a2 100644
--- a/plat/fvp/fvp_pm.c
+++ b/plat/fvp/fvp_pm.c
@@ -140,7 +140,7 @@
* turned off
*/
if (get_plat_config()->flags & CONFIG_HAS_CCI)
- cci_disable_coherency(mpidr);
+ cci_disable_cluster_coherency(mpidr);
/*
* Program the power controller to turn the
@@ -215,7 +215,7 @@
* turned off
*/
if (get_plat_config()->flags & CONFIG_HAS_CCI)
- cci_disable_coherency(mpidr);
+ cci_disable_cluster_coherency(mpidr);
/*
* Program the power controller to turn the
@@ -302,7 +302,7 @@
*/
fvp_pwrc_write_pponr(mpidr);
- fvp_cci_setup();
+ fvp_cci_enable();
}
break;