Commit Graph

38 Commits

Author SHA1 Message Date
David Howells
607ca46e97 UAPI: (Scripted) Disintegrate include/linux
Signed-off-by: David Howells <dhowells@redhat.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Michael Kerrisk <mtk.manpages@gmail.com>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Dave Jones <davej@redhat.com>
2012-10-13 10:46:48 +01:00
Axel Lin
fa7f86d157 Input: serio - add helper macro for serio_driver boilerplate
This patch introduces the module_serio_driver macro which is a
convenience macro for serio driver modules similar to
module_platform_driver. It is intended to be used by drivers
which init/exit section does nothing but registers/unregisters
the serio driver. By using this macro it is possible to eliminate
a few lines of boilerplate code per serio driver.

Based on work done by Lars-Peter Clausen <lars@metafoo.de> for
other buses (i2c and spi).

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2012-04-04 09:25:42 -07:00
Paul Gortmaker
eb5589a8f0 include: convert various register fcns to macros to avoid include chaining
The original implementations reference THIS_MODULE in an inline.
We could include <linux/export.h>, but it is better to avoid chaining.

Fortunately someone else already thought of this, and made a similar
inline into a #define in <linux/device.h> for device_schedule_callback(),
[see commit 523ded71de] so follow that precedent here.

Also bubble up any __must_check that were used on the prev. wrapper inline
functions up one to the real __register functions, to preserve any prev.
sanity checks that were used in those instances.

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2011-10-31 19:32:32 -04:00
Sebastian Andrzej Siewior
f01536e3d6 Input: add a driver for TSC-40 serial touchscreen
This patch adds the TSC-40 serial touchscreen driver and should be
compatible with TSC-10 and TSC-25.

The driver was written by Linutronix on behalf of Bachmann electronic GmbH.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2011-09-28 10:24:14 -07:00
Dmitry Eremin-Solenikov
fc58d12be4 Input: serio - add support for PS2Mult multiplexer protocol
PS2Mult is a simple serial protocol used for multiplexing several PS/2
streams into one serial data stream. It's used e.g. on TQM85xx series
of boards.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-10-18 09:33:31 -07:00
Dmitry Eremin-Solenikov
0982258264 Input: serio - support multiple child devices per single parent
Some (rare) serio devices need to have multiple serio children. One of
the examples is PS/2 multiplexer present on several TQC STKxxx boards,
which connect PS/2 keyboard and mouse to single tty port.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-10-13 07:49:28 -07:00
Dmitry Torokhov
7fc49c498c Input: serio_driver - drop private pointer
Nobody uses it anymore.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-09-14 00:23:48 -07:00
Dmitry Torokhov
ceee42714c Input: serio_driver - mark id_table and description as const
Memory pointed to by these fields is not supposed to change.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-09-14 00:22:56 -07:00
Adam Bennett
422dee56b8 Input: add driver for hampshire serial touchscreens
Adds support for Hampshire TSHARC serial touchscreens.  Implements
Hampshire's 4-byte communication protocol.

Signed-off-by: Adam Bennett <abennett72@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-04-13 23:27:41 -07:00
Dmitry Torokhov
7755726fe9 Merge commit 'v2.6.33-rc5' into next 2010-01-21 23:55:25 -08:00
Dmitry Torokhov
ddf1ffbd40 Input: serio - let device core tell us if device was registered
No need to keep track of it by ourselves.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-01-06 00:22:00 -08:00
Eric W. Biederman
59b015133c Input: serio - fix potential deadlock when unbinding drivers
sysfs_remove_group() waits for sysfs attributes to be removed, therefore
we do not need to worry about driver-specific attributes being accessed
after driver has been detached from the device. In fact, attempts to take
serio->drv_mutex in attribute methods may lead to the following deadlock:

                                          sysfs_read_file()
                                            fill_read_buffer()
                                              sysfs_get_active_two()
                                                psmouse_attr_show_helper()
                                                  serio_pin_driver()
serio_disconnect_driver()
  mutex_lock(&serio->drv_mutex);
                                <-------->        mutex_lock(&serio_drv_mutex);
    psmouse_disconnect()
      sysfs_remove_group(... psmouse_attr_group);
        ....
        sysfs_deactivate();
          wait_for_completion();

Fix this by removing calls to serio_[un]pin_driver() and functions themselves
and using driver-private mutexes to serialize access to attribute's set()
methods that may change device state.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2010-01-06 00:14:32 -08:00
Tias Guns
a5f523bc0c Input: add driver for Dynapro serial touchscreen
This is a driver for Dynapro serial touchscreen, which used to be
supported in Xorg. The driver needs updated inputattach utility to
initialize serial port and create proper serio device before the
driver will be bound to it.

Signed-off-by: Tias Guns <tias@ulyssis.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-10-26 11:01:30 -07:00
Dmitry Torokhov
633aae23ff Input: serio - switch to using dev_pm_ops
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-07-26 11:17:01 -07:00
Dmitry Torokhov
7e044e056a Input: serio - do not use deprecated dev.power.power_state
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-05-09 16:10:18 -07:00
Dmitry Torokhov
ab96ddec72 Input: serio - fix protocol number for TouchIT213
Protocol 0x37 has been reserved for iNexio devices and Sahara
was supposed to get 0x38.

Reported-by: Claudio Nieder <private@claudio.ch>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-03-07 18:41:38 -08:00
Jaya Kumar
3eb1aa43ef Input: add support for Wacom W8001 penabled serial touchscreen
The Wacom W8001 sensor is a sensor device (uses electromagnetic
resonance) and it is interfaced via its serial microcontroller
to the host.

Signed-off-by: Jaya Kumar <jayakumar.lkml@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-11-24 11:41:38 -05:00
Dmitry Torokhov
a822bea796 Input: serio - mark serio_register_driver() __must_check
Also remove extra declaration of serio_register_driver().

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-23 14:01:49 -04:00
Niels de Vos
f3d1eb19ab Input: serio - trivial documentation fix
In include/linux/serio.h two different define-series are documented as
"Serio types". However the second series contains defines for the
different protocols.

Signed-off-by: Niels de Vos <niels.devos@wincor-nixdorf.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-08 10:33:01 -04:00
Claudio Nieder
7342239273 Input: add driver for Tabletkiosk Sahara TouchIT-213 touchscreen
Signed-off-by: Claudio Nieder <private@claudio.ch>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-07 12:00:30 -04:00
Richard Lemon
3cadd2d989 Input: Add driver for iNexio serial touchscreen.
Signed-off-by: Richard Lemon <richard@codelemon.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-06-30 09:37:32 -04:00
Martin Kebert
3e24e2b5ae Input: add Zhen Hua driver
This is a driver for Zhen Hua PPM-4CH RC transmitter (commonly used in cheap
Ready To Fly RC helicopters by Walkera) which using "Zhen Hua 5-byte protocol"
for using them as a four axis joystick via serial port.  Transmitter connected
to serial port (19200 8N1) sending periodically 5 bytes where first byte is for
synchronization and next four bytes are values of axis.

Signed-off-by: Martin Kebert <gkmarty@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-04-15 13:26:52 -04:00
Dmitry Torokhov
85f202d5df Input: add driver for Fujitsu serial touchscreens
These serial touchscreens are found on some Fujitsu lifebook
P-series laptops, and the B6210. Using this requires a new
version of inputattach and doing:

 inputattach -fjt /dev/ttyS0

Big thanks to Stephen Hemminger for testing it and making it
work on his B6210 laptop.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-07-18 00:37:01 -04:00
Jean Delvare
b9cdad7488 i2c: New bus driver for the TAOS evaluation modules
This is a new I2C bus driver for the TAOS evaluation modules. Developped
and tested on the TAOS TSL2550 EVM.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
2007-07-12 14:12:31 +02:00
Dmitry Torokhov
82dd9eff4b Input: i8042 - let serio bus suspend ports
Let serio subsystem take care of suspending the ports; concentrate
on suspending/resuming the controller itself.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2007-02-18 01:40:30 -05:00