aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorNick Price <nick@spun.io>2026-06-20 19:03:28 +0000
committerAdrian Chadd <adrian@FreeBSD.org>2026-06-20 19:10:16 +0000
commit76d0a25be3976634631bab975f4c2ddbc98f72a2 (patch)
tree6d8760009915e2dd1f81b4edde8a9fc997076f6f /sys/dev
parenta10151fa662c1d370861154e2f83e88a20be149c (diff)
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/aq/aq_dbg.c4
-rw-r--r--sys/dev/aq/aq_dbg.h10
-rw-r--r--sys/dev/aq/aq_main.c8
3 files changed, 13 insertions, 9 deletions
diff --git a/sys/dev/aq/aq_dbg.c b/sys/dev/aq/aq_dbg.c
index ec3954185749..86e8fb9cc82a 100644
--- a/sys/dev/aq/aq_dbg.c
+++ b/sys/dev/aq/aq_dbg.c
@@ -45,8 +45,8 @@ __FBSDID("$FreeBSD$");
#include "aq_dbg.h"
-const enum aq_debug_level dbg_level_ = lvl_detail;
-const uint32_t dbg_categories_ = dbg_init | dbg_config | dbg_fw;
+int dbg_level_ = 0;
+uint32_t dbg_categories_ = dbg_init | dbg_config | dbg_tx | dbg_rx | dbg_intr | dbg_fw;
diff --git a/sys/dev/aq/aq_dbg.h b/sys/dev/aq/aq_dbg.h
index 280572e7d5da..7b546d4f3d78 100644
--- a/sys/dev/aq/aq_dbg.h
+++ b/sys/dev/aq/aq_dbg.h
@@ -109,16 +109,12 @@ enum aq_debug_category
#define __FILENAME__ (__builtin_strrchr(__FILE__, '/') ? __builtin_strrchr(__FILE__, '/') + 1 : __FILE__)
-extern const enum aq_debug_level dbg_level_;
-extern const uint32_t dbg_categories_;
+extern int dbg_level_;
+extern uint32_t dbg_categories_;
#define log_base_(_lvl, _fmt, args...) printf( "atlantic: " _fmt "\n", ##args)
-#if AQ_CFG_DEBUG_LVL > 0
-#define trace_base_(_lvl, _cat, _fmt, args...) do { if (dbg_level_ >= _lvl && (_cat & dbg_categories_)) { printf( "atlantic: " _fmt " @%s,%d\n", ##args, __FILENAME__, __LINE__); }} while (0)
-#else
-#define trace_base_(_lvl, _cat, _fmt, ...) do {} while (0)
-#endif // AQ_CFG_DEBUG_LVL > 0
+#define trace_base_(_lvl, _cat, _fmt, args...) do { if (dbg_level_ >= (_lvl) && ((_cat) & dbg_categories_)) { printf( "atlantic: " _fmt " @%s,%d\n", ##args, __FILENAME__, __LINE__); }} while (0)
#define aq_log_warn(_fmt, args...) log_base_(lvl_warn, "/!\\ " _fmt, ##args)
#define aq_log(_fmt, args...) log_base_(lvl_trace, _fmt, ##args)
diff --git a/sys/dev/aq/aq_main.c b/sys/dev/aq/aq_main.c
index ecb7e66e5b15..e1b294012b27 100644
--- a/sys/dev/aq/aq_main.c
+++ b/sys/dev/aq/aq_main.c
@@ -1311,6 +1311,14 @@ aq_add_stats_sysctls(struct aq_dev *softc)
CTLTYPE_STRING | CTLFLAG_RD, softc, 0,
aq_sysctl_print_rss_config, "A", "Prints RSS Configuration");
+ /* Runtime trace controls (global) */
+ SYSCTL_ADD_INT(ctx, child, OID_AUTO, "debug",
+ CTLFLAG_RW, &dbg_level_, 0,
+ "Trace verbosity: 0=off, 3=err, 4=+warn, 5=+trace, 6=+detail");
+ SYSCTL_ADD_U32(ctx, child, OID_AUTO, "debug_categories",
+ CTLFLAG_RW, &dbg_categories_, 0,
+ "Trace category mask: init=1 config=2 tx=4 rx=8 intr=16 fw=32");
+
/* Driver Statistics */
for (int i = 0; i < softc->tx_rings_count; i++) {
struct aq_ring *ring = softc->tx_rings[i];