Linux Audio

Check our new training course

Linux debugging, profiling, tracing and performance analysis training

Mar 24-27, 2025, special US time zones
Register
Loading...
Note: File does not exist in v3.1.
 1/*
 2 * Copyright (c) 2013 Qualcomm Atheros, Inc.
 3 *
 4 * Permission to use, copy, modify, and/or distribute this software for any
 5 * purpose with or without fee is hereby granted, provided that the above
 6 * copyright notice and this permission notice appear in all copies.
 7 *
 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 */
16
17#include "wil6210.h"
18#include "trace.h"
19
20int wil_err(struct wil6210_priv *wil, const char *fmt, ...)
21{
22	struct net_device *ndev = wil_to_ndev(wil);
23	struct va_format vaf = {
24		.fmt = fmt,
25	};
26	va_list args;
27	int ret;
28
29	va_start(args, fmt);
30	vaf.va = &args;
31	ret = netdev_err(ndev, "%pV", &vaf);
32	trace_wil6210_log_err(&vaf);
33	va_end(args);
34
35	return ret;
36}
37
38int wil_info(struct wil6210_priv *wil, const char *fmt, ...)
39{
40	struct net_device *ndev = wil_to_ndev(wil);
41	struct va_format vaf = {
42		.fmt = fmt,
43	};
44	va_list args;
45	int ret;
46
47	va_start(args, fmt);
48	vaf.va = &args;
49	ret = netdev_info(ndev, "%pV", &vaf);
50	trace_wil6210_log_info(&vaf);
51	va_end(args);
52
53	return ret;
54}
55
56int wil_dbg_trace(struct wil6210_priv *wil, const char *fmt, ...)
57{
58	struct va_format vaf = {
59		.fmt = fmt,
60	};
61	va_list args;
62
63	va_start(args, fmt);
64	vaf.va = &args;
65	trace_wil6210_log_dbg(&vaf);
66	va_end(args);
67
68	return 0;
69}