blob: 5d8bb09ad423000f6865f374865646f0b57f83f0 [file] [log] [blame]
Jeff Johnson295189b2012-06-20 16:38:30 -07001/*
Sushant Kaushik83392fa2015-05-05 17:44:40 +05302 * Copyright (c) 2014-2015 The Linux Foundation. All rights reserved.
Kiet Lam1ed83fc2014-02-19 01:15:45 -08003 *
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.
Gopichand Nakkala92f07d82013-01-08 21:16:34 -080020 */
Kiet Lam1ed83fc2014-02-19 01:15:45 -080021
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
Jeff Johnson295189b2012-06-20 16:38:30 -070028#if !defined( __I_VOS_DIAG_CORE_EVENT_H )
29#define __I_VOS_DIAG_CORE_EVENT_H
30
31/**=========================================================================
32
33 \file i_vos_diag_core_event.h
34
35 \brief Android specific definitions for vOSS DIAG events
36
Jeff Johnson295189b2012-06-20 16:38:30 -070037
38 ========================================================================*/
39
40/* $Header$ */
41
42/*--------------------------------------------------------------------------
43 Include Files
44 ------------------------------------------------------------------------*/
45#include <vos_types.h>
46#ifdef FEATURE_WLAN_DIAG_SUPPORT
47#include <event_defs.h>
48#endif
49
50/*--------------------------------------------------------------------------
51 Preprocessor definitions and constants
52 ------------------------------------------------------------------------*/
53
54#ifdef __cplusplus
55extern "C" {
56#endif /* __cplusplus */
57
58#ifdef FEATURE_WLAN_DIAG_SUPPORT
59
60void vos_event_report_payload(v_U16_t event_Id, v_U16_t length, v_VOID_t *pPayload);
61/*---------------------------------------------------------------------------
62 Allocate an event payload holder
63---------------------------------------------------------------------------*/
64#define WLAN_VOS_DIAG_EVENT_DEF( payload_name, payload_type ) \
65 payload_type(payload_name)
66
67/*---------------------------------------------------------------------------
68 Report the event
69---------------------------------------------------------------------------*/
70#define WLAN_VOS_DIAG_EVENT_REPORT( payload_ptr, ev_id ) \
71 do \
72 { \
73 vos_event_report_payload( ev_id, \
74 sizeof( *(payload_ptr) ), \
75 (void *)(payload_ptr) ); \
76 \
77 } while (0)
78
79#else /* FEATURE_WLAN_DIAG_SUPPORT */
80
81#define WLAN_VOS_DIAG_EVENT_DEF( payload_name, payload_type )
82#define WLAN_VOS_DIAG_EVENT_REPORT( payload_ptr, ev_id )
83
84#endif /* FEATURE_WLAN_DIAG_SUPPORT */
85
86
87/*-------------------------------------------------------------------------
88 Function declarations and documenation
89 ------------------------------------------------------------------------*/
Sushant Kaushik83392fa2015-05-05 17:44:40 +053090#ifdef FEATURE_WLAN_DIAG_SUPPORT
91void vos_log_wlock_diag(uint32_t reason, const char *wake_lock_name,
92 uint32_t timeout, uint32_t status);
93#else
94static inline void vos_log_wlock_diag(uint32_t reason,
95 const char *wake_lock_name,
96 uint32_t timeout, uint32_t status)
97{
98
99}
100#endif /* FEATURE_WLAN_DIAG_SUPPORT */
Jeff Johnson295189b2012-06-20 16:38:30 -0700101
102#ifdef __cplusplus
103}
104#endif /* __cplusplus */
105
106#endif // __I_VOS_DIAG_CORE_EVENT_H