[PATCH v2 05/15] ARM: at91: sam9m10g45ek: Add touchscreen support through at91_adc

Jonathan Cameron jic23 at kernel.org
Sat Mar 22 08:34:00 EDT 2014


On 17/03/14 13:56, Alexandre Belloni wrote:
> 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.
>
> Also, lower the clock for the ADC as it allows to have more stable reads and
> this is the speed used by atmel_tsadcc.
> It lowers the maximum throughput rate from 440000 samples per second to 12958
> samples per second. It shouldn't be an issue as the CPU is not able to keep up
> reading samples at that frequency.
Thanks for adding this detail.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni at free-electrons.com>
Acked-by: Jonathan Cameron <jic23 at kernel.org>
> ---
>   arch/arm/mach-at91/at91sam9g45.c        | 2 +-
>   arch/arm/mach-at91/board-sam9m10g45ek.c | 1 +
>   2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/mach-at91/at91sam9g45.c b/arch/arm/mach-at91/at91sam9g45.c
> index 2f455ce35268..3c519a7a938f 100644
> --- a/arch/arm/mach-at91/at91sam9g45.c
> +++ b/arch/arm/mach-at91/at91sam9g45.c
> @@ -181,7 +181,7 @@ static struct clk vdec_clk = {
>   static struct clk adc_op_clk = {
>   	.name		= "adc_op_clk",
>   	.type		= CLK_TYPE_PERIPHERAL,
> -	.rate_hz	= 13200000,
> +	.rate_hz	= 300000,
>   };
>
>   /* AES/TDES/SHA clock - Only for sam9m11/sam9g56 */
> diff --git a/arch/arm/mach-at91/board-sam9m10g45ek.c b/arch/arm/mach-at91/board-sam9m10g45ek.c
> index ef39078c8ce2..4d775b796ce4 100644
> --- a/arch/arm/mach-at91/board-sam9m10g45ek.c
> +++ b/arch/arm/mach-at91/board-sam9m10g45ek.c
> @@ -315,6 +315,7 @@ static struct at91_adc_data ek_adc_data = {
>   	.channels_used = BIT(0) | BIT(1) | BIT(2) | BIT(3) | BIT(4) | BIT(5) | BIT(6) | BIT(7),
>   	.use_external_triggers = true,
>   	.vref = 3300,
> +	.touchscreen_type = ATMEL_ADC_TOUCHSCREEN_4WIRE,
>   };
>
>   /*
>




More information about the linux-arm-kernel mailing list