diff options
| author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-04-02 15:49:19 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-04-02 15:49:19 -0400 |
| commit | 9c8680e2cfbb60d5075f8caaf9d98276120bcc78 (patch) | |
| tree | 1957cff26a46271d5b63a3c209629ddd7f9fe124 | |
| parent | f900e5824a44ab65437b4f7e7c610b72f94820c5 (diff) | |
| parent | b9ec4e109d7a342e83e1210e05797222e36555c3 (diff) | |
Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input
* master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (26 commits)
Input: add support for Braille devices
Input: synaptics - limit rate to 40pps on Toshiba Protege M300
Input: gamecon - add SNES mouse support
Input: make modalias code respect allowed buffer size
Input: convert /proc handling to seq_file
Input: limit attributes' output to PAGE_SIZE
Input: gameport - fix memory leak
Input: serio - fix memory leak
Input: zaurus keyboard driver updates
Input: i8042 - fix logic around pnp_register_driver()
Input: ns558 - fix logic around pnp_register_driver()
Input: pcspkr - separate device and driver registration
Input: atkbd - allow disabling on X86_PC (if EMBEDDED)
Input: atkbd - disable softrepeat for dumb keyboards
Input: atkbd - fix complaints about 'releasing unknown key 0x7f'
Input: HID - fix duplicate key mapping for Logitech UltraX remote
Input: use kzalloc() throughout the code
Input: fix input_free_device() implementation
Input: initialize serio and gameport at subsystem level
Input: uinput - semaphore to mutex conversion
...
50 files changed, 813 insertions, 443 deletions
diff --git a/Documentation/input/joystick-parport.txt b/Documentation/input/joystick-parport.txt index 88a011c9f9..d537c48cc6 100644 --- a/Documentation/input/joystick-parport.txt +++ b/Documentation/input/joystick-parport.txt | |||
| @@ -36,12 +36,12 @@ with them. | |||
| 36 | 36 | ||
| 37 | All NES and SNES use the same synchronous serial protocol, clocked from | 37 | All NES and SNES use the same synchronous serial protocol, clocked from |
| 38 | the computer's side (and thus timing insensitive). To allow up to 5 NES | 38 | the computer's side (and thus timing insensitive). To allow up to 5 NES |
| 39 | and/or SNES gamepads connected to the parallel port at once, the output | 39 | and/or SNES gamepads and/or SNES mice connected to the parallel port at once, |
| 40 | lines of the parallel port are shared, while one of 5 available input lines | 40 | the output lines of the parallel port are shared, while one of 5 available |
| 41 | is assigned to each gamepad. | 41 | input lines is assigned to each gamepad. |
| 42 | 42 | ||
| 43 | This protocol is handled by the gamecon.c driver, so that's the one | 43 | This protocol is handled by the gamecon.c driver, so that's the one |
| 44 | you'll use for NES and SNES gamepads. | 44 | you'll use for NES, SNES gamepads and SNES mice. |
| 45 | 45 | ||
| 46 | The main problem with PC parallel ports is that they don't have +5V power | 46 | The main problem with PC parallel ports is that they don't have +5V power |
| 47 | source on any of their pins. So, if you want a reliable source of power | 47 | source on any of their pins. So, if you want a reliable source of power |
| @@ -106,7 +106,7 @@ A, Turbo B, Select and Start, and is connected through 5 wires, then it is | |||
| 106 | either a NES or NES clone and will work with this connection. SNES gamepads | 106 | either a NES or NES clone and will work with this connection. SNES gamepads |
| 107 | also use 5 wires, but have more buttons. They will work as well, of course. | 107 | also use 5 wires, but have more buttons. They will work as well, of course. |
| 108 | 108 | ||
| 109 | Pinout for NES gamepads Pinout for SNES gamepads | 109 | Pinout for NES gamepads Pinout for SNES gamepads and mice |
| 110 | 110 | ||
| 111 | +----> Power +-----------------------\ | 111 | +----> Power +-----------------------\ |
| 112 | | 7 | o o o o | x x o | 1 | 112 | | 7 | o o o o | x x o | 1 |
| @@ -454,6 +454,7 @@ uses the following kernel/module command line: | |||
| 454 | 6 | N64 pad | 454 | 6 | N64 pad |
| 455 | 7 | Sony PSX controller | 455 | 7 | Sony PSX controller |
| 456 | 8 | Sony PSX DDR controller | 456 | 8 | Sony PSX DDR controller |
| 457 | 9 | SNES mouse | ||
| 457 | 458 | ||
| 458 | The exact type of the PSX controller type is autoprobed when used so | 459 | The exact type of the PSX controller type is autoprobed when used so |
| 459 | hot swapping should work (but is not recomended). | 460 | hot swapping should work (but is not recomended). |
diff --git a/arch/alpha/kernel/setup.c b/arch/alpha/kernel/setup.c index dd87696705..a15e18a002 100644 --- a/arch/alpha/kernel/setup.c +++ b/arch/alpha/kernel/setup.c | |||
| @@ -28,6 +28,7 @@ | |||
| 28 | #include <linux/init.h> | 28 | #include <linux/init.h> |
| 29 | #include <linux/string.h> | 29 | #include <linux/string.h> |
| 30 | #include <linux/ioport.h> | 30 | #include <linux/ioport.h> |
| 31 | #include <linux/platform_device.h> | ||
| 31 | #include <linux/bootmem.h> | 32 | #include <linux/bootmem.h> |
| 32 | #include <linux/pci.h> | 33 | #include <linux/pci.h> |
| 33 | #include <linux/seq_file.h> | 34 | #include <linux/seq_file.h> |
| @@ -1478,3 +1479,20 @@ alpha_panic_event(struct notifier_block *this, unsigned long event, void *ptr) | |||
| 1478 | #endif | 1479 | #endif |
| 1479 | return NOTIFY_DONE; | 1480 | return NOTIFY_DONE; |
| 1480 | } | 1481 | } |
| 1482 | |||
| 1483 | static __init int add_pcspkr(void) | ||
| 1484 | { | ||
| 1485 | struct platform_device *pd; | ||
| 1486 | int ret; | ||
| 1487 | |||
| 1488 | pd = platform_device_alloc("pcspkr", -1); | ||
| 1489 | if (!pd) | ||
| 1490 | return -ENOMEM; | ||
| 1491 | |||
| 1492 | ret = platform_device_add(pd); | ||
| 1493 | if (ret) | ||
| 1494 | platform_device_put(pd); | ||
| 1495 | |||
| 1496 | return ret; | ||
| 1497 | } | ||
| 1498 | device_initcall(add_pcspkr); | ||
diff --git a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c index 8c08660b4e..eacc3f0a2e 100644 --- a/arch/i386/kernel/setup.c +++ b/arch/i386/kernel/setup.c | |||
| @@ -34,6 +34,7 @@ | |||
| 34 | #include <linux/initrd.h> | 34 | #include <linux/initrd.h> |
| 35 | #include <linux/bootmem.h> | 35 | #include <linux/bootmem.h> |
| 36 | #include <linux/seq_file.h> | 36 | #include <linux/seq_file.h> |
| 37 | #include <linux/platform_device.h> | ||
| 37 | #include <linux/console.h> | 38 | #include <linux/console.h> |
| 38 | #include <linux/mca.h> | 39 | #include <linux/mca.h> |
| 39 | #include <linux/root_dev.h> | 40 | #include <linux/root_dev.h> |
| @@ -1547,6 +1548,23 @@ void __init setup_arch(char **cmdline_p) | |||
| 1547 | #endif | 1548 | #endif |
| 1548 | } | 1549 | } |
| 1549 | 1550 | ||
| 1551 | static __init int add_pcspkr(void) | ||
| 1552 | { | ||
| 1553 | struct platform_device *pd; | ||
| 1554 | int ret; | ||
| 1555 | |||
| 1556 | pd = platform_device_alloc("pcspkr", -1); | ||
| 1557 | if (!pd) | ||
| 1558 | return -ENOMEM; | ||
| 1559 | |||
| 1560 | ret = platform_device_add(pd); | ||
| 1561 | if (ret) | ||
| 1562 | platform_device_put(pd); | ||
| 1563 | |||
| 1564 | return ret; | ||
| 1565 | } | ||
| 1566 | device_initcall(add_pcspkr); | ||
| 1567 | |||
| 1550 | #include "setup_arch_post.h" | 1568 | #include "setup_arch_post.h" |
| 1551 | /* | 1569 | /* |
| 1552 | * Local Variables: | 1570 | * Local Variables: |
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 5080ea1799..e15709ce88 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig | |||
| @@ -233,6 +233,7 @@ config MACH_JAZZ | |||
| 233 | select ARC32 | 233 | select ARC32 |
| 234 | select ARCH_MAY_HAVE_PC_FDC | 234 | select ARCH_MAY_HAVE_PC_FDC |
| 235 | select GENERIC_ISA_DMA | 235 | select GENERIC_ISA_DMA |
| 236 | select I8253 | ||
| 236 | select I8259 | 237 | select I8259 |
| 237 | select ISA | 238 | select ISA |
| 238 | select SYS_HAS_CPU_R4X00 | 239 | select SYS_HAS_CPU_R4X00 |
| @@ -530,6 +531,7 @@ config QEMU | |||
| 530 | select DMA_COHERENT | 531 | select DMA_COHERENT |
| 531 | select GENERIC_ISA_DMA | ||
