Age | Commit message (Collapse) | Author |
|
Basically:
$ for f in $(find . -name "*.[ch]"); do indent -linux $f; done
Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
|
|
The virtualization of the L1 instruction cache is introduced by this patch.
The A7 CPU has a VIPT L1 instruction cache with a cache line length of 32 bytes
whereas the A15 CPU has a PIPT L1 instruction cache with a cache line length of
64 bytes.
Virtualization of the L1 instruction cache does not follow the approach of the
already existing virtualization of the data/unified caches where cache
operations are virtualized on the host cluster to use the values of the target
cluster.
Instead, this patch guarantees that for L1 instruction cache operations on the
A15 CPU, the CCSIDR value of the A7 is used.
The ccsidr member of the structure cache_geometry is now a two dimensional
array being able to hold the appropriate values for the instruction and the
data/unified caches.
In order to be able to trap cache identification registers on the A15 CPU,
regardless if it is on the host or target cluster, the TID2 bit in the HCR
register is set in the A15 CPU specific trap setup function a15_trap_handle()
as well as restored in the A15 CPU specific trap restore function
a15_trap_restore(). This is of course only done if the sibling CPU is an A7.
The default CP15 trap function trap_cp15_mrc_mcr_handle(), which runs before
the CPU specific trap functions, sets the L1 instruction cache CCSIDR value
incorrectly on A7 and A15 for Virtualizer configuration [BC=x, TC=A15, HC=A7].
This error is corrected in the A7 or A15 CPU specific trap handle function.
Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
|
|
The function handle_kfscb_abort is called when the virtualizer traps
accesses to the KFSCB from Linux. Right now, it only forwards read and
write accesses to the memory.
Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
|
|
Basically:
$ for f in $(find . -name "*.[ch]"; do indent -linux $f; done
Signed-off-by: Robin Randhawa <robin.randhawa@arm.com>
|
|
CSSELR register.
Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
|
|
Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
|
|
Intended to be the basis for the VSM development.
|
|
This will be the basis for the VSM.
|