summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorJonas Aaberg <jonas.aberg@stericsson.com>2011-10-27 09:52:14 +0200
committerJonas ABERG <jonas.aberg@stericsson.com>2011-10-28 10:17:04 +0200
commit4d1eca362472f7889fcb7fc9b409d9fa02c2f396 (patch)
tree59dac7248ae23241cd48f028b9914f2cc6a4b577 /arch
parent8f62dad11b54cbbaba8d9e88411713a5d3fdee58 (diff)
ARM: ux500: gpio-keys: Remove dynamic handling of pins
Dynamic handling of pins does not work properly if done manually from suspend/resume hooks, so let's remove it for the time beeing. ST-Ericsson Linux next: - ST-Ericsson ID: 369952 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I3b130256b19af7feae9db0e4a1bd72c7856bb88c Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/35405 Reviewed-by: Bengt JONSSON <bengt.g.jonsson@stericsson.com> Reviewed-by: QABUILD
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-ux500/board-mop500.c56
1 files changed, 25 insertions, 31 deletions
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 0c614276fe9..11b4ad69f91 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -633,16 +633,15 @@ static struct gpio_keys_button mop500_gpio_keys[] = {
}
};
-static struct regulator *sensors1p_regulator;
-struct ux500_pins *sensors1p_pins;
-static int mop500_sensors1p_activate(struct device *dev);
-static void mop500_sensors1p_deactivate(struct device *dev);
+static struct regulator *gpio_keys_regulator;
+static int mop500_gpio_keys_activate(struct device *dev);
+static void mop500_gpio_keys_deactivate(struct device *dev);
static struct gpio_keys_platform_data mop500_gpio_keys_data = {
.buttons = mop500_gpio_keys,
.nbuttons = ARRAY_SIZE(mop500_gpio_keys),
- .enable = mop500_sensors1p_activate,
- .disable = mop500_sensors1p_deactivate,
+ .enable = mop500_gpio_keys_activate,
+ .disable = mop500_gpio_keys_deactivate,
};
static struct platform_device mop500_gpio_keys_device = {
@@ -653,20 +652,15 @@ static struct platform_device mop500_gpio_keys_device = {
},
};
-static int mop500_sensors1p_activate(struct device *dev)
+static int mop500_gpio_keys_activate(struct device *dev)
{
- if (sensors1p_pins == NULL)
- return -EINVAL;
-
- ux500_pins_enable(sensors1p_pins);
-
- sensors1p_regulator = regulator_get(&mop500_gpio_keys_device.dev,
+ gpio_keys_regulator = regulator_get(&mop500_gpio_keys_device.dev,
"vcc");
- if (IS_ERR(sensors1p_regulator)) {
+ if (IS_ERR(gpio_keys_regulator)) {
dev_err(&mop500_gpio_keys_device.dev, "no regulator\n");
- return PTR_ERR(sensors1p_regulator);
+ return PTR_ERR(gpio_keys_regulator);
}
- regulator_enable(sensors1p_regulator);
+ regulator_enable(gpio_keys_regulator);
/*
* Please be aware that the start-up time of the SFH7741 is
@@ -676,31 +670,31 @@ static int mop500_sensors1p_activate(struct device *dev)
return 0;
}
-static void mop500_sensors1p_deactivate(struct device *dev)
+static void mop500_gpio_keys_deactivate(struct device *dev)
{
- if (!IS_ERR(sensors1p_regulator)) {
- regulator_disable(sensors1p_regulator);
- regulator_put(sensors1p_regulator);
+ if (!IS_ERR(gpio_keys_regulator)) {
+ regulator_disable(gpio_keys_regulator);
+ regulator_put(gpio_keys_regulator);
}
-
- if (sensors1p_pins != NULL)
- ux500_pins_disable(sensors1p_pins);
}
-static __init void mop500_sensors1p_init(void)
+static __init void mop500_gpio_keys_init(void)
{
- sensors1p_pins = ux500_pins_get("gpio-keys.0");
+ struct ux500_pins *gpio_keys_pins = ux500_pins_get("gpio-keys.0");
- if (sensors1p_pins == NULL) {
- pr_err("sensors1p: Fail to get keys\n");
+ if (gpio_keys_pins == NULL) {
+ pr_err("gpio_keys: Fail to get pins\n");
return;
}
- mop500_gpio_keys[0].gpio = PIN_NUM(sensors1p_pins->cfg[0]);
- mop500_gpio_keys[1].gpio = PIN_NUM(sensors1p_pins->cfg[1]);
+ ux500_pins_enable(gpio_keys_pins);
+
+ mop500_gpio_keys[0].gpio = PIN_NUM(gpio_keys_pins->cfg[0]);
+ mop500_gpio_keys[1].gpio = PIN_NUM(gpio_keys_pins->cfg[1]);
+
}
#else
-static inline void mop500_sensors1p_init(void) { }
+static inline void mop500_gpio_keys_init(void) { }
#endif
#ifdef CONFIG_LEDS_PWM
@@ -1171,7 +1165,7 @@ static void __init mop500_init_machine(void)
platform_add_devices(snowball_platform_devs,
ARRAY_SIZE(snowball_platform_devs));
} else {
- mop500_sensors1p_init();
+ mop500_gpio_keys_init();
platform_add_devices(mop500_platform_devs,
ARRAY_SIZE(mop500_platform_devs));
}