1*54fd6939SJiyong Park/* 2*54fd6939SJiyong Park * Copyright (c) 2013-2020, ARM Limited and Contributors. All rights reserved. 3*54fd6939SJiyong Park * 4*54fd6939SJiyong Park * SPDX-License-Identifier: BSD-3-Clause 5*54fd6939SJiyong Park */ 6*54fd6939SJiyong Park 7*54fd6939SJiyong Park#include <asm_macros.S> 8*54fd6939SJiyong Park#include <bl32/tsp/tsp.h> 9*54fd6939SJiyong Park 10*54fd6939SJiyong Park .globl tsp_get_magic 11*54fd6939SJiyong Park 12*54fd6939SJiyong Park/* 13*54fd6939SJiyong Park * This function raises an SMC to retrieve arguments from secure 14*54fd6939SJiyong Park * monitor/dispatcher, saves the returned arguments the array received in x0, 15*54fd6939SJiyong Park * and then returns to the caller 16*54fd6939SJiyong Park */ 17*54fd6939SJiyong Parkfunc tsp_get_magic 18*54fd6939SJiyong Park /* Load arguments */ 19*54fd6939SJiyong Park ldr w0, _tsp_fid_get_magic 20*54fd6939SJiyong Park 21*54fd6939SJiyong Park /* Raise SMC */ 22*54fd6939SJiyong Park smc #0 23*54fd6939SJiyong Park 24*54fd6939SJiyong Park /* Return arguments in x1:x0 */ 25*54fd6939SJiyong Park ret 26*54fd6939SJiyong Parkendfunc tsp_get_magic 27*54fd6939SJiyong Park 28*54fd6939SJiyong Park .align 2 29*54fd6939SJiyong Park_tsp_fid_get_magic: 30*54fd6939SJiyong Park .word TSP_GET_ARGS 31