blob: bf6a63460c770ce2056ae3512b946313e0a2a97f [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001/*
2 * Copyright (c) 2014-2015 The Linux Foundation. All rights reserved.
3 *
4 * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
5 *
6 *
7 * Permission to use, copy, modify, and/or distribute this software for
8 * any purpose with or without fee is hereby granted, provided that the
9 * above copyright notice and this permission notice appear in all
10 * copies.
11 *
12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
13 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
14 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
15 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
16 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
17 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
18 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19 * PERFORMANCE OF THIS SOFTWARE.
20 */
21
22/*
23 * This file was originally distributed by Qualcomm Atheros, Inc.
24 * under proprietary terms before Copyright ownership was assigned
25 * to the Linux Foundation.
26 */
27
28#ifdef FEATURE_OEM_DATA_SUPPORT
29
30/**
31 *
32 * \file oem_data_internal.h
33 *
34 * Exports and types for the Common OEM DATA REQ/RSP Module interfaces.
35 */
36
37#ifndef __OEM_DATA_INTERNAL_H__
38#define __OEM_DATA_INTERNAL_H__
39
40#include "csr_support.h"
41#include "cds_reg_service.h"
42#include "oem_data_api.h"
43
44typedef struct tagOemDataStruct {
45 /* a global req id */
46 uint32_t nextOemReqId;
47 /* indicates that currently a request has been posted and */
48 bool oemDataReqActive;
49 /* callback function pointer for returning the response */
50 oem_data_oem_data_reqCompleteCallback callback;
51 /* context of the original caller */
52 void *pContext;
53 uint32_t oemDataReqID; /* original request ID */
54 tOemDataReqConfig oemDataReqConfig; /* current oem data request */
55 uint8_t sessionId; /* Session on which oem data req is active */
56 /* callback for sending data response to oem application */
57 sme_send_oem_data_rsp_msg oem_data_rsp_callback;
58} tOemDataStruct;
59
60typedef struct tagOemDataCmd {
61 uint32_t oemDataReqID;
62 oem_data_oem_data_reqCompleteCallback callback;
63 void *pContext;
64 tOemDataReq oemDataReq;
65} tOemDataCmd;
66#endif /* __OEM_DATA_INTERNAL_H__ */
67
68#endif /* FEATURE_OEM_DATA_SUPPORT */