Use a vector table for TSP entrypoints
The TSP has a number of entrypoints used by the TSP on different
occasions. These were provided to the TSPD as a table of function
pointers, and required the TSPD to read the entry in the table,
which is in TSP memory, in order to program the exception return
address.

Ideally, the TSPD has no access to the TSP memory.

This patch changes the table of function pointers into a vector
table of single instruction entrypoints. This allows the TSPD to
calculate the entrypoint address instead of read it.

Fixes ARM-software/tf-issues#160

Change-Id: Iec6e055d537ade78a45799fbc6f43765a4725ad3
1 parent f4d5866 commit f69aa6b23c9609665bf5c253ff73bcde68ce7b05
@Andrew Thoelke Andrew Thoelke authored on 20 May 2014
Showing 6 changed files
View
bl32/tsp/aarch64/tsp_entrypoint.S
View
bl32/tsp/tsp_main.c
View
include/bl32/payloads/tsp.h
View
services/spd/tspd/tspd_main.c
View
services/spd/tspd/tspd_pm.c
View
services/spd/tspd/tspd_private.h