diff options
Diffstat (limited to 'arch/arm/mach-s5pv210')
-rw-r--r-- | arch/arm/mach-s5pv210/include/mach/gpio-herring.h | 11 | ||||
-rw-r--r-- | arch/arm/mach-s5pv210/mach-herring.c | 25 |
2 files changed, 24 insertions, 12 deletions
diff --git a/arch/arm/mach-s5pv210/include/mach/gpio-herring.h b/arch/arm/mach-s5pv210/include/mach/gpio-herring.h index 3330bd0..7a17ed6 100644 --- a/arch/arm/mach-s5pv210/include/mach/gpio-herring.h +++ b/arch/arm/mach-s5pv210/include/mach/gpio-herring.h @@ -99,11 +99,8 @@ #define GPIO_CAM_SCL_29V S5PV210_GPD1(1) #define GPIO_CAM_SCL_29V_AF 2 -#define GPIO_FM_SDA_28V S5PV210_GPD1(2) -#define GPIO_FM_SDA_28V_AF 2 - -#define GPIO_FM_SCL_28V S5PV210_GPD1(3) -#define GPIO_FM_SCL_28V_AF 2 +#define GYRO_SDA_28V S5PV210_GPD1(2) +#define GYRO_SCL_28V S5PV210_GPD1(3) #define GPIO_TSP_SDA_28V S5PV210_GPD1(4) #define GPIO_TSP_SDA_28V_AF 2 @@ -439,10 +436,6 @@ #define GPIO_CAM_MEGA_nRST S5PV210_GPJ1(5) -#define GYRO_SDA_28V S5PV210_GPJ2(0) - -#define GYRO_SCL_28V S5PV210_GPJ2(1) - #define GPIO_OLED_DET S5PV210_GPJ2(2) #define GPIO_EAR_SEL S5PV210_GPJ2(3) diff --git a/arch/arm/mach-s5pv210/mach-herring.c b/arch/arm/mach-s5pv210/mach-herring.c index c5c2b4e..69836ea 100644 --- a/arch/arm/mach-s5pv210/mach-herring.c +++ b/arch/arm/mach-s5pv210/mach-herring.c @@ -78,7 +78,7 @@ #include <plat/regs-otg.h> #include <linux/gp2a.h> #include <linux/kr3dm.h> - +#include <linux/input/k3g.h> #include <../../../drivers/video/samsung/s3cfb.h> #include <linux/max17040_battery.h> @@ -958,8 +958,8 @@ static struct platform_device herring_i2c7_device = { }; static struct i2c_gpio_platform_data herring_i2c8_platdata = { - .sda_pin = GPIO_FM_SDA_28V, - .scl_pin = GPIO_FM_SCL_28V, + .sda_pin = GYRO_SDA_28V, + .scl_pin = GYRO_SCL_28V, .udelay = 2, /* 250KHz */ .sda_is_open_drain = 0, .scl_is_open_drain = 0, @@ -1438,6 +1438,23 @@ static struct i2c_board_info i2c_devs5[] __initdata = { }, }; +static struct k3g_platform_data k3g_pdata = { + .axis_map_x = 1, + .axis_map_y = 1, + .axis_map_z = 1, + .negate_x = 0, + .negate_y = 0, + .negate_z = 0, +}; + +static struct i2c_board_info i2c_devs8[] __initdata = { + { + I2C_BOARD_INFO("k3g", 0x69), + .platform_data = &k3g_pdata, + }, +}; + + static struct fsa9480_i2c_platform_data fsa9480_pdata = { .usb_sel = GPIO_USB_SEL, .uart_sel = GPIO_UART_SEL, @@ -2837,6 +2854,7 @@ static struct platform_device *herring_devices[] __initdata = { &herring_i2c5_device, /* accel sensor */ &herring_i2c6_device, &herring_i2c7_device, + &herring_i2c8_device, /* gyro sensor */ &herring_i2c9_device, /* max1704x:fuel_guage */ &herring_i2c11_device, /* optical sensor */ &herring_i2c12_device, /* magnetic sensor */ @@ -3106,6 +3124,7 @@ static void __init herring_machine_init(void) /* FSA9480 */ fsa9480_gpio_init(); i2c_register_board_info(7, i2c_devs7, ARRAY_SIZE(i2c_devs7)); + i2c_register_board_info(8, i2c_devs8, ARRAY_SIZE(i2c_devs8)); i2c_register_board_info(9, i2c_devs9, ARRAY_SIZE(i2c_devs9)); /* optical sensor */ gp2a_gpio_init(); |