From 04ebf48fe4cb7bdd4d125e9e5f2507d03ede6a5b Mon Sep 17 00:00:00 2001 From: Dominik Wenger Date: Tue, 27 Oct 2009 20:25:40 +0000 Subject: Initial touchscreen support for mini2440. Based on D2 touchscreen driver git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23370 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/s3c2440/mini2440/button-mini2440.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'firmware/target/arm/s3c2440/mini2440/button-mini2440.c') diff --git a/firmware/target/arm/s3c2440/mini2440/button-mini2440.c b/firmware/target/arm/s3c2440/mini2440/button-mini2440.c index 787c04d1ef..0435f47559 100644 --- a/firmware/target/arm/s3c2440/mini2440/button-mini2440.c +++ b/firmware/target/arm/s3c2440/mini2440/button-mini2440.c @@ -24,6 +24,7 @@ #include "system.h" #include "button.h" #include "kernel.h" +#include "touchscreen-target.h" void button_init_device(void) { @@ -50,6 +51,8 @@ void button_init_device(void) S3C2440_GPIO_PULLUP (GPGUP, 9, GPIO_PULLUP_ENABLE); S3C2440_GPIO_PULLUP (GPGUP, 10, GPIO_PULLUP_ENABLE); + /* init touchscreen */ + touchscreen_init_device(); } inline bool button_hold(void) @@ -57,12 +60,18 @@ inline bool button_hold(void) return 0; } -int button_read_device(void) +int button_read_device(int* data) { int btn = BUTTON_NONE; + static int old_data = 0; + + *data = old_data; /* Read the buttons - active low */ btn = (GPGDAT & BUTTON_MAIN) ^ BUTTON_MAIN; + + /* read touchscreen */ + btn |= touchscreen_read_device(data, &old_data); return btn; } -- cgit v1.2.3