summaryrefslogtreecommitdiff
path: root/lwis_transaction.h
diff options
context:
space:
mode:
authorEdmond Chung <edmondchung@google.com>2020-11-17 21:25:14 -0800
committerEdmond Chung <edmondchung@google.com>2020-11-19 13:09:22 -0800
commit39b6784fbaec611332cba45563554a0fd5a7a65d (patch)
treede1fe33b84d907e8a21181fe6d2812803ec16f61 /lwis_transaction.h
parentf5ba1348ed834946862d78d5d45e1de3e21a072a (diff)
downloadlwis-39b6784fbaec611332cba45563554a0fd5a7a65d.tar.gz
Transaction: Measure and print processing time in debug info
Bug: 165879653 Test: Ran AOSP camera app and checked output from /sys/kernel/debug/lwis/[csi|g3aa|ipp]/transaction_info Signed-off-by: Edmond Chung <edmondchung@google.com> Change-Id: I068ffd5e343ccd1f3165e529dc296a2850467af1
Diffstat (limited to 'lwis_transaction.h')
-rw-r--r--lwis_transaction.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/lwis_transaction.h b/lwis_transaction.h
index ba4a707..9e48745 100644
--- a/lwis_transaction.h
+++ b/lwis_transaction.h
@@ -12,7 +12,10 @@
#define LWIS_TRANSACTION_H_
#include "lwis_commands.h"
-#include "lwis_device.h"
+
+/* LWIS forward declarations */
+struct lwis_device;
+struct lwis_client;
/* Transaction entry. Each entry belongs to two queues:
* 1) Event list: Transactions are sorted by event IDs. This is to search for
@@ -27,6 +30,15 @@ struct lwis_transaction {
struct list_head process_queue_node;
};
+/* For debugging purposes, keeps track of the transaction information, as
+ * well as the time it executes and the time it took to execute.
+*/
+struct lwis_transaction_history {
+ struct lwis_transaction_info info;
+ int64_t process_timestamp;
+ int64_t process_duration_ns;
+};
+
struct lwis_transaction_event_list {
int64_t event_id;
struct list_head list;