[PATCH v1 2/2] x86: scu: Add a few debug messages to the driver
Andy Shevchenko
andriy.shevchenko at linux.intel.com
Tue Nov 9 13:02:55 CET 2021
For some devices that have slightly different firmware implementation
it's good to see what's going on when communicating with the SCU. Add
a few debug messages for that purpose.
Signed-off-by: Andy Shevchenko <andriy.shevchenko at linux.intel.com>
---
arch/x86/lib/scu.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/arch/x86/lib/scu.c b/arch/x86/lib/scu.c
index 90ef239bcd3d..c7274e064647 100644
--- a/arch/x86/lib/scu.c
+++ b/arch/x86/lib/scu.c
@@ -11,6 +11,7 @@
*/
#include <common.h>
#include <dm.h>
+#include <hexdump.h>
#include <regmap.h>
#include <syscon.h>
#include <asm/cpu.h>
@@ -48,6 +49,7 @@ struct scu {
*/
static void scu_ipc_send_command(struct ipc_regs *regs, u32 cmd)
{
+ debug("%s(): 0x%08x\n", __func__, cmd);
writel(cmd, ®s->cmd);
}
@@ -92,12 +94,18 @@ static int scu_ipc_cmd(struct ipc_regs *regs, u32 cmd, u32 sub,
for (i = 0; i < inlen; i++)
writel(*in++, ®s->wbuf[i]);
+ debug_hex_dump("SCU in", DUMP_PREFIX_OFFSET, 16, 4, in, inlen * 4, false);
+
scu_ipc_send_command(regs, (inlen << 16) | (sub << 12) | cmd);
err = scu_ipc_check_status(regs);
if (!err) {
+ u32 *buf = out;
+
for (i = 0; i < outlen; i++)
*out++ = readl(®s->rbuf[i]);
+
+ debug_hex_dump("SCU out", DUMP_PREFIX_OFFSET, 16, 4, buf, outlen * 4, false);
}
return err;
--
2.33.0
More information about the U-Boot
mailing list