1 /* SPDX-License-Identifier: BSD-2-Clause */ 2 /* 3 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. 4 */ 5 6 #ifndef __PTA_QCOM_PAS_H 7 #define __PTA_QCOM_PAS_H 8 9 #include <stdint.h> 10 #include <util.h> 11 12 /* 13 * Interface to the pseudo TA which provides platform implementation 14 * of the remote processor management 15 */ 16 17 #define PTA_QCOM_PAS_UUID { 0xdaedbae4, 0xcf3e, 0x4b76, \ 18 { 0xa5, 0xc5, 0xdb, 0xf8, 0xb6, 0xfd, 0x5a, 0xf4} } 19 20 /* 21 * Peripheral Authentication Service (PAS) supported. 22 * 23 * [in] params[0].value.a: Unique 32bit remote processor identifier 24 */ 25 #define PTA_QCOM_PAS_IS_SUPPORTED 1 26 27 /* 28 * PAS capabilities. 29 * 30 * [in] params[0].value.a: Unique 32bit remote processor identifier 31 * [out] params[1].value.a: PAS capability flags 32 */ 33 #define PTA_QCOM_PAS_CAPABILITIES 2 34 35 /* 36 * PAS image initialization. 37 * 38 * [in] params[0].value.a: Unique 32bit remote processor identifier 39 * [in] params[1].memref: Loadable firmware metadata 40 */ 41 #define PTA_QCOM_PAS_INIT_IMAGE 3 42 43 /* 44 * PAS memory setup. 45 * 46 * [in] params[0].value.a: Unique 32bit remote processor identifier 47 * [in] params[0].value.b: Relocatable firmware size 48 * [in] params[1].value.a: 32bit LSB relocatable firmware memory address 49 * [in] params[1].value.b: 32bit MSB relocatable firmware memory address 50 */ 51 #define PTA_QCOM_PAS_MEM_SETUP 4 52 53 /* 54 * PAS get resource table. 55 * 56 * [in] params[0].value.a: Unique 32bit remote processor identifier 57 * [in/out] params[1].memref: Resource table config 58 */ 59 #define PTA_QCOM_PAS_GET_RESOURCE_TABLE 5 60 61 /* 62 * PAS image authentication and co-processor reset. 63 * 64 * [in] params[0].value.a: Unique 32bit remote processor identifier 65 * [in] params[0].value.b: Firmware size 66 * [in] params[1].value.a: 32bit LSB firmware memory address 67 * [in] params[1].value.b: 32bit MSB firmware memory address 68 * [in] params[2].memref: Optional fw memory space shared/lent 69 */ 70 #define PTA_QCOM_PAS_AUTH_AND_RESET 6 71 72 /* 73 * PAS co-processor set suspend/resume state. 74 * 75 * [in] params[0].value.a: Unique 32bit remote processor identifier 76 * [in] params[0].value.b: Co-processor state identifier 77 */ 78 #define PTA_QCOM_PAS_SET_REMOTE_STATE 7 79 80 /* 81 * PAS co-processor shutdown. 82 * 83 * [in] params[0].value.a: Unique 32bit remote processor identifier 84 */ 85 #define PTA_QCOM_PAS_SHUTDOWN 8 86 87 #endif /* __PTA_QCOM_REMOTEPROC_H */ 88