diff options
author | Alexandre Belloni <alexandre.belloni@free-electrons.com> | 2014-04-15 10:28:04 (GMT) |
---|---|---|
committer | Nicolas Ferre <nicolas.ferre@atmel.com> | 2014-05-07 16:28:40 (GMT) |
commit | 3fb07e86e4bb2bff8539f4df23fa6b63777367a1 (patch) | |
tree | 7d68f67a3dae55e80dbf23a6f31f0cdf0c142240 /arch/arm/mach-at91/board-sam9rlek.c | |
parent | b8ba9a40a77b8ededd2ebd2136864af779721b3a (diff) | |
download | linux-3fb07e86e4bb2bff8539f4df23fa6b63777367a1.tar.xz |
ARM: at91: sam9rlek add touchscreen support through at91_adc
at91_adc now supports reading a touchscreen for ADCs without a TSMR register.
Enable touchscreen support through at91_adc. This allows to use both a
touchscreen and the remaining ADC channel at the same time.
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Diffstat (limited to 'arch/arm/mach-at91/board-sam9rlek.c')
-rw-r--r-- | arch/arm/mach-at91/board-sam9rlek.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/arm/mach-at91/board-sam9rlek.c b/arch/arm/mach-at91/board-sam9rlek.c index 6b81e46..1db43e3 100644 --- a/arch/arm/mach-at91/board-sam9rlek.c +++ b/arch/arm/mach-at91/board-sam9rlek.c @@ -18,6 +18,7 @@ #include <linux/clk.h> #include <linux/input.h> #include <linux/gpio_keys.h> +#include <linux/platform_data/at91_adc.h> #include <video/atmel_lcdc.h> @@ -240,6 +241,17 @@ static struct at91_tsadcc_data ek_tsadcc_data = { /* + * ADC + Touchscreen + */ +static struct at91_adc_data ek_adc_data = { + .channels_used = BIT(0) | BIT(1) | BIT(2) | BIT(3) | BIT(4) | BIT(5), + .use_external_triggers = true, + .vref = 3300, + .touchscreen_type = ATMEL_ADC_TOUCHSCREEN_4WIRE, +}; + + +/* * GPIO Buttons */ #if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE) @@ -313,6 +325,8 @@ static void __init ek_board_init(void) at91_add_device_ac97(&ek_ac97_data); /* Touch Screen Controller */ at91_add_device_tsadcc(&ek_tsadcc_data); + /* Touch Screen Controller + ADC */ + at91_add_device_adc(&ek_adc_data); /* LEDs */ at91_gpio_leds(ek_leds, ARRAY_SIZE(ek_leds)); /* Push Buttons */ |