From 6c30baee93d97c0fd2d41be51fca2e681f8dc9ab Mon Sep 17 00:00:00 2001
From: "Andrew F. Davis" <afd@ti.com>
Date: Wed, 10 Apr 2019 11:38:56 -0400
Subject: [PATCH] ti: k3: drivers: sec_proxy: Fix printf format specifiers

The ID of a thread is not used outside for printing it out when
something goes wrong. The specifier used is also not consistent.
Instead of storing the thread ID, store its name and print that.

Signed-off-by: Andrew F. Davis <afd@ti.com>
Change-Id: Id137c2f8dfdd5c599e220193344ece903f80af7b
---
 .../k3/common/drivers/sec_proxy/sec_proxy.c   | 44 +++++++++----------
 1 file changed, 22 insertions(+), 22 deletions(-)

diff --git a/plat/ti/k3/common/drivers/sec_proxy/sec_proxy.c b/plat/ti/k3/common/drivers/sec_proxy/sec_proxy.c
index 49cecd44c..0cf296b57 100644
--- a/plat/ti/k3/common/drivers/sec_proxy/sec_proxy.c
+++ b/plat/ti/k3/common/drivers/sec_proxy/sec_proxy.c
@@ -51,14 +51,14 @@ struct k3_sec_proxy_desc {
 };
 
 /**
- * struct k3_sec_proxy_thread - Description of a secure proxy Thread
- * @id:		Thread ID
+ * struct k3_sec_proxy_thread - Description of a Secure Proxy Thread
+ * @name:	Thread Name
  * @data:	Thread Data path region for target
  * @scfg:	Secure Config Region for Thread
  * @rt:		RealTime Region for Thread
  */
 struct k3_sec_proxy_thread {
-	uint32_t id;
+	const char *name;
 	uintptr_t data;
 	uintptr_t scfg;
 	uintptr_t rt;
@@ -83,7 +83,7 @@ struct k3_sec_proxy_mbox {
  */
 #define SP_THREAD(_x) \
 	[_x] = { \
-		.id = _x, \
+		.name = #_x, \
 		.data = SEC_PROXY_THREAD(SEC_PROXY_DATA_BASE, _x), \
 		.scfg = SEC_PROXY_THREAD(SEC_PROXY_SCFG_BASE, _x), \
 		.rt = SEC_PROXY_THREAD(SEC_PROXY_RT_BASE, _x), \
@@ -131,7 +131,7 @@ static inline int k3_sec_proxy_verify_thread(struct k3_sec_proxy_thread *spt,
 	/* Check for any errors already available */
 	if (mmio_read_32(spt->rt + RT_THREAD_STATUS) &
 	    RT_THREAD_STATUS_ERROR_MASK) {
-		ERROR("Thread %d is corrupted, cannot send data\n", spt->id);
+		ERROR("Thread %s is corrupted, cannot send data\n", spt->name);
 		return -EINVAL;
 	}
 
@@ -139,11 +139,11 @@ static inline int k3_sec_proxy_verify_thread(struct k3_sec_proxy_thread *spt,
 	if ((mmio_read_32(spt->scfg + SCFG_THREAD_CTRL) & SCFG_THREAD_CTRL_DIR_MASK)
 	    != (dir << SCFG_THREAD_CTRL_DIR_SHIFT)) {
 		if (dir)
-			ERROR("Trying to send data on RX Thread %d\n",
-			      spt->id);
+			ERROR("Trying to send data on RX Thread %s\n",
+			      spt->name);
 		else
-			ERROR("Trying to receive data on TX Thread %d\n",
-			      spt->id);
+			ERROR("Trying to receive data on TX Thread %s\n",
+			      spt->name);
 		return -EINVAL;
 	}
 
@@ -151,10 +151,10 @@ static inline int k3_sec_proxy_verify_thread(struct k3_sec_proxy_thread *spt,
 	uint32_t tick_start = (uint32_t)read_cntpct_el0();
 	uint32_t ticks_per_us = SYS_COUNTER_FREQ_IN_TICKS / 1000000;
 	while (!(mmio_read_32(spt->rt + RT_THREAD_STATUS) & RT_THREAD_STATUS_CUR_CNT_MASK)) {
-		VERBOSE("Waiting for thread %d to clear\n", spt->id);
+		VERBOSE("Waiting for thread %s to clear\n", spt->name);
 		if (((uint32_t)read_cntpct_el0() - tick_start) >
 		    (spm.desc.timeout_us * ticks_per_us)) {
-			ERROR("Timeout waiting for thread %d to clear\n", spt->id);
+			ERROR("Timeout waiting for thread %s to clear\n", spt->name);
 			return -ETIMEDOUT;
 		}
 	}
@@ -176,13 +176,13 @@ int k3_sec_proxy_clear_rx_thread(enum k3_sec_proxy_chan_id id)
 	/* Check for any errors already available */
 	if (mmio_read_32(spt->rt + RT_THREAD_STATUS) &
 	    RT_THREAD_STATUS_ERROR_MASK) {
-		ERROR("Thread %d is corrupted, cannot send data\n", spt->id);
+		ERROR("Thread %s is corrupted, cannot send data\n", spt->name);
 		return -EINVAL;
 	}
 
 	/* Make sure thread is configured for right direction */
 	if (!(mmio_read_32(spt->scfg + SCFG_THREAD_CTRL) & SCFG_THREAD_CTRL_DIR_MASK)) {
-		ERROR("Cannot clear a transmit thread %d\n", spt->id);
+		ERROR("Cannot clear a transmit thread %s\n", spt->name);
 		return -EINVAL;
 	}
 
@@ -190,10 +190,10 @@ int k3_sec_proxy_clear_rx_thread(enum k3_sec_proxy_chan_id id)
 	uint32_t try_count = 10;
 	while (mmio_read_32(spt->rt + RT_THREAD_STATUS) & RT_THREAD_STATUS_CUR_CNT_MASK) {
 		if (!(try_count--)) {
-			ERROR("Could not clear all messages from thread %d\n", spt->id);
+			ERROR("Could not clear all messages from thread %s\n", spt->name);
 			return -ETIMEDOUT;
 		}
-		WARN("Clearing message from thread %d\n", spt->id);
+		WARN("Clearing message from thread %s\n", spt->name);
 		mmio_read_32(spt->data + spm.desc.data_end_offset);
 	}
 
@@ -216,14 +216,14 @@ int k3_sec_proxy_send(enum k3_sec_proxy_chan_id id, const struct k3_sec_proxy_ms
 
 	ret = k3_sec_proxy_verify_thread(spt, THREAD_IS_TX);
 	if (ret) {
-		ERROR("Thread %d verification failed (%d)\n", spt->id, ret);
+		ERROR("Thread %s verification failed (%d)\n", spt->name, ret);
 		return ret;
 	}
 
 	/* Check the message size */
 	if (msg->len + sizeof(secure_header) > spm.desc.max_msg_size) {
-		ERROR("Thread %d message length %lu > max msg size\n",
-		      spt->id, msg->len);
+		ERROR("Thread %s message length %lu > max msg size\n",
+		      spt->name, msg->len);
 		return -EINVAL;
 	}
 
@@ -263,7 +263,7 @@ int k3_sec_proxy_send(enum k3_sec_proxy_chan_id id, const struct k3_sec_proxy_ms
 	if (data_reg <= spm.desc.data_end_offset)
 		mmio_write_32(spt->data + spm.desc.data_end_offset, 0);
 
-	VERBOSE("Message successfully sent on thread %ud\n", id);
+	VERBOSE("Message successfully sent on thread %s\n", spt->name);
 
 	return 0;
 }
@@ -275,7 +275,7 @@ int k3_sec_proxy_send(enum k3_sec_proxy_chan_id id, const struct k3_sec_proxy_ms
  *
  * Return: 0 if all goes well, else appropriate error message
  */
-int k3_sec_proxy_recv(uint32_t id, struct k3_sec_proxy_msg *msg)
+int k3_sec_proxy_recv(enum k3_sec_proxy_chan_id id, struct k3_sec_proxy_msg *msg)
 {
 	struct k3_sec_proxy_thread *spt = &spm.threads[id];
 	union sec_msg_hdr secure_header;
@@ -284,7 +284,7 @@ int k3_sec_proxy_recv(uint32_t id, struct k3_sec_proxy_msg *msg)
 
 	ret = k3_sec_proxy_verify_thread(spt, THREAD_IS_RX);
 	if (ret) {
-		ERROR("Thread %d verification failed (%d)\n", spt->id, ret);
+		ERROR("Thread %s verification failed (%d)\n", spt->name, ret);
 		return ret;
 	}
 
@@ -323,7 +323,7 @@ int k3_sec_proxy_recv(uint32_t id, struct k3_sec_proxy_msg *msg)
 	/* TODO: Verify checksum */
 	(void)secure_header.checksum;
 
-	VERBOSE("Message successfully received from thread %ud\n", id);
+	VERBOSE("Message successfully received from thread %s\n", spt->name);
 
 	return 0;
 }
-- 
GitLab