aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@rpsys.net>2005-09-13 04:25:33 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-13 11:22:31 -0400
commit513b6e1afaf81b42cacbb24ef1aa7eea5e9661c2 (patch)
treed30c0a6ae0af38948e981f5d83a740f12f14a196 /arch
parent9fc7896b62b48714fafecf9266d9dc14c1cd6e33 (diff)
[PATCH] SharpSL: Abstract c7x0 specifics from Corgi Touchscreen driver
Separate out the Sharp Zaurus c7x0 series specific code from the Corgi Touchscreen driver. Use the new functions in corgi_lcd.c via sharpsl.h for hsync handling and pass the IRQ as a platform device resource. Move a function prototype into the w100fb header file where it belongs. This enables the driver to be used by the Zaurus cxx00 series. Signed-Off-by: Richard Purdie <rpurdie@rpsys.net> Cc: Vojtech Pavlik <vojtech@suse.cz> Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-pxa/corgi.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c
index 3678d1e0e826..fc428b827671 100644
--- a/arch/arm/mach-pxa/corgi.c
+++ b/arch/arm/mach-pxa/corgi.c
@@ -130,12 +130,29 @@ static struct platform_device corgikbd_device = {
130/* 130/*
131 * Corgi Touch Screen Device 131 * Corgi Touch Screen Device
132 */ 132 */
133static struct resource corgits_resources[] = {
134 [0] = {
135 .start = CORGI_IRQ_GPIO_TP_INT,
136 .end = CORGI_IRQ_GPIO_TP_INT,
137 .flags = IORESOURCE_IRQ,
138 },
139};
140
141static struct corgits_machinfo corgi_ts_machinfo = {
142 .get_hsync_len = corgi_get_hsync_len,
143 .put_hsync = corgi_put_hsync,
144 .wait_hsync = corgi_wait_hsync,
145};
146
133static struct platform_device corgits_device = { 147static struct platform_device corgits_device = {
134 .name = "corgi-ts", 148 .name = "corgi-ts",
135 .dev = { 149 .dev = {
136 .parent = &corgissp_device.dev, 150 .parent = &corgissp_device.dev,
151 .platform_data = &corgi_ts_machinfo,
137 }, 152 },
138 .id = -1, 153 .id = -1,
154 .num_resources = ARRAY_SIZE(corgits_resources),
155 .resource = corgits_resources,
139}; 156};
140 157
141 158
@@ -239,6 +256,7 @@ static void __init corgi_init(void)
239 corgi_ssp_set_machinfo(&corgi_ssp_machinfo); 256 corgi_ssp_set_machinfo(&corgi_ssp_machinfo);
240 257
241 pxa_gpio_mode(CORGI_GPIO_USB_PULLUP | GPIO_OUT); 258 pxa_gpio_mode(CORGI_GPIO_USB_PULLUP | GPIO_OUT);
259 pxa_gpio_mode(CORGI_GPIO_HSYNC | GPIO_IN);
242 pxa_set_udc_info(&udc_info); 260 pxa_set_udc_info(&udc_info);
243 pxa_set_mci_info(&corgi_mci_platform_data); 261 pxa_set_mci_info(&corgi_mci_platform_data);
244 262