summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-enterprise-sensors.c
diff options
context:
space:
mode:
authorRobert Collins <rcollins@nvidia.com>2011-12-01 16:19:20 -0800
committerRohan Somvanshi <rsomvanshi@nvidia.com>2012-02-13 22:19:09 -0800
commitafe3f5978373561b7893afec9e1008316683f851 (patch)
treeef1eee1504d30580b4bde8a1e952528f8bc4d8d0 /arch/arm/mach-tegra/board-enterprise-sensors.c
parent14cfecda97b635253c94aaee942437003ae5a3c6 (diff)
mpu6050: Motion Libraries: Board files for Invensense MPU6050.
Invensense board files for MPU6050. MPL version 4.1.1. Bug 825602 Signed-off-by: Robert Collins <rcollins@nvidia.com> Reviewed-on: http://git-master/r/70373 (cherry picked from commit 2839895906a9c822e5c9f8abab68e33e9982c5a9) Change-Id: I97eb4dcc075ab8b6f2bb583756dd10128924f10a Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com> Reviewed-on: http://git-master/r/82717 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Varun Wadekar <vwadekar@nvidia.com> Tested-by: Varun Wadekar <vwadekar@nvidia.com> Reviewed-by: Robert Collins <rcollins@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/board-enterprise-sensors.c')
-rw-r--r--arch/arm/mach-tegra/board-enterprise-sensors.c21
1 files changed, 17 insertions, 4 deletions
diff --git a/arch/arm/mach-tegra/board-enterprise-sensors.c b/arch/arm/mach-tegra/board-enterprise-sensors.c
index 68544692bcee..f3060a58bb0c 100644
--- a/arch/arm/mach-tegra/board-enterprise-sensors.c
+++ b/arch/arm/mach-tegra/board-enterprise-sensors.c
@@ -153,19 +153,28 @@ static void enterprise_nct1008_init(void)
ARRAY_SIZE(enterprise_i2c4_nct1008_board_info));
}
-static struct mpu_platform_data mpu3050_data = {
+/* MPU board file definition */
+#if (MPU_GYRO_TYPE == MPU_TYPE_MPU3050)
+#define MPU_GYRO_NAME "mpu3050"
+#endif
+#if (MPU_GYRO_TYPE == MPU_TYPE_MPU6050)
+#define MPU_GYRO_NAME "mpu6050"
+#endif
+static struct mpu_platform_data mpu_gyro_data = {
.int_config = 0x10,
.level_shifter = 0,
.orientation = MPU_GYRO_ORIENTATION, /* Located in board_[platformname].h */
};
-static struct ext_slave_platform_data mpu3050_accel_data = {
+#if (MPU_GYRO_TYPE == MPU_TYPE_MPU3050)
+static struct ext_slave_platform_data mpu_accel_data = {
.address = MPU_ACCEL_ADDR,
.irq = 0,
.adapt_num = MPU_ACCEL_BUS_NUM,
.bus = EXT_SLAVE_BUS_SECONDARY,
.orientation = MPU_ACCEL_ORIENTATION, /* Located in board_[platformname].h */
};
+#endif
static struct ext_slave_platform_data mpu_compass_data = {
.address = MPU_COMPASS_ADDR,
@@ -179,15 +188,17 @@ static struct i2c_board_info __initdata inv_mpu_i2c2_board_info[] = {
{
I2C_BOARD_INFO(MPU_GYRO_NAME, MPU_GYRO_ADDR),
.irq = TEGRA_GPIO_TO_IRQ(MPU_GYRO_IRQ_GPIO),
- .platform_data = &mpu3050_data,
+ .platform_data = &mpu_gyro_data,
},
+#if (MPU_GYRO_TYPE == MPU_TYPE_MPU3050)
{
I2C_BOARD_INFO(MPU_ACCEL_NAME, MPU_ACCEL_ADDR),
#if MPU_ACCEL_IRQ_GPIO
.irq = TEGRA_GPIO_TO_IRQ(MPU_ACCEL_IRQ_GPIO),
#endif
- .platform_data = &mpu3050_accel_data,
+ .platform_data = &mpu_accel_data,
},
+#endif
{
I2C_BOARD_INFO(MPU_COMPASS_NAME, MPU_COMPASS_ADDR),
#if MPU_COMPASS_IRQ_GPIO
@@ -203,6 +214,7 @@ static void mpuirq_init(void)
pr_info("*** MPU START *** mpuirq_init...\n");
+#if (MPU_GYRO_TYPE == MPU_TYPE_MPU3050)
#if MPU_ACCEL_IRQ_GPIO
/* ACCEL-IRQ assignment */
tegra_gpio_enable(MPU_ACCEL_IRQ_GPIO);
@@ -219,6 +231,7 @@ static void mpuirq_init(void)
return;
}
#endif
+#endif
/* MPU-IRQ assignment */
tegra_gpio_enable(MPU_GYRO_IRQ_GPIO);