diff --git a/bl32/tsp/tsp_private.h b/bl32/tsp/tsp_private.h index 4a7acaa..dd65a5f 100644 --- a/bl32/tsp/tsp_private.h +++ b/bl32/tsp/tsp_private.h @@ -106,7 +106,47 @@ /* Vector table of jumps */ extern tsp_vectors_t tsp_vector_table; +/* functions */ +int32_t tsp_common_int_handler(void); +int32_t tsp_handle_preemption(void); +tsp_args_t *tsp_abort_smc_handler(uint64_t func, + uint64_t arg1, + uint64_t arg2, + uint64_t arg3, + uint64_t arg4, + uint64_t arg5, + uint64_t arg6, + uint64_t arg7); + +tsp_args_t *tsp_smc_handler(uint64_t func, + uint64_t arg1, + uint64_t arg2, + uint64_t arg3, + uint64_t arg4, + uint64_t arg5, + uint64_t arg6, + uint64_t arg7); + +tsp_args_t *tsp_system_reset_main(uint64_t arg0, + uint64_t arg1, + uint64_t arg2, + uint64_t arg3, + uint64_t arg4, + uint64_t arg5, + uint64_t arg6, + uint64_t arg7); + +tsp_args_t *tsp_system_off_main(uint64_t arg0, + uint64_t arg1, + uint64_t arg2, + uint64_t arg3, + uint64_t arg4, + uint64_t arg5, + uint64_t arg6, + uint64_t arg7); + +uint64_t tsp_main(void); #endif /* __ASSEMBLY__ */ #endif /* __TSP_PRIVATE_H__ */ diff --git a/plat/arm/board/fvp/fvp_private.h b/plat/arm/board/fvp/fvp_private.h index c5cd07d..16f10a2 100644 --- a/plat/arm/board/fvp/fvp_private.h +++ b/plat/arm/board/fvp/fvp_private.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014-2016, ARM Limited and Contributors. All rights reserved. + * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -18,6 +18,7 @@ void fvp_interconnect_init(void); void fvp_interconnect_enable(void); void fvp_interconnect_disable(void); +void tsp_early_platform_setup(void); #endif /* __FVP_PRIVATE_H__ */ diff --git a/services/spd/tspd/tspd_private.h b/services/spd/tspd/tspd_private.h index a4d72ab..a63daff 100644 --- a/services/spd/tspd/tspd_private.h +++ b/services/spd/tspd/tspd_private.h @@ -221,6 +221,18 @@ tsp_context_t *tsp_ctx); int tspd_abort_preempted_smc(tsp_context_t *tsp_ctx); +uint64_t tspd_smc_handler(uint32_t smc_fid, + uint64_t x1, + uint64_t x2, + uint64_t x3, + uint64_t x4, + void *cookie, + void *handle, + uint64_t flags); + +int32_t tspd_setup(void); +uint64_t tspd_handle_sp_preemption(void *handle); + extern tsp_context_t tspd_sp_context[TSPD_CORE_COUNT]; extern tsp_vectors_t *tsp_vectors; #endif /*__ASSEMBLY__*/