Rework use of interconnect drivers
ARM Trusted Firmware supports 2 different interconnect peripheral drivers: CCI and CCN. ARM platforms are implemented using either of the interconnect peripherals. This patch adds a layer of abstraction to help ARM platform ports to choose the right interconnect driver and corresponding platform support. This is as described below: 1. A set of ARM common functions have been implemented to initialise an interconnect and for entering/exiting a cluster from coherency. These functions are prefixed as "plat_arm_interconnect_". Weak definitions of these functions have been provided for each type of driver. 2.`plat_print_interconnect_regs` macro used for printing CCI registers is moved from a common arm_macros.S to cci_macros.S. 3. The `ARM_CONFIG_HAS_CCI` flag used in `arm_config_flags` structure is renamed to `ARM_CONFIG_HAS_INTERCONNECT`. Change-Id: I02f31184fbf79b784175892d5ce1161b65a0066c |
---|
|
include/plat/arm/common/aarch64/arm_macros.S |
---|
include/plat/arm/common/aarch64/cci_macros.S 0 → 100644 |
---|
include/plat/arm/common/arm_config.h |
---|
include/plat/arm/common/plat_arm.h |
---|
plat/arm/board/fvp/aarch64/fvp_common.c |
---|
plat/arm/board/fvp/fvp_bl1_setup.c |
---|
plat/arm/board/fvp/fvp_bl31_setup.c |
---|
plat/arm/board/fvp/fvp_pm.c |
---|
plat/arm/board/fvp/fvp_private.h |
---|
plat/arm/board/fvp/include/plat_macros.S |
---|
plat/arm/board/fvp/platform.mk |
---|
plat/arm/board/juno/include/plat_macros.S |
---|
plat/arm/board/juno/platform.mk |
---|
plat/arm/common/aarch64/arm_common.c |
---|
plat/arm/common/arm_bl1_setup.c |
---|
plat/arm/common/arm_bl31_setup.c |
---|
plat/arm/common/arm_cci.c 0 → 100644 |
---|
plat/arm/common/arm_ccn.c 0 → 100644 |
---|
plat/arm/common/arm_common.mk |
---|
plat/arm/css/common/css_pm.c |
---|