blob: 37c141cf9aa3e2ccc1b01a05c8953317cb738eb7 [file] [log] [blame]
Prakash Dhavali7090c5f2015-11-02 17:55:19 -08001/*
Anurag Chouhan6d760662016-02-20 16:05:43 +05302 * Copyright (c) 2014-2016 The Linux Foundation. All rights reserved.
Prakash Dhavali7090c5f2015-11-02 17:55:19 -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.
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 HDD_TRACE_RECORD
29
30/**
31 * DOC: wlan_hdd_trace.c
32 *
33 * WLAN Host Device Driver trace implementation
34 *
35 */
36
Jeff Johnsona6177c32016-01-08 08:39:46 -080037/* denote that this file does not allow legacy hddLog */
38#define HDD_DISALLOW_LEGACY_HDDLOG 1
39
Anurag Chouhanb2dc16f2016-02-25 11:47:37 +053040#include "qdf_trace.h"
Anurag Chouhan6d760662016-02-20 16:05:43 +053041#include "qdf_types.h"
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080042#include "wlan_hdd_trace.h"
43#include "wlan_hdd_main.h"
44
45/**
46 * hdd_trace_dump() - Dump an HDD-specific trace record
47 * @mac: (unused) global MAC handle
48 * @record: trace record that was previously recorded
49 * @index: index of the trace record
50 *
51 * Return: none
52 */
53static void
Anurag Chouhanb2dc16f2016-02-25 11:47:37 +053054hdd_trace_dump(void *mac, tp_qdf_trace_record record, uint16_t index)
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080055{
Sreelakshmi Konamkic88f5372015-12-22 12:50:15 +053056 if (TRACE_CODE_HDD_RX_SME_MSG == record->code)
Jeff Johnsona6177c32016-01-08 08:39:46 -080057 hdd_err("%04d %012llu S%d %-14s %-30s(0x%x)",
Sreelakshmi Konamkic88f5372015-12-22 12:50:15 +053058 index, record->time, record->session, "RX SME MSG:",
59 get_e_roam_cmd_status_str(record->data), record->data);
60 else
Jeff Johnsona6177c32016-01-08 08:39:46 -080061 hdd_err("%04d %012llu S%d %-14s %-30s(0x%x)",
Sreelakshmi Konamkic88f5372015-12-22 12:50:15 +053062 index, record->time, record->session, "HDD Event:",
63 hdd_trace_event_string(record->code), record->data);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080064}
65
66/**
67 * hdd_trace_init() - HDD trace subsystem initialization
68 *
69 * Registers HDD with the debug trace subsystem
70 *
71 * Return: none
72 */
73void hdd_trace_init(void)
74{
Anurag Chouhanb2dc16f2016-02-25 11:47:37 +053075 qdf_trace_register(QDF_MODULE_ID_HDD, hdd_trace_dump);
Prakash Dhavali7090c5f2015-11-02 17:55:19 -080076}
77
78#endif /* ifdef HDD_TRACE_RECORD */