1 | // SPDX-License-Identifier: ISC |
2 | /* |
3 | * Copyright (c) 2013,2016 Qualcomm Atheros, Inc. |
4 | * Copyright (c) 2018, The Linux Foundation. All rights reserved. |
5 | */ |
6 | |
7 | #include "wil6210.h" |
8 | #include "trace.h" |
9 | |
10 | void __wil_err(struct wil6210_priv *wil, const char *fmt, ...) |
11 | { |
12 | struct va_format vaf; |
13 | va_list args; |
14 | |
15 | va_start(args, fmt); |
16 | vaf.fmt = fmt; |
17 | vaf.va = &args; |
18 | netdev_err(dev: wil->main_ndev, format: "%pV" , &vaf); |
19 | trace_wil6210_log_err(vaf: &vaf); |
20 | va_end(args); |
21 | } |
22 | |
23 | void __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...) |
24 | { |
25 | struct va_format vaf; |
26 | va_list args; |
27 | |
28 | if (!net_ratelimit()) |
29 | return; |
30 | |
31 | va_start(args, fmt); |
32 | vaf.fmt = fmt; |
33 | vaf.va = &args; |
34 | netdev_err(dev: wil->main_ndev, format: "%pV" , &vaf); |
35 | trace_wil6210_log_err(vaf: &vaf); |
36 | va_end(args); |
37 | } |
38 | |
39 | void wil_dbg_ratelimited(const struct wil6210_priv *wil, const char *fmt, ...) |
40 | { |
41 | struct va_format vaf; |
42 | va_list args; |
43 | |
44 | if (!net_ratelimit()) |
45 | return; |
46 | |
47 | va_start(args, fmt); |
48 | vaf.fmt = fmt; |
49 | vaf.va = &args; |
50 | netdev_dbg(wil->main_ndev, "%pV" , &vaf); |
51 | trace_wil6210_log_dbg(vaf: &vaf); |
52 | va_end(args); |
53 | } |
54 | |
55 | void __wil_info(struct wil6210_priv *wil, const char *fmt, ...) |
56 | { |
57 | struct va_format vaf; |
58 | va_list args; |
59 | |
60 | va_start(args, fmt); |
61 | vaf.fmt = fmt; |
62 | vaf.va = &args; |
63 | netdev_info(dev: wil->main_ndev, format: "%pV" , &vaf); |
64 | trace_wil6210_log_info(vaf: &vaf); |
65 | va_end(args); |
66 | } |
67 | |
68 | void wil_dbg_trace(struct wil6210_priv *wil, const char *fmt, ...) |
69 | { |
70 | struct va_format vaf; |
71 | va_list args; |
72 | |
73 | va_start(args, fmt); |
74 | vaf.fmt = fmt; |
75 | vaf.va = &args; |
76 | trace_wil6210_log_dbg(vaf: &vaf); |
77 | va_end(args); |
78 | } |
79 | |