summaryrefslogtreecommitdiff
path: root/drivers/input/joydev.c
AgeCommit message (Collapse)Author
2007-06-04Merge branch 'for-linus' of ↵Linus Torvalds
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: Input: reduce raciness when input handlers disconnect Input: ucb1x00 - do not access input_dev->private directly Input: logips2pp - fix typo in Kconfig Input: db9 - do not ignore dev2 module parameter
2007-06-03Input: reduce raciness when input handlers disconnectDmitry Torokhov
There is a race between input handler's release() and disconnect() methods: when input handler disconnects it wakes up all regular users and then process to walk user list to wake up async. users. While disconnect() walks the list release() removes elements of the same list causing oopses. While this is not a substibute for proper locking we can reduce odds of getting an oops if we wake up normal readers after walking the list. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-05-08header cleaning: don't include smp_lock.h when not usedRandy Dunlap
Remove includes of <linux/smp_lock.h> where it is not used/needed. Suggested by Al Viro. Builds cleanly on x86_64, i386, alpha, ia64, powerpc, sparc, sparc64, and arm (all 59 defconfigs). Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-04Merge branch 'for-linus' of ↵Linus Torvalds
master.kernel.org:/pub/scm/linux/kernel/git/dtor/input * 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/dtor/input: (65 commits) Input: gpio_keys - add support for switches (EV_SW) Input: cobalt_btns - convert to use polldev library Input: add skeleton for simple polled devices Input: update some documentation Input: wistron - fix typo in keymap for Acer TM610 Input: add input_set_capability() helper Input: i8042 - add Fujitsu touchscreen/touchpad PNP IDs Input: i8042 - add Panasonic CF-29 to nomux list Input: lifebook - split into 2 devices Input: lifebook - add signature of Panasonic CF-29 Input: lifebook - activate 6-byte protocol on select models Input: lifebook - work properly on Panasonic CF-18 Input: cobalt buttons - separate device and driver registration Input: ati_remote - make button repeat sensitivity configurable Input: pxa27x - do not use deprecated SA_INTERRUPT flag Input: ucb1400 - make delays configurable Input: misc devices - switch to using input_dev->dev.parent Input: joysticks - switch to using input_dev->dev.parent Input: touchscreens - switch to using input_dev->dev.parent Input: mice - switch to using input_dev->dev.parent ... Fixed up conflicts with core device model removal of "struct subsystem" manually. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-05-02remove "struct subsystem" as it is no longer neededGreg Kroah-Hartman
We need to work on cleaning up the relationship between kobjects, ksets and ktypes. The removal of 'struct subsystem' is the first step of this, especially as it is not really needed at all. Thanks to Kay for fixing the bugs in this patch. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-04-12Input: handlers - handle errors from input_open_device()Dmitry Torokhov
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-04-12Input: handlers - rename 'list' to 'client'Dmitry Torokhov
The naming convention in input handlers was very confusing - client stuctures were called lists, regular lists were also called lists making anyone looking at the code go mad. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-04-12Input: rework handle creation codeDmitry Torokhov
- consolidate code for binding handlers to a device - return error codes from handlers connect() methods back to input core and log failures Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14Input: make input_register_handler() return error codesDmitry Torokhov
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-09-14Input: constify input coreDmitry Torokhov
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-06-26Input: fix formatting to better follow CodingStyleDmitry Torokhov
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2006-03-14Input: use kzalloc() throughout the codeEric Sesterhenn
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-10-28[PATCH] INPUT: Create symlinks for backwards compatibilityGreg Kroah-Hartman
This creates symlinks in /sys/class/input/ to the nested class devices to help userspace cope with the nesting. Unfortunatly udev still needs to be updated as it can't handle symlinks properly here :( Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-28[PATCH] INPUT: rename input_dev_class to input_class to be correct.Greg Kroah-Hartman
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-28[PATCH] INPUT: move the input class devices under their new input_dev devicesGreg Kroah-Hartman
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-28[PATCH] Input: kill devfs referencesDmitry Torokhov
Input: remove references to devfs from input subsystem Signed-off-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-10-28[PATCH] Driver Core: fix up all callers of class_device_create()Greg Kroah-Hartman
The previous patch adding the ability to nest struct class_device changed the paramaters to the call class_device_create(). This patch fixes up all in-kernel users of the function. Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-07-11Input: joydev - remove custom conversion from jiffies to msecsTobias Klauser
Replace the MSECS() macro with the jiffies_to_msecs() function provided in jiffies.h Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch> Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-06-27Merge rsync://rsync.kernel.org/pub/scm/linux/kernel/git/dtor/input.git manuallyLinus Torvalds
Some manual fixups required due to clashes with the PF_FREEZE cleanups.
2005-06-20[PATCH] INPUT: move to use the new class code, instead of class_simplegregkh@suse.de
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2005-05-29Input: This patch implements compat_ioctl for joydev.Jeremy Fitzhardinge
I've tested it with a Logitech WingMan Rumblepad on an x86-64 machine, and on an ia32 machine to make sure I didn't break anything. Signed-off-by: Jeremy Fitzhardinge <jeremy@goop.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-05-28Input: Fix button mapping in joydev - BTN_TRIGGER was beingVojtech Pavlik
mapped twice, resulting in it being the last (instead of first) button on a joystick. Signed-off-by: Vojtech Pavlik <vojtech@suse.cz> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2005-02-24input: Fix usage of *_MAX macros. Check keycode in KDIOSKEYCODE andVojtech Pavlik
EVIOCSKEYCODE macros to be <= KEY_MAX. Check off-by one mistakes in keycodemax usage. There was a lot of potential for overwriting memory. Also enlarge NR_KEYS to 256 while we're at it. Found-by: Georgi Guninski <guninski@guninski.com> Initial-patch-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
2005-02-07input: Do a kill_fasync() in input handlers on device disconnectVojtech Pavlik
to notify a client using poll() that the device is gone. Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
2005-02-06input: Fix poll() behavior of input handlers on disconnect.Vojtech Pavlik
Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
2004-10-21Input: evdev, joydev, mousedev, tsdev - remove class device and devfsDmitry Torokhov
entry when hardware driver disconnects instead of waiting for the last user to drop off. This way hardware drivers can be unloaded at any time. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2004-07-27Input: fix reader wakeup conditions in mousedev, joydev and tsdevDmitry Torokhov
(we want readers to wake up when underlying device is gone so they would get -ENODEV and close the device). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2004-06-17[PATCH] sparse: drivers/input annotationsAlexander Viro
Trivial annotations in drivers/input
2004-05-09Input: trailing whitespace fixes in drivers/inputDmitry Torokhov
2004-01-20input: Manual merge.Vojtech Pavlik
2004-01-20input: Properly recompute initial values upon recalibration in joydev.Glenn Burkhardt
2004-01-19[PATCH] Input: add sysfs class support for input devicesGreg Kroah-Hartman
This patch adds sysfs support for all input devices. It also provides the "device" and "driver" symlink for all Input devices that specify it.
2004-01-15input: Move devfs entries for joystick into /dev/inputAndrey Borzenkov
2003-12-18[PATCH] Add black list to handler<->device matchingDmitry Torokhov
Input: Introduce an optional blacklist field in input_handler structure. When loading a new device or a new handler try to match device against handler's black list before doing match on required attributes. This allows to get rid of "surprises" in connect functions, IMO connect should only fail when it physically can not connect, not because it decides it does not like device.
2003-08-30[PATCH] dev_t handling cleanups (10/12)Alexander Viro
new helper - iminor(inode); defined as minor(inode->i_rdev); lots and lots of places in drivers had been switched to it.
2003-05-07[PATCH] devfs: API changesAndrew Morton
From: Christoph Hellwig <hch@lst.de> Some people may already have noticed that I've been revamping the devfs API recently. The worst offender still left is devfs_register, it's prototype is: devfs_handle_t devfs_register(devfs_handle_t dir, const char *name, unsigned int flags, unsigned int major, unsigned int minor, umode_t mode, void *ops, void *info) Of these: - dir and flags are always zero - the return value is never used - info is only used in one driver which doesn't even need it for operation - umode_t always describes a character device - name very often comes from a stack buffer we sprintf'ed into so obviously we really want a much simpler API instead. My first draft for this was: int devfs_mk_cdev(dev_t dev, umode_t mode, struct file_operations *fops, void *info, const char *fmt, ...) this removes the unused argumens, switches to a proper dev_t for the device number and allows to directly use a printf-like expression as name, getting rid of the temporary buffers. Now Al has reappeared and put the first steps of his CIDR for charater device on public ftp and we'll soon have a similar lookup object + fops mechanism in generic code as we already habe for blockdevices, i.e. the devfs code to assign fops from an entry will become superflous as generic code already does it. That means the fops and info arguments are obsolete before they were introduced, so I'd like to propose the following API instead: int devfs_mk_cdev(dev_t dev, umode_t mode, const char *fmt, ...) which is much nicer anyway. The educated reader will notice that this is exactly the same prototype devfs_mk_bdev has so I'll probably get suggestions to merge those two into some kind of devfs_mk_node soon. Personally I don't like that as character and blockdevices are two really separate entinities and I'll like to keep them as separate as possible. Example patch that introduces the API and converts drivers/input attached. Every driver which calls devfs_mk_cdev (about 50) needs conversion. Note that the transition can happen in pieces - devfs_register continues to work after this patch, it's just the plan to get rid of it in the end.
2003-04-28driver core: fix up the input_class logic due to the class changes.Greg Kroah-Hartman
2003-04-23[PATCH] don't include devfs_fs_kernel.h in global headersChristoph Hellwig
Now that devfs_handle_t is gone from all structs there is no reason to include it in headers. Fix the fallout by including previously implicit headers and fixing the drivers that didn't include devfs_fs_kernel.h explicitly.
2003-04-20[PATCH] devfs: inputChristoph Hellwig
Make sure input always uses devfs_remove. While at it I've also remove lots of code duplication - every upper input driver contained the code surrounding devfs_unregister in two identical copies.
2003-02-12input.c: joydev/mousedev updateVojtech Pavlik
- relax requirements on devices, joydev now allows joysticks without buttons to work with throttles and pedals, mousedev allows a separate mouse wheel - remove a stray semicolon in joydev
2002-11-09Handle return values from interface_register() and misc_register()Michael Still
in the input drivers.
2002-09-25Convert more of input to list.h usage.Vojtech Pavlik
2002-08-26Define a struct device_interface for all the input interfaces and register Patrick Mochel
them with the input device class when started up.
2002-07-25Apply Rusty's C99 initializer patch to input drivers.Vojtech Pavlik
Fix cli() breakage in input (gameport) drivers.
2002-07-03Update the input handler modules to latest versions.Vojtech Pavlik
2002-02-06[PATCH] Input drivers, step #3Vojtech Pavlik
This patch updates the input core to the current version, fixing a bunch of bugs, adding hotplug support and a listing of available input devices in /proc. The later is very useful for troubleshooting. Vojtech Pavlik SuSE Labs
2002-02-04v2.5.1.6 -> v2.5.1.7Linus Torvalds
- Jeff Garzik: fix up loop and md for struct kdev_t typechecking - Jeff Garzik: improved old-tulip network driver - Arnaldo: more scsi driver bio updates - Kai Germaschewski: ISDN updates - various: kdev_t updates
2002-02-04v2.5.1.3 -> v2.5.1.4Linus Torvalds
- Jens Axboe: more bio updates, fix some request list bogosity under load - Al Viro: export seq_xxx functions - Manfred Spraul: include file cleanups, pc110pad compile fix - David Woodhouse: fix JFFS2 write error handling - Dave Jones: start merging up with 2.4.x patches - Manfred Spraul: coredump fixes, FS event counter cleanups - me: fix SCSI CD-ROM sectorsize BIO breakage
2002-02-04v2.5.0.2 -> v2.5.0.3Linus Torvalds
- Al Viro: more superblock cleanups - Jens Axboe: more patches for new block IO layer - Christoph Hellwig: get rid of the old, long- deprecated SCSI error handling
2002-02-04v2.4.10.1 -> v2.4.10.2Linus Torvalds
- me/Al Viro: fix bdget() oops with block device modules that don't clean up after they exit - Alan Cox: continued merging (drivers, license tags) - David Miller: sparc update, network fixes - Christoph Hellwig: work around broken drivers that add a gendisk more than once - Jakub Jelinek: handle more ELF loading special cases - Trond Myklebust: NFS client and lockd reclaimer cleanups/fixes - Greg KH: USB updates - Mikael Pettersson: sparate out local APIC / IO-APIC config options