diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-15 16:41:39 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-15 16:41:39 -0400 |
commit | f2e1d89f9b349b3cd914b7c6ec6368632f4ad048 (patch) | |
tree | 5b0042924a9f9c8b3309c0be880f51795916fc28 /drivers/input/keyboard/omap-keypad.c | |
parent | 85ffdd28be04c324349dfc7c9de3d4342c885c3f (diff) | |
parent | 82ba56c273911f7eda79849cfa0fc2d2e5a3b75b (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (40 commits)
Input: use full RCU API
Input: remove tsdev interface
Input: add support for Blackfin BF54x Keypad controller
Input: appletouch - another fix for idle reset logic
HWMON: hdaps - switch to using input-polldev
Input: add support for SEGA Dreamcast keyboard
Input: omap-keyboard - don't pretend we support changing keymap
Input: lifebook - fix X and Y axis range
Input: usbtouchscreen - add support for GeneralTouch devices
Input: fix open count handling in input interfaces
Input: keyboard - add CapsShift lock
Input: adbhid - produce all CapsLock key events
Input: ALPS - add signature for ThinkPad R61
Input: jornada720_kbd - send MSC_SCAN events
Input: add support for the HP Jornada 7xx (710/720/728) touchscreen
Input: add support for HP Jornada 7xx onboard keyboard
Input: add support for HP Jornada onboard keyboard (HP6XX)
Input: ucb1400_ts - use schedule_timeout_uninterruptible
Input: xpad - fix dependancy on LEDS class
Input: auto-select INPUT for MAC_EMUMOUSEBTN option
...
Resolved conflicts manually in drivers/hwmon/applesmc.c: converting from
a class device to a device and converting to use input-polldev created a
few apparently trivial clashes..
Diffstat (limited to 'drivers/input/keyboard/omap-keypad.c')
-rw-r--r-- | drivers/input/keyboard/omap-keypad.c | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/drivers/input/keyboard/omap-keypad.c b/drivers/input/keyboard/omap-keypad.c index 3a228634f101..76f1969552c5 100644 --- a/drivers/input/keyboard/omap-keypad.c +++ b/drivers/input/keyboard/omap-keypad.c | |||
@@ -233,7 +233,7 @@ static void omap_kp_tasklet(unsigned long data) | |||
233 | omap_writew(0, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT); | 233 | omap_writew(0, OMAP_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT); |
234 | kp_cur_group = -1; | 234 | kp_cur_group = -1; |
235 | } | 235 | } |
236 | } | 236 | } |
237 | } | 237 | } |
238 | 238 | ||
239 | static ssize_t omap_kp_enable_show(struct device *dev, | 239 | static ssize_t omap_kp_enable_show(struct device *dev, |
@@ -318,7 +318,7 @@ static int __init omap_kp_probe(struct platform_device *pdev) | |||
318 | keymap = pdata->keymap; | 318 | keymap = pdata->keymap; |
319 | 319 | ||
320 | if (pdata->rep) | 320 | if (pdata->rep) |
321 | set_bit(EV_REP, input_dev->evbit); | 321 | __set_bit(EV_REP, input_dev->evbit); |
322 | 322 | ||
323 | if (pdata->delay) | 323 | if (pdata->delay) |
324 | omap_kp->delay = pdata->delay; | 324 | omap_kp->delay = pdata->delay; |
@@ -365,9 +365,9 @@ static int __init omap_kp_probe(struct platform_device *pdev) | |||
365 | goto err2; | 365 | goto err2; |
366 | 366 | ||
367 | /* setup input device */ | 367 | /* setup input device */ |
368 | set_bit(EV_KEY, input_dev->evbit); | 368 | __set_bit(EV_KEY, input_dev->evbit); |
369 | for (i = 0; keymap[i] != 0; i++) | 369 | for (i = 0; keymap[i] != 0; i++) |
370 | set_bit(keymap[i] & KEY_MAX, input_dev->keybit); | 370 | __set_bit(keymap[i] & KEY_MAX, input_dev->keybit); |
371 | input_dev->name = "omap-keypad"; | 371 | input_dev->name = "omap-keypad"; |
372 | input_dev->phys = "omap-keypad/input0"; | 372 | input_dev->phys = "omap-keypad/input0"; |
373 | input_dev->dev.parent = &pdev->dev; | 373 | input_dev->dev.parent = &pdev->dev; |
@@ -377,10 +377,6 @@ static int __init omap_kp_probe(struct platform_device *pdev) | |||
377 | input_dev->id.product = 0x0001; | 377 | input_dev->id.product = 0x0001; |
378 | input_dev->id.version = 0x0100; | 378 | input_dev->id.version = 0x0100; |
379 | 379 | ||
380 | input_dev->keycode = keymap; | ||
381 | input_dev->keycodesize = sizeof(unsigned int); | ||
382 | input_dev->keycodemax = pdata->keymapsize; | ||
383 | |||
384 | ret = input_register_device(omap_kp->input); | 380 | ret = input_register_device(omap_kp->input); |
385 | if (ret < 0) { | 381 | if (ret < 0) { |
386 | printk(KERN_ERR "Unable to register omap-keypad input device\n"); | 382 | printk(KERN_ERR "Unable to register omap-keypad input device\n"); |
@@ -403,15 +399,15 @@ static int __init omap_kp_probe(struct platform_device *pdev) | |||
403 | } else { | 399 | } else { |
404 | for (irq_idx = 0; irq_idx < omap_kp->rows; irq_idx++) { | 400 | for (irq_idx = 0; irq_idx < omap_kp->rows; irq_idx++) { |
405 | if (request_irq(OMAP_GPIO_IRQ(row_gpios[irq_idx]), | 401 | if (request_irq(OMAP_GPIO_IRQ(row_gpios[irq_idx]), |
406 | omap_kp_interrupt, | 402 | omap_kp_interrupt, |
407 | IRQF_TRIGGER_FALLING, | 403 | IRQF_TRIGGER_FALLING, |
408 | "omap-keypad", omap_kp) < 0) | 404 | "omap-keypad", omap_kp) < 0) |
409 | goto err5; | 405 | goto err5; |
410 | } | 406 | } |
411 | } | 407 | } |
412 | return 0; | 408 | return 0; |
413 | err5: | 409 | err5: |
414 | for (i = irq_idx-1; i >=0; i--) | 410 | for (i = irq_idx - 1; i >=0; i--) |
415 | free_irq(row_gpios[i], 0); | 411 | free_irq(row_gpios[i], 0); |
416 | err4: | 412 | err4: |
417 | input_unregister_device(omap_kp->input); | 413 | input_unregister_device(omap_kp->input); |
@@ -440,9 +436,9 @@ static int omap_kp_remove(struct platform_device *pdev) | |||
440 | if (cpu_is_omap24xx()) { | 436 | if (cpu_is_omap24xx()) { |
441 | int i; | 437 | int i; |
442 | for (i = 0; i < omap_kp->cols; i++) | 438 | for (i = 0; i < omap_kp->cols; i++) |
443 | omap_free_gpio(col_gpios[i]); | 439 | omap_free_gpio(col_gpios[i]); |
444 | for (i = 0; i < omap_kp->rows; i++) { | 440 | for (i = 0; i < omap_kp->rows; i++) { |
445 | omap_free_gpio(row_gpios[i]); | 441 | omap_free_gpio(row_gpios[i]); |
446 | free_irq(OMAP_GPIO_IRQ(row_gpios[i]), 0); | 442 | free_irq(OMAP_GPIO_IRQ(row_gpios[i]), 0); |
447 | } | 443 | } |
448 | } else { | 444 | } else { |