diff options
author | Gary King <gking@nvidia.com> | 2010-09-17 15:25:03 -0700 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2010-10-19 13:34:59 -0700 |
commit | a84fbfed575fee180699b4e01a0b9bf704cad4ae (patch) | |
tree | ad8c09eb9090c616bede71bc8c669c92e7ccdb4a /arch/arm/mach-tegra/board-ventana-sensors.c | |
parent | 8ba980cd4ee7b5423757afc0d093167571b25bce (diff) |
[ARM] tegra: ventana: register akm8975 compass
For Ventana board registering i2c board info for akm8975
compass on i2c bus4.
Change-Id: Ie5a293699e69a9c94d89bb419db26ca81e5c4a91
Reviewed-on: http://git-master/r/7974
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/board-ventana-sensors.c')
-rw-r--r-- | arch/arm/mach-tegra/board-ventana-sensors.c | 27 |
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)); |