M7350/kernel/arch/arm/mach-msm/include/mach/oem_rapi_client.h

77 lines
1.7 KiB
C
Raw Normal View History

2024-09-09 08:52:07 +00:00
/* Copyright (c) 2009, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#ifndef __ASM__ARCH_OEM_RAPI_CLIENT_H
#define __ASM__ARCH_OEM_RAPI_CLIENT_H
/*
* OEM RAPI CLIENT Driver header file
*/
#include <linux/types.h>
#include <mach/msm_rpcrouter.h>
enum {
OEM_RAPI_CLIENT_EVENT_NONE = 0,
/*
* list of oem rapi client events
*/
OEM_RAPI_CLIENT_EVENT_MAX
};
struct oem_rapi_client_streaming_func_cb_arg {
uint32_t event;
void *handle;
uint32_t in_len;
char *input;
uint32_t out_len_valid;
uint32_t output_valid;
uint32_t output_size;
};
struct oem_rapi_client_streaming_func_cb_ret {
uint32_t *out_len;
char *output;
};
struct oem_rapi_client_streaming_func_arg {
uint32_t event;
int (*cb_func)(struct oem_rapi_client_streaming_func_cb_arg *,
struct oem_rapi_client_streaming_func_cb_ret *);
void *handle;
uint32_t in_len;
char *input;
uint32_t out_len_valid;
uint32_t output_valid;
uint32_t output_size;
};
struct oem_rapi_client_streaming_func_ret {
uint32_t *out_len;
char *output;
};
int oem_rapi_client_streaming_function(
struct msm_rpc_client *client,
struct oem_rapi_client_streaming_func_arg *arg,
struct oem_rapi_client_streaming_func_ret *ret);
int oem_rapi_client_close(void);
struct msm_rpc_client *oem_rapi_client_init(void);
#endif