blob: 95b6065efd5e1c67bb2fa9f0f503069972c93423 [file] [log] [blame]
/*
* Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
/*
* Copyright (c) 2012, The Linux Foundation. All rights reserved.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
* above copyright notice and this permission notice appear in all
* copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
* WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
* AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
* DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
* PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
* PERFORMANCE OF THIS SOFTWARE.
*/
#if !defined( __WLAN_QCT_PAL_TRACE_H )
#define __WLAN_QCT_PAL_TRACE_H
/**=========================================================================
\file wlan_qct_pal_api.h
\brief define general APIs PAL exports. wpt = (Wlan Pal Type) wpal = (Wlan PAL)
Definitions for platform independent
Copyright 2010 (c) Qualcomm, Incorporated. All Rights Reserved.
Qualcomm Confidential and Proprietary.
========================================================================*/
#include "wlan_qct_pal_type.h"
#include "wlan_qct_pal_status.h"
typedef enum
{
// NONE means NO traces will be logged. This value is in place for the
// vos_trace_setlevel() to allow the user to turn off all traces.
eWLAN_PAL_TRACE_LEVEL_NONE = 0,
// the following trace levels are the ones that 'callers' of VOS_TRACE()
// can specify in for the VOS_TRACE_LEVEL parameter. Traces are classified
// by severity (FATAL being more serious than INFO for example).
eWLAN_PAL_TRACE_LEVEL_FATAL,
eWLAN_PAL_TRACE_LEVEL_ERROR,
eWLAN_PAL_TRACE_LEVEL_WARN,
eWLAN_PAL_TRACE_LEVEL_INFO,
eWLAN_PAL_TRACE_LEVEL_INFO_HIGH,
eWLAN_PAL_TRACE_LEVEL_INFO_MED,
eWLAN_PAL_TRACE_LEVEL_INFO_LOW,
// ALL means all trace levels will be active. This value is in place for the
// vos_trace_setlevel() to allow the user to turn ON all traces.
eWLAN_PAL_TRACE_LEVEL_ALL,
// not a real level. Used to identify the maximum number of
// VOS_TRACE_LEVELs defined.
eWLAN_PAL_TRACE_LEVEL_COUNT
} wpt_tracelevel;
#include "wlan_qct_os_trace.h"
/*----------------------------------------------------------------------------
\brief wpalTraceSetLevel() - Set the trace level for a particular module
This is an external API that allows trace levels to be set for each module.
\param module - id of the module whos trace level is being modified
\param level - trace level. A member of the wpt_tracelevel
enumeration indicating the severity of the condition causing the
trace message to be issued. More severe conditions are more
likely to be logged.
\param on - boolean to indicate if tracing at the given level should be
enabled or disabled.
\return nothing
\sa
--------------------------------------------------------------------------*/
void wpalTraceSetLevel( wpt_moduleid module, wpt_tracelevel level,
wpt_boolean on );
/**----------------------------------------------------------------------------
\brief wpalTraceCheckLevel()
This is an external API that returns a boolean value to signify if a
particular trace level is set for the specified module.
\param level - trace level. A member of the wpt_tracelevel enumeration
indicating the severity of the condition causing the trace
message to be issued.
Note that individual trace levels are the only valid values
for this API. eWLAN_PAL_TRACE_LEVEL_NONE and eWLAN_PAL_TRACE_LEVEL_ALL
are not valid input and will return FALSE
\return eWLAN_PAL_FALSE - the specified trace level for the specified module is OFF
eWLAN_PAL_TRUE - the specified trace level for the specified module is ON
\sa
--------------------------------------------------------------------------*/
wpt_boolean wpalTraceCheckLevel( wpt_moduleid module, wpt_tracelevel level );
/*----------------------------------------------------------------------------
\brief wpalTraceDisplay() - Display current state of trace level for
all modules
This is an external API that allows trace levels to be displayed to
an end user
\param none
\return nothing
\sa
--------------------------------------------------------------------------*/
void wpalTraceDisplay(void);
#endif // __WLAN_QCT_PAL_TRACE_H