Re: [U-Boot] [PATCH 5/5] cmd: iotrace: add dump trace command

2018-05-25 Thread Simon Glass
Hi Ramon,

On 24 May 2018 at 13:36, Ramon Fried  wrote:
> Add dump trace command which dump all trace
> buffer content in a much more readable fashion
> than md.
>
> Signed-off-by: Ramon Fried 
> ---
>  cmd/iotrace.c | 36 +++-
>  1 file changed, 35 insertions(+), 1 deletion(-)
>

Please see bootstage - I think the timestamp should be in microseconds.

Regards,
Simon
___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot


[U-Boot] [PATCH 5/5] cmd: iotrace: add dump trace command

2018-05-24 Thread Ramon Fried
Add dump trace command which dump all trace
buffer content in a much more readable fashion
than md.

Signed-off-by: Ramon Fried 
---
 cmd/iotrace.c | 36 +++-
 1 file changed, 35 insertions(+), 1 deletion(-)

diff --git a/cmd/iotrace.c b/cmd/iotrace.c
index 601b8c8e32..f98eb54234 100644
--- a/cmd/iotrace.c
+++ b/cmd/iotrace.c
@@ -24,6 +24,36 @@ static void do_print_stats(void)
printf("CRC32:  %08lx\n", (ulong)iotrace_get_checksum());
 }
 
+static void do_print_trace(void)
+{
+   ulong start, size, offset, count;
+
+   struct iotrace_record *cur_record;
+
+   iotrace_get_buffer(&start, &size, &offset, &count);
+
+   if (!start || !size || !count)
+   return;
+
+   printf("Timestamp  Value  Address\n");
+
+   cur_record = (struct iotrace_record *)start;
+   for (int i = 0; i < count; i++) {
+   if (cur_record->flags & IOT_WRITE)
+   printf("%08llu: 0x%08lx --> 0x%lx08\n",
+  cur_record->timestamp,
+   cur_record->value,
+   cur_record->addr);
+   else
+   printf("%08llu: 0x%08lx <-- 0x%lx08\n",
+  cur_record->timestamp,
+   cur_record->value,
+   cur_record->addr);
+
+   cur_record++;
+   }
+}
+
 static int do_set_buffer(int argc, char * const argv[])
 {
ulong addr = 0, size = 0;
@@ -76,6 +106,9 @@ int do_iotrace(cmd_tbl_t *cmdtp, int flag, int argc, char * 
const argv[])
case 's':
do_print_stats();
break;
+   case 'd':
+   do_print_trace();
+   break;
default:
return CMD_RET_USAGE;
}
@@ -90,5 +123,6 @@ U_BOOT_CMD(
"iotrace buffer- set iotrace buffer\n"
"iotrace limit - set iotrace region limit\n"
"iotrace pause- pause tracing\n"
-   "iotrace resume   - resume tracing"
+   "iotrace resume   - resume tracing\n"
+   "iotrace dump - dump iotrace buffer"
 );
-- 
2.17.0

___
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot