aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/mach-omap2/common-board-devices.c
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2011-06-14 05:53:42 -0700
committerTony Lindgren <tony@atomide.com>2011-06-14 05:53:42 -0700
commitb8ce9fb8e18af7466e0b915bb5979322cdace322 (patch)
treeeec6f9b58ce154fd863f0f78b374a697a5a7139b /arch/arm/mach-omap2/common-board-devices.c
parentc8e0bf95fc01d6e2ca585fe08010800b6c56e823 (diff)
parente9e35c5a2b2c803b5e2f25906d8ffe110670ceb6 (diff)
Merge branch 'fixes-v3.0-rc3' into devel-fixes
Diffstat (limited to 'arch/arm/mach-omap2/common-board-devices.c')
-rw-r--r--arch/arm/mach-omap2/common-board-devices.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/arch/arm/mach-omap2/common-board-devices.c b/arch/arm/mach-omap2/common-board-devices.c
index e94903b2c65..94ccf464677 100644
--- a/arch/arm/mach-omap2/common-board-devices.c
+++ b/arch/arm/mach-omap2/common-board-devices.c
@@ -85,17 +85,17 @@ void __init omap_ads7846_init(int bus_num, int gpio_pendown, int gpio_debounce,
struct spi_board_info *spi_bi = &ads7846_spi_board_info;
int err;
- err = gpio_request(gpio_pendown, "TS PenDown");
- if (err) {
- pr_err("Could not obtain gpio for TS PenDown: %d\n", err);
- return;
- }
-
- gpio_direction_input(gpio_pendown);
- gpio_export(gpio_pendown, 0);
+ if (board_pdata && board_pdata->get_pendown_state) {
+ err = gpio_request_one(gpio_pendown, GPIOF_IN, "TSPenDown");
+ if (err) {
+ pr_err("Couldn't obtain gpio for TSPenDown: %d\n", err);
+ return;
+ }
+ gpio_export(gpio_pendown, 0);
- if (gpio_debounce)
- gpio_set_debounce(gpio_pendown, gpio_debounce);
+ if (gpio_debounce)
+ gpio_set_debounce(gpio_pendown, gpio_debounce);
+ }
ads7846_config.gpio_pendown = gpio_pendown;