common: iotrace: add timestamp to iotrace records
authorRamon Fried <ramon.fried@gmail.com>
Wed, 30 May 2018 20:09:59 +0000 (23:09 +0300)
committerTom Rini <trini@konsulko.com>
Thu, 7 Jun 2018 21:08:07 +0000 (17:08 -0400)
Add timestamp to each iotrace record to aid in debugging
of IO timing access bugs.

Signed-off-by: Ramon Fried <ramon.fried@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
common/iotrace.c

index f39885663a3c7aed93259428fe3b4afdf04f8a88..2f03a6082e893f0c2493c16c749a17e21442c692 100644 (file)
@@ -27,11 +27,13 @@ enum iotrace_flags {
  * struct iotrace_record - Holds a single I/O trace record
  *
  * @flags: I/O access type
+ * @timestamp: Timestamp of access
  * @addr: Address of access
  * @value: Value written or read
  */
 struct iotrace_record {
        enum iotrace_flags flags;
+       u64 timestamp;
        phys_addr_t addr;
        iovalue_t value;
 };
@@ -81,7 +83,7 @@ static void add_record(int flags, const void *ptr, ulong value)
                                        iotrace.start + iotrace.offset,
                                        sizeof(value));
        }
-
+       rec->timestamp = timer_get_us();
        rec->flags = flags;
        rec->addr = map_to_sysmem(ptr);
        rec->value = value;