Initialise cpu ops after enabling data cache
The cpu-ops pointer was initialized before enabling the data cache in the cold
and warm boot paths. This required a DCIVAC cache maintenance operation to
invalidate any stale cache lines resident in other cpus.

This patch moves this initialization to the bl31_arch_setup() function
which is always called after the data cache and MMU has been enabled.

This change removes the need:
 1. for the DCIVAC cache maintenance operation.
 2. to initialise the CPU ops upon resumption from a PSCI CPU_SUSPEND
    call since memory contents are always preserved in this case.

Change-Id: Ibb2fa2f7460d1a1f1e721242025e382734c204c6
1 parent 5930ead commit 12e7c4ab0bbc9d9d4e950bdbda5a86f61c13bc1a
@Vikram Kanigiri Vikram Kanigiri authored on 29 Jan 2015
Showing 5 changed files
View
bl31/aarch64/bl31_arch_setup.c
View
bl31/aarch64/bl31_entrypoint.S
View
include/bl31/cpu_data.h
View
lib/cpus/aarch64/cpu_helpers.S
View
services/std_svc/psci/psci_entry.S