summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-ventana-sensors.c
diff options
context:
space:
mode:
authorGary King <gking@nvidia.com>2011-02-11 00:14:53 -0800
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:46:05 -0800
commit5561bbc1dcfd9d0f35a10beba107bd177cab408e (patch)
tree581077cd25b75892883fd04fbb8fe6bf19ee10be /arch/arm/mach-tegra/board-ventana-sensors.c
parent3bad0b8396e739542ef95295b33786c8e7c3b4d6 (diff)
[ARM] tegra: ventana: register akm8975 compass
For Ventana board registering i2c board info for akm8975 compass on i2c bus4. Original-Change-Id: Ie5a293699e69a9c94d89bb419db26ca81e5c4a91 Reviewed-on: http://git-master/r/7974 Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Tested-by: Bharat Nihalani <bnihalani@nvidia.com> Rebase-Id: R10647df6bb1889c2a80cb4fc1d86dc48914bd624
Diffstat (limited to 'arch/arm/mach-tegra/board-ventana-sensors.c')
-rw-r--r--arch/arm/mach-tegra/board-ventana-sensors.c27
1 files changed, 21 insertions, 6 deletions
diff --git a/arch/arm/mach-tegra/board-ventana-sensors.c b/arch/arm/mach-tegra/board-ventana-sensors.c
index 3527ec9b036b..c2b3ba0d4a64 100644
--- a/arch/arm/mach-tegra/board-ventana-sensors.c
+++ b/arch/arm/mach-tegra/board-ventana-sensors.c
@@ -21,9 +21,12 @@
#include <linux/i2c.h>
#include <mach/gpio.h>
#include <linux/i2c/nct1008.h>
+#include <linux/akm8975.h>
+
#include "gpio-names.h"
#define ISL29018_IRQ_GPIO TEGRA_GPIO_PZ2
+#define AKM8975_IRQ_GPIO TEGRA_GPIO_PN5
static void ventana_isl29018_init(void)
{
@@ -32,6 +35,19 @@ static void ventana_isl29018_init(void)
gpio_direction_input(ISL29018_IRQ_GPIO);
}
+static void ventana_akm8975_init(void)
+{
+ tegra_gpio_enable(AKM8975_IRQ_GPIO);
+ gpio_request(AKM8975_IRQ_GPIO, "akm8975");
+ gpio_direction_input(AKM8975_IRQ_GPIO);
+}
+
+struct nct1008_platform_data ventana_nct1008_pdata = {
+ .conv_rate = 5,
+ .config = NCT1008_CONFIG_ALERT_DISABLE,
+ .thermal_threshold = 110,
+};
+
static const struct i2c_board_info ventana_i2c0_board_info[] = {
{
I2C_BOARD_INFO("isl29018", 0x44),
@@ -45,22 +61,21 @@ static const struct i2c_board_info ventana_i2c2_board_info[] = {
},
};
-struct nct1008_platform_data ventana_nct1008_pdata = {
- .conv_rate = 5,
- .config = NCT1008_CONFIG_ALERT_DISABLE,
- .thermal_threshold = 110,
-};
-
static struct i2c_board_info ventana_i2c4_board_info[] = {
{
I2C_BOARD_INFO("nct1008", 0x4C),
.platform_data = &ventana_nct1008_pdata,
},
+ {
+ I2C_BOARD_INFO("akm8975", 0x0C),
+ .irq = TEGRA_GPIO_TO_IRQ(AKM8975_IRQ_GPIO),
+ }
};
int __init ventana_sensors_init(void)
{
ventana_isl29018_init();
+ ventana_akm8975_init();
i2c_register_board_info(0, ventana_i2c0_board_info,
ARRAY_SIZE(ventana_i2c0_board_info));