diff mbox series

thunderbolt: Correct trace output of firmware connection manager packets

Message ID 20240426054300.3827052-1-mika.westerberg@linux.intel.com (mailing list archive)
State Accepted
Commit a3dc6d82de9bd88871dbc4ac511409e69ecacbfb
Headers show
Series thunderbolt: Correct trace output of firmware connection manager packets | expand

Commit Message

Mika Westerberg April 26, 2024, 5:42 a.m. UTC
These are special packets that the drivers sends directly to the
firmware connection manager (ICM). These do not have route string
because they are always consumed by the firmware connection manager
running on the host router, so hard-code that in the output accordingly.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
---
 drivers/thunderbolt/trace.h | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

Comments

Mika Westerberg April 29, 2024, 4:48 a.m. UTC | #1
On Fri, Apr 26, 2024 at 08:42:59AM +0300, Mika Westerberg wrote:
> These are special packets that the drivers sends directly to the
> firmware connection manager (ICM). These do not have route string
> because they are always consumed by the firmware connection manager
> running on the host router, so hard-code that in the output accordingly.
> 
> Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>

Applied to thunderbolt.git/next.
diff mbox series

Patch

diff --git a/drivers/thunderbolt/trace.h b/drivers/thunderbolt/trace.h
index 4dccfcf7af6a..6d0776514d12 100644
--- a/drivers/thunderbolt/trace.h
+++ b/drivers/thunderbolt/trace.h
@@ -87,23 +87,32 @@  static inline const char *show_data(struct trace_seq *p, u8 type,
 	const char *prefix = "";
 	int i;
 
-	show_route(p, data);
-
 	switch (type) {
 	case TB_CFG_PKG_READ:
 	case TB_CFG_PKG_WRITE:
+		show_route(p, data);
 		show_data_read_write(p, data);
 		break;
 
 	case TB_CFG_PKG_ERROR:
+		show_route(p, data);
 		show_data_error(p, data);
 		break;
 
 	case TB_CFG_PKG_EVENT:
+		show_route(p, data);
 		show_data_event(p, data);
 		break;
 
+	case TB_CFG_PKG_ICM_EVENT:
+	case TB_CFG_PKG_ICM_CMD:
+	case TB_CFG_PKG_ICM_RESP:
+		/* ICM messages always target the host router */
+		trace_seq_puts(p, "route=0, ");
+		break;
+
 	default:
+		show_route(p, data);
 		break;
 	}