162306a36Sopenharmony_ci// SPDX-License-Identifier: ISC
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (c) 2013,2016 Qualcomm Atheros, Inc.
462306a36Sopenharmony_ci * Copyright (c) 2018, The Linux Foundation. All rights reserved.
562306a36Sopenharmony_ci */
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#include "wil6210.h"
862306a36Sopenharmony_ci#include "trace.h"
962306a36Sopenharmony_ci
1062306a36Sopenharmony_civoid __wil_err(struct wil6210_priv *wil, const char *fmt, ...)
1162306a36Sopenharmony_ci{
1262306a36Sopenharmony_ci	struct va_format vaf;
1362306a36Sopenharmony_ci	va_list args;
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ci	va_start(args, fmt);
1662306a36Sopenharmony_ci	vaf.fmt = fmt;
1762306a36Sopenharmony_ci	vaf.va = &args;
1862306a36Sopenharmony_ci	netdev_err(wil->main_ndev, "%pV", &vaf);
1962306a36Sopenharmony_ci	trace_wil6210_log_err(&vaf);
2062306a36Sopenharmony_ci	va_end(args);
2162306a36Sopenharmony_ci}
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_civoid __wil_err_ratelimited(struct wil6210_priv *wil, const char *fmt, ...)
2462306a36Sopenharmony_ci{
2562306a36Sopenharmony_ci	struct va_format vaf;
2662306a36Sopenharmony_ci	va_list args;
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci	if (!net_ratelimit())
2962306a36Sopenharmony_ci		return;
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci	va_start(args, fmt);
3262306a36Sopenharmony_ci	vaf.fmt = fmt;
3362306a36Sopenharmony_ci	vaf.va = &args;
3462306a36Sopenharmony_ci	netdev_err(wil->main_ndev, "%pV", &vaf);
3562306a36Sopenharmony_ci	trace_wil6210_log_err(&vaf);
3662306a36Sopenharmony_ci	va_end(args);
3762306a36Sopenharmony_ci}
3862306a36Sopenharmony_ci
3962306a36Sopenharmony_civoid wil_dbg_ratelimited(const struct wil6210_priv *wil, const char *fmt, ...)
4062306a36Sopenharmony_ci{
4162306a36Sopenharmony_ci	struct va_format vaf;
4262306a36Sopenharmony_ci	va_list args;
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci	if (!net_ratelimit())
4562306a36Sopenharmony_ci		return;
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ci	va_start(args, fmt);
4862306a36Sopenharmony_ci	vaf.fmt = fmt;
4962306a36Sopenharmony_ci	vaf.va = &args;
5062306a36Sopenharmony_ci	netdev_dbg(wil->main_ndev, "%pV", &vaf);
5162306a36Sopenharmony_ci	trace_wil6210_log_dbg(&vaf);
5262306a36Sopenharmony_ci	va_end(args);
5362306a36Sopenharmony_ci}
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_civoid __wil_info(struct wil6210_priv *wil, const char *fmt, ...)
5662306a36Sopenharmony_ci{
5762306a36Sopenharmony_ci	struct va_format vaf;
5862306a36Sopenharmony_ci	va_list args;
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ci	va_start(args, fmt);
6162306a36Sopenharmony_ci	vaf.fmt = fmt;
6262306a36Sopenharmony_ci	vaf.va = &args;
6362306a36Sopenharmony_ci	netdev_info(wil->main_ndev, "%pV", &vaf);
6462306a36Sopenharmony_ci	trace_wil6210_log_info(&vaf);
6562306a36Sopenharmony_ci	va_end(args);
6662306a36Sopenharmony_ci}
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_civoid wil_dbg_trace(struct wil6210_priv *wil, const char *fmt, ...)
6962306a36Sopenharmony_ci{
7062306a36Sopenharmony_ci	struct va_format vaf;
7162306a36Sopenharmony_ci	va_list args;
7262306a36Sopenharmony_ci
7362306a36Sopenharmony_ci	va_start(args, fmt);
7462306a36Sopenharmony_ci	vaf.fmt = fmt;
7562306a36Sopenharmony_ci	vaf.va = &args;
7662306a36Sopenharmony_ci	trace_wil6210_log_dbg(&vaf);
7762306a36Sopenharmony_ci	va_end(args);
7862306a36Sopenharmony_ci}
79