10 #include <sys/types.h> 17 #define __QAIC_REMOTE(ff) ff 20 #ifndef __QAIC_REMOTE_EXPORT 23 #define __QAIC_REMOTE_EXPORT __declspec(dllexport) 24 #elif defined(STATIC_LIB) 25 #define __QAIC_REMOTE_EXPORT 27 #define __QAIC_REMOTE_EXPORT __declspec(dllimport) 30 #define __QAIC_REMOTE_EXPORT 36 #define __QAIC_RETURN _Success_(return == 0) 44 #define __QAIC_IN _In_ 50 #ifndef __QAIC_IN_CHAR 52 #define __QAIC_IN_CHAR _In_z_ 54 #define __QAIC_IN_CHAR 60 #define __QAIC_IN_LEN(len) _Inout_updates_bytes_all_(len) 62 #define __QAIC_IN_LEN(len) 68 #define __QAIC_OUT _Out_ 74 #ifndef __QAIC_INT64PTR 76 #define __QAIC_INT64PTR uintptr_t 78 #define __QAIC_INT64PTR uint64_t 82 #ifndef __QAIC_REMOTE_ATTRIBUTE 83 #define __QAIC_REMOTE_ATTRIBUTE 87 #define REMOTE_SCALARS_METHOD_ATTR(dwScalars) (((dwScalars) >> 29) & 0x7) 90 #define REMOTE_SCALARS_METHOD(dwScalars) (((dwScalars) >> 24) & 0x1f) 93 #define REMOTE_SCALARS_INBUFS(dwScalars) (((dwScalars) >> 16) & 0x0ff) 96 #define REMOTE_SCALARS_OUTBUFS(dwScalars) (((dwScalars) >> 8) & 0x0ff) 99 #define REMOTE_SCALARS_INHANDLES(dwScalars) (((dwScalars) >> 4) & 0x0f) 102 #define REMOTE_SCALARS_OUTHANDLES(dwScalars) ((dwScalars) & 0x0f) 105 #define REMOTE_SCALARS_MAKEX(nAttr,nMethod,nIn,nOut,noIn,noOut) \ 106 ((((uint32_t) (nAttr) & 0x7) << 29) | \ 107 (((uint32_t) (nMethod) & 0x1f) << 24) | \ 108 (((uint32_t) (nIn) & 0xff) << 16) | \ 109 (((uint32_t) (nOut) & 0xff) << 8) | \ 110 (((uint32_t) (noIn) & 0x0f) << 4) | \ 111 ((uint32_t) (noOut) & 0x0f)) 113 #define REMOTE_SCALARS_MAKE(nMethod,nIn,nOut) REMOTE_SCALARS_MAKEX(0,nMethod,nIn,nOut,0,0) 116 #define REMOTE_SCALARS_LENGTH(sc) (REMOTE_SCALARS_INBUFS(sc) +\ 117 REMOTE_SCALARS_OUTBUFS(sc) +\ 118 REMOTE_SCALARS_INHANDLES(sc) +\ 119 REMOTE_SCALARS_OUTHANDLES(sc)) 122 #define ADSP_DOMAIN_ID 0 123 #define MDSP_DOMAIN_ID 1 124 #define SDSP_DOMAIN_ID 2 125 #define CDSP_DOMAIN_ID 3 127 #define CDSP1_DOMAIN_ID 4 131 #define ADSP_DOMAIN_NAME "adsp" 132 #define MDSP_DOMAIN_NAME "mdsp" 133 #define SDSP_DOMAIN_NAME "sdsp" 134 #define CDSP_DOMAIN_NAME "cdsp" 136 #define CDSP1_DOMAIN_NAME "cdsp1" 140 #define ADSP_DOMAIN "&_dom=adsp" 141 #define MDSP_DOMAIN "&_dom=mdsp" 142 #define SDSP_DOMAIN "&_dom=sdsp" 143 #define CDSP_DOMAIN "&_dom=cdsp" 145 #define CDSP1_DOMAIN "&_dom=cdsp1" 149 #define ITRANSPORT_PREFIX "'\":;./\\" 152 #define MAX_DOMAIN_URI_SIZE 12 240 void (*fn)(fastrpc_async_jobid jobid,
void* context,
int result);
349 #define FASTRPC_WAKELOCK_CONTROL_SUPPORTED 1 731 #define FASTRPC_ATTR_NONE 0 732 #define FASTRPC_ATTR_NON_COHERENT 2 734 #define FASTRPC_ATTR_COHERENT 4 737 #define FASTRPC_ATTR_KEEP_MAP 8 739 #define FASTRPC_ATTR_NOMAP 16 741 #define FASTRPC_ATTR_FORCE_NOFLUSH 32 743 #define FASTRPC_ATTR_FORCE_NOINVALIDATE 64 745 #define FASTRPC_ATTR_TRY_MAP_STATIC 128 764 #define REMOTE_MODE_PARALLEL 0 772 #define REMOTE_MODE_SERIAL 1 776 #include "remote_wos_ext.h" int domain
Definition: remote.h:417
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle64_open(__QAIC_IN_CHAR const char *name, __QAIC_OUT remote_handle64 *ph) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle_close(__QAIC_IN remote_handle h) __QAIC_REMOTE_ATTRIBUTE
struct remote_rpc_effective_domain_id remote_rpc_effective_domain_id_t
struct remote_rpc_get_uri remote_rpc_get_uri_t
fastrpc_async_notify_type
Definition: remote.h:227
char uri[MAX_DOMAIN_URI_SIZE]
Definition: remote.h:159
int domain
Definition: remote.h:550
int domain
Definition: remote.h:369
remote_buf buf
Definition: remote.h:205
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle64_control(__QAIC_IN remote_handle64 h, __QAIC_IN uint32_t req, __QAIC_IN_LEN(datalen) void *data, __QAIC_IN uint32_t datalen) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle64_close(__QAIC_IN remote_handle64 h) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle64_invoke_async(__QAIC_IN remote_handle64 h, __QAIC_IN fastrpc_async_descriptor_t *desc, __QAIC_IN uint32_t dwScalars, __QAIC_IN remote_arg *pra) __QAIC_REMOTE_ATTRIBUTE
#define __QAIC_OUT
Definition: remote.h:70
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_mem_unmap(__QAIC_IN int domain, __QAIC_IN uint64_t remoteVirtAddr, __QAIC_IN size_t size) __QAIC_REMOTE_ATTRIBUTE
int(* fastrpc_notif_fn_t)(void *context, int domain, int session, remote_rpc_status_flags_t status)
Definition: remote.h:526
uint32_t session_id
Definition: remote.h:596
remote_rpc_status_flags
Definition: remote.h:508
uint64_t pv
Definition: remote.h:179
struct remote_rpc_notif_register remote_rpc_notif_register_t
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_munmap64(__QAIC_IN __QAIC_INT64PTR vaddrout, __QAIC_IN int64_t size) __QAIC_REMOTE_ATTRIBUTE
const char * path
Definition: remote.h:380
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_session_control(__QAIC_IN uint32_t req, __QAIC_IN_LEN(datalen) void *data, __QAIC_IN uint32_t datalen) __QAIC_REMOTE_ATTRIBUTE
fastrpc_async_callback_t cb
Definition: remote.h:252
void * context
Definition: remote.h:536
uint32_t capability
Definition: remote.h:316
char * value
Definition: remote.h:382
int domain
Definition: remote.h:457
#define __QAIC_IN
Definition: remote.h:46
remote_dma_handle dma
Definition: remote.h:211
__QAIC_REMOTE_EXPORT __QAIC_RETURN void *__QAIC_REMOTE() remote_register_fd(__QAIC_IN int fd, __QAIC_IN int size) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_mmap(__QAIC_IN int fd, __QAIC_IN uint32_t flags, __QAIC_IN uint32_t vaddrin, __QAIC_IN int size, __QAIC_OUT uint32_t *vaddrout) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN void __QAIC_REMOTE() remote_register_buf_attr(__QAIC_IN_LEN(size) void *buf, __QAIC_IN int size, __QAIC_IN int fd, __QAIC_IN int attr) __QAIC_REMOTE_ATTRIBUTE
int prio
Definition: remote.h:406
uint32_t len
Definition: remote.h:199
struct fastrpc_async_callback fastrpc_async_callback_t
int domain
Definition: remote.h:448
char * domain_name
Definition: remote.h:608
session_control_req_id
Definition: remote.h:630
fastrpc_async_jobid jobid
Definition: remote.h:250
uint32_t enable
Definition: remote.h:357
char * domain_name
Definition: remote.h:565
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle_invoke_async(__QAIC_IN remote_handle h, __QAIC_IN fastrpc_async_descriptor_t *desc, __QAIC_IN uint32_t dwScalars, __QAIC_IN remote_arg *pra) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_munmap(__QAIC_IN uint32_t vaddrout, __QAIC_IN int size) __QAIC_REMOTE_ATTRIBUTE
uint32_t uri_len
Definition: remote.h:624
uint32_t session_name_len
Definition: remote.h:571
char * domain_name
Definition: remote.h:592
void * pv
Definition: remote.h:171
#define __QAIC_REMOTE(ff)
Definition: remote.h:17
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() fastrpc_munmap(__QAIC_IN int domain, __QAIC_IN int fd, __QAIC_IN void *addr, __QAIC_IN size_t length) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_mmap64(__QAIC_IN int fd, __QAIC_IN uint32_t flags, __QAIC_IN __QAIC_INT64PTR vaddrin, __QAIC_IN int64_t size, __QAIC_OUT __QAIC_INT64PTR *vaddrout) __QAIC_REMOTE_ATTRIBUTE
int domain
Definition: remote.h:467
int64_t nLen
Definition: remote.h:181
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle_invoke(__QAIC_IN remote_handle h, __QAIC_IN uint32_t dwScalars, __QAIC_IN remote_arg *pra) __QAIC_REMOTE_ATTRIBUTE
int stack_size
Definition: remote.h:408
int id
Definition: remote.h:157
uint32_t module_uri_len
Definition: remote.h:616
handle_control_req_id
Definition: remote.h:388
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_register_dma_handle_attr(__QAIC_IN int fd, __QAIC_IN uint32_t len, __QAIC_IN uint32_t attr) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() fastrpc_release_async_job(__QAIC_IN fastrpc_async_jobid jobid)
#define __QAIC_IN_LEN(len)
Definition: remote.h:62
#define MAX_DOMAIN_URI_SIZE
Definition: remote.h:152
uint32_t offset
Definition: remote.h:197
uint64_t fastrpc_async_jobid
Definition: remote.h:235
uint32_t pd_initmem_size
Definition: remote.h:553
#define __QAIC_INT64PTR
Definition: remote.h:78
remote_dsp_attributes
Different types of DSP capabilities queried via remote_handle_control using DSPRPC_GET_DSP_INFO reque...
Definition: remote.h:329
int32_t value_size
Definition: remote.h:378
char * session_name
Definition: remote.h:569
uint64_t remote_handle64
Definition: remote.h:166
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() fastrpc_mmap(__QAIC_IN int domain, __QAIC_IN int fd, __QAIC_IN void *addr, __QAIC_IN int offset, __QAIC_IN size_t length, __QAIC_IN enum fastrpc_map_flags flags) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_mem_map(__QAIC_IN int domain, __QAIC_IN int fd, __QAIC_IN int flags, __QAIC_IN uint64_t virtAddr, __QAIC_IN size_t size, __QAIC_OUT uint64_t *remoteVirtAddr) __QAIC_REMOTE_ATTRIBUTE
int domain
Definition: remote.h:428
__QAIC_REMOTE_EXPORT __QAIC_RETURN void *__QAIC_REMOTE() remote_register_fd2(__QAIC_IN int fd, __QAIC_IN size_t size) __QAIC_REMOTE_ATTRIBUTE
#define __QAIC_REMOTE_EXPORT
__QAIC_REMOTE
Definition: remote.h:30
struct remote_dsp_capability fastrpc_capability
int domain
Definition: remote.h:498
int32_t fd
Definition: remote.h:187
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle_control(__QAIC_IN uint32_t req, __QAIC_IN_LEN(datalen) void *data, __QAIC_IN uint32_t datalen) __QAIC_REMOTE_ATTRIBUTE
fastrpc_map_flags
Types of maps with cache maintenance.
Definition: remote.h:676
uint32_t remote_handle
Definition: remote.h:163
#define __QAIC_IN_CHAR
Definition: remote.h:54
int enable
Definition: remote.h:419
uint32_t offset
Definition: remote.h:189
uint32_t domain
Definition: remote.h:312
remote_handle64 h64
Definition: remote.h:221
__QAIC_REMOTE_EXPORT __QAIC_RETURN void __QAIC_REMOTE() remote_register_buf(__QAIC_IN_LEN(size) void *buf, __QAIC_IN int size, __QAIC_IN int fd) __QAIC_REMOTE_ATTRIBUTE
remote_handle h
Definition: remote.h:207
remote_buf64 buf
Definition: remote.h:217
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_set_mode(__QAIC_IN uint32_t mode) __QAIC_REMOTE_ATTRIBUTE
__QAIC_REMOTE_EXPORT __QAIC_RETURN void __QAIC_REMOTE() remote_register_buf_attr2(__QAIC_IN_LEN(size) void *buf, __QAIC_IN size_t size, __QAIC_IN int fd, __QAIC_IN int attr) __QAIC_REMOTE_ATTRIBUTE
struct fastrpc_async_descriptor fastrpc_async_descriptor_t
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() fastrpc_async_get_status(__QAIC_IN fastrpc_async_jobid jobid, __QAIC_IN int timeout_us, __QAIC_OUT int *result)
struct remote_rpc_get_domain remote_rpc_get_domain_t
int32_t fd
Definition: remote.h:195
int enable
Definition: remote.h:469
char * uri
Definition: remote.h:622
void * context
Definition: remote.h:242
size_t nLen
Definition: remote.h:173
int relative_thread_priority
Definition: remote.h:434
uint32_t domain_name_len
Definition: remote.h:594
remote_dma_handle64 dma
Definition: remote.h:223
uint32_t attribute_ID
Definition: remote.h:314
uint32_t domain_name_len
Definition: remote.h:610
char * module_uri
Definition: remote.h:614
remote_rpc_latency_flags
Definition: remote.h:261
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_register_dma_handle(__QAIC_IN int fd, __QAIC_IN uint32_t len) __QAIC_REMOTE_ATTRIBUTE
uint32_t session_id
Definition: remote.h:612
uint32_t domain_name_len
Definition: remote.h:567
remote_handle h
Definition: remote.h:219
uint32_t session_id
Definition: remote.h:582
#define __QAIC_RETURN
Definition: remote.h:38
fastrpc_process_type
Definition: remote.h:484
uint32_t effective_domain_id
Definition: remote.h:598
remote_mem_map_flags
Definition: remote.h:653
int domain
Definition: remote.h:538
uint32_t effective_domain_id
Definition: remote.h:576
enum remote_rpc_status_flags remote_rpc_status_flags_t
uint32_t latency
Definition: remote.h:303
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle_open(__QAIC_IN_CHAR const char *name, __QAIC_OUT remote_handle *ph) __QAIC_REMOTE_ATTRIBUTE
int domain
Definition: remote.h:404
remote_handle64 h64
Definition: remote.h:209
uint32_t enable
Definition: remote.h:289
__QAIC_REMOTE_EXPORT __QAIC_RETURN int __QAIC_REMOTE() remote_handle64_invoke(__QAIC_IN remote_handle64 h, __QAIC_IN uint32_t dwScalars, __QAIC_IN remote_arg *pra) __QAIC_REMOTE_ATTRIBUTE
struct remote_rpc_reserve_new_session remote_rpc_reserve_new_session_t
#define __QAIC_REMOTE_ATTRIBUTE
Definition: remote.h:83
int process_type
Definition: remote.h:500
fastrpc_notif_fn_t notifier_fn
Definition: remote.h:540