summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-whistler-sensors.c
diff options
context:
space:
mode:
authorPrashant Gaikwad <pgaikwad@nvidia.com>2011-01-19 18:15:47 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:46:23 -0800
commit37781e357ef9f6cee676ad2ac26ac7d3088cb076 (patch)
tree625977a3e3d97e6a23b783714475dd85d9446020 /arch/arm/mach-tegra/board-whistler-sensors.c
parent9eb8389a71f588dd151e4896a7bac72baf81461d (diff)
[ARM] tegra: i2c registration of accelerometer
Registering ADXL34x accelerometer on GEN1 I2C. Bug 780004 Original-Change-Id: Icd01873a910a1e79811b1b567e9670432e76020f Reviewed-on: http://git-master/r/16238 Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Rebase-Id: Rec54e5a14a0be700f035a6d34f1d683591522c4e
Diffstat (limited to 'arch/arm/mach-tegra/board-whistler-sensors.c')
-rw-r--r--arch/arm/mach-tegra/board-whistler-sensors.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-whistler-sensors.c b/arch/arm/mach-tegra/board-whistler-sensors.c
index 3d88b981f78b..eb1ea7c0bb0a 100644
--- a/arch/arm/mach-tegra/board-whistler-sensors.c
+++ b/arch/arm/mach-tegra/board-whistler-sensors.c
@@ -24,6 +24,7 @@
#include "gpio-names.h"
+#define ADXL34X_IRQ_GPIO TEGRA_GPIO_PAA1
#define CAMERA_RESET2_SHUTTER_GPIO TEGRA_GPIO_PBB1
#define CAMERA_PWNDN1_GPIO TEGRA_GPIO_PBB4
#define CAMERA_PWNDN2_STROBE_GPIO TEGRA_GPIO_PBB5
@@ -82,10 +83,29 @@ static struct i2c_board_info whistler_i2c3_board_info[] = {
},
};
+static void whistler_adxl34x_init(void)
+{
+ tegra_gpio_enable(ADXL34X_IRQ_GPIO);
+ gpio_request(ADXL34X_IRQ_GPIO, "adxl34x");
+ gpio_direction_input(ADXL34X_IRQ_GPIO);
+}
+
+static struct i2c_board_info whistler_i2c1_board_info[] = {
+ {
+ I2C_BOARD_INFO("adxl34x", 0x1D),
+ .irq = TEGRA_GPIO_TO_IRQ(ADXL34X_IRQ_GPIO),
+ },
+};
+
int __init whistler_sensors_init(void)
{
whistler_camera_init();
+ whistler_adxl34x_init();
+
+ i2c_register_board_info(0, whistler_i2c1_board_info,
+ ARRAY_SIZE(whistler_i2c1_board_info));
+
i2c_register_board_info(3, whistler_i2c3_board_info,
ARRAY_SIZE(whistler_i2c3_board_info));