summaryrefslogtreecommitdiff
path: root/drivers/input
diff options
context:
space:
mode:
authorVikas Jain <vjain@nvidia.com>2012-07-27 15:35:47 +0530
committerVarun Wadekar <vwadekar@nvidia.com>2012-08-06 16:13:43 +0530
commiteb107131e10faffc59b331e181667c4929b96b6a (patch)
tree40cb1a65f25f1f1e5df38ebe7e6b8dfe5c8fafc3 /drivers/input
parent463b8b7d06eb1dc51304502566f98443e289a3b3 (diff)
input: touch: atmel_mxt_ts: Add Ftrace logging.
This change assists automating system wide touch driver performance. Bug 928954 Change-Id: Iea21dfea1c31748ce5835652cecc0856c4f4028d Signed-off-by: Vikas Jain <vjain@nvidia.com> Reviewed-on: http://git-master/r/118984 Reviewed-by: Sachin Nikam <snikam@nvidia.com> Reviewed-by: David Jung <djung@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/touchscreen/atmel_mxt_ts.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/input/touchscreen/atmel_mxt_ts.c b/drivers/input/touchscreen/atmel_mxt_ts.c
index 4cb034197549..93f4f8967601 100644
--- a/drivers/input/touchscreen/atmel_mxt_ts.c
+++ b/drivers/input/touchscreen/atmel_mxt_ts.c
@@ -3,7 +3,7 @@
*
* Copyright (C) 2010 Samsung Electronics Co.Ltd
* Copyright (C) 2011 Atmel Corporation
- * Copyright (C) 2011 NVIDIA Corporation
+ * Copyright (C) 2011-2012 NVIDIA Corporation
* Author: Joonyoung Shim <jy0922.shim@samsung.com>
*
* This program is free software; you can redistribute it and/or modify it
@@ -23,6 +23,9 @@
#include <linux/interrupt.h>
#include <linux/slab.h>
+#define CREATE_TRACE_POINTS
+#include <trace/events/nvevent.h>
+
/* Family ID */
#define MXT224_ID 0x80
#define MXT768E_ID 0xA1
@@ -705,6 +708,7 @@ static void mxt_input_touchevent(struct mxt_data *data,
finger[id].area = area;
finger[id].pressure = pressure;
+ trace_nvevent_irq_data_submit("mxt_input_touchevent");
mxt_input_report(data, id);
}
@@ -717,11 +721,15 @@ static irqreturn_t mxt_interrupt(int irq, void *dev_id)
int touchid;
u8 reportid;
+ trace_nvevent_irq_data_read_start_series("mxt_input_interrupt");
do {
+ trace_nvevent_irq_data_read_start_single("mxt_input_interrupt");
if (mxt_read_message(data, &message)) {
dev_err(dev, "Failed to read message\n");
goto end;
}
+ trace_nvevent_irq_data_read_finish_single(
+ "mxt_input_interrupt");
reportid = message.reportid;
@@ -740,6 +748,7 @@ static irqreturn_t mxt_interrupt(int irq, void *dev_id)
} else if (reportid != MXT_RPTID_NOMSG)
mxt_dump_message(dev, &message);
} while (reportid != MXT_RPTID_NOMSG);
+ trace_nvevent_irq_data_read_finish_series("mxt_input_interrupt");
end:
return IRQ_HANDLED;