Initial Contribution

msm-2.6.38: tag AU_LINUX_ANDROID_GINGERBREAD.02.03.04.00.142

Signed-off-by: Bryan Huntsman <bryanh@codeaurora.org>
diff --git a/include/linux/ofn_atlab.h b/include/linux/ofn_atlab.h
new file mode 100644
index 0000000..16c34d7
--- /dev/null
+++ b/include/linux/ofn_atlab.h
@@ -0,0 +1,46 @@
+/* Copyright (c) 2008-2010, Code Aurora Forum. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 and
+ * only version 2 as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ */
+/*
+ * Atlab optical Finger Navigation driver
+ *
+ */
+
+struct ofn_function1 {
+	bool no_motion1_en;
+	bool touch_sensor_en;
+	bool ofn_en;
+	u16 clock_select_khz;
+	u32 cpi_selection;
+};
+
+struct ofn_function2 {
+	bool invert_y;
+	bool invert_x;
+	bool swap_x_y;
+	bool hold_a_b_en;
+	bool motion_filter_en;
+};
+
+struct ofn_atlab_platform_data {
+	int irq_button_l;
+	int irq_button_r;
+	int gpio_button_l;
+	int gpio_button_r;
+	int rotate_xy;
+	int (*gpio_setup)(void);
+	void (*gpio_release)(void);
+	int (*optnav_on)(void);
+	void (*optnav_off)(void);
+	struct ofn_function1 function1;
+	struct ofn_function2 function2;
+};