Commit graph

165 commits

Author SHA1 Message Date
Arnd Bergmann
08604bd993 time: move PIT_TICK_RATE to linux/timex.h
PIT_TICK_RATE is currently defined in four architectures, but in three
different places.  While linux/timex.h is not the perfect place for it, it
is still a reasonable replacement for those drivers that traditionally use
asm/timex.h to get CLOCK_TICK_RATE and expect it to be the PIT frequency.

Note that for Alpha, the actual value changed from 1193182UL to 1193180UL.
 This is unlikely to make a difference, and probably can only improve
accuracy.  There was a discussion on the correct value of CLOCK_TICK_RATE
a few years ago, after which every existing instance was getting changed
to 1193182.  According to the specification, it should be
1193181.818181...

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Len Brown <lenb@kernel.org>
Cc: john stultz <johnstul@us.ibm.com>
Cc: Dmitry Torokhov <dtor@mail.ru>
Cc: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-06-16 19:47:27 -07:00
Alessio Igor Bogani
492d0f95e6 trivial: input/misc: Fix typo in Kconfig
Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2009-06-12 18:01:48 +02:00
Alexander Beregalov
d061ebd57a Input: hp_sdc_rtc should depend on serio
Fix this build error when CONFIG_SERIO is not set
hp_sdc_rtc.c:691: undefined reference to `hp_sdc_request_timer_irq'
and so on..

"select should be used with care. select will force
a symbol to a value without visiting the dependencies."

Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-04-15 08:58:19 -07:00
Dmitry Torokhov
74f733c725 Input: arrange drivers/input/misc/Makefile in alphabetical order
Everyone adds their driver to the end of the list, hopefully if it is
in alphabetical order new drivers will spread out a bit and I can merge
them more easily.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-03-09 20:15:42 -07:00
Phil Sutter
d9bdffd210 Input: add driver for S1 button of rb532
Mikrotik's Routerboard 532 has two builtin buttons, from which one
triggers a hardware reset. The other one is accessible through GPIO
pin 1. Sadly, this pin is being multiplexed with UART0 input, so
enabling it as interrupt source (as implied by the gpio-keys driver)
is not possible unless UART0 has been turned off. The later one though
is a rather bad idea as the Routerboard is an embedded device with
only a single serial port, so it's almost always used as serial
console device.

This patch adds a driver based on INPUT_POLLDEV, which disables the
UART and reconfigures GPIO pin 1 temporarily while reading the button
state.  This procedure works fine and has been tested as part of
another, unpublished driver for this device.

Signed-off-by: Phil Sutter <n0-1@freewrt.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-03-09 20:10:12 -07:00
Daniel Mack
73969ff0ed Input: generic driver for rotary encoders on GPIOs
This patch adds a generic driver for rotary encoders connected to GPIO
pins of a system. It relies on gpiolib and generic hardware irqs. The
documentation that also comes with this patch explains the concept and
how to use the driver.

Signed-off-by: Daniel Mack <daniel@caiaq.de>
Tested-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-03-08 16:35:53 -07:00
Dmitry Torokhov
d15c22e786 Merge commit 'v2.6.29-rc7' into next 2009-03-08 16:30:55 -07:00
Ville Syrjala
8a49cfa9de Input: ati_remote2 - check module params
Validate that the values of the module parameters are within the
supported range. Also print the values in hex since that seems like
a better match for bitmasks than decimal.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-29 23:43:42 -08:00
Ville Syrjala
d329e33c7c Input: ati_remote2 - add per device attrs
Add per device channel_mask and mode_mask attributes. They inherit
the values from the module parameters when the device is registered.
One additional benefit is that now runtime changes to channel_mask
can actually affect the hardware channel setup like they should.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-29 23:43:35 -08:00
Ville Syrjala
169bc1efa8 Input: ati_remote2 - complete suspend support
Add the missing reset_resume, pre_reset and post_reset hooks.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2009-01-29 23:43:29 -08:00
Balaji Rao
1851b06ac4 input: PCF50633 input driver
Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
Cc: Andy Green <andy@openmoko.com>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Samuel Ortiz <sameo@openedhand.com>
2009-01-11 01:34:25 +01:00
Jean Delvare
1561bfe59c Input: apanel - convert to new i2c binding
Convert the apanel driver to the new i2c device driver binding model,
as the legacy model is going away soon. In the new model, the apanel
driver is no longer scanning all the i2c adapters, instead the
relevant bus driver (i2c-i801) is instantiating the device as needed.

One side benefit is that the apanel driver will now load automatically
on all systems where it is needed.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Stephen Hemminger <shemminger@linux-foundation.org>
2009-01-07 14:29:17 +01:00
Dmitry Torokhov
93b8eef1c0 Merge commit 'v2.6.28-rc9' into next 2008-12-20 04:54:54 -05:00
Linus Torvalds
b31a0fecd1 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:
  Input: wacom - add support for new USB Tablet PCs
  Input: replace spin_lock_bh with spin_lock_irqsave in ml_ff_playback
  Input: i8042 - add Compal Hel80 laptop to nomux blacklist
  Input: cm109 - add keymap for ATCom AU-100 phone
  Input: fix the example of an input device driver
  Input: psmouse - fix incorrect validate_byte check in OLPC protocol
  Input: atkbd - cancel delayed work before freeing its structure
  Input: atkbd - add keymap quirk for Inventec Symphony systems
  Input: i8042 - add Dell XPS M1530 to nomux list
  Input: elo - fix format string in elo driver
2008-11-30 11:05:21 -08:00
Zoltan Devai
59bdb43769 Input: pcspkr - fix PIT lockup on some chipsets
There've been reports [1] about the sysem bell causing a hard
lockup.  My machine was affected as well: any speaker output hung
the machine completely, nothing in the logs, no magic sysrq,
etc., looked like a hardware problem.  Had a closer look on the
issue, and it turned out that the pcspkr module is responsible.
The cause is the bad setup of Timer 2 in the i8253 controller,
which probably hangs the whole PIT controller.

Intel datasheets [2] state that the timer registers are in an
undefined state after reset and they need to be programmed before
enabling the timer. (And enabling without programming the
frequency first doesn't make sense anyway).

I don't know which chipsets are affected (if not all), it also
depends on the BIOS whether it initializes the timer (e.g. to
beep when you start the machine).

The following patch solved the issue on my ICH6 notebook,
couldn't test it with any others, but should be safe to apply.

[1]
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/146151
https://bugs.launchpad.net/ubuntu/+bug/270790
http://ubuntuforums.org/showthread.php?t=227693
http://bugs.gentoo.org/show_bug.cgi?id=222583
https://bugzilla.redhat.com/show_bug.cgi?id=454225

[2]
http://www.intel.com/assets/pdf/datasheet/252516.pdf
http://www.intel.com/assets/pdf/datasheet/301473.pdf
http://www.intel.com/design/chipsets/datashts/29065503.pdf

Signed-off-by: Zoltan Devai <zdevai@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-11-19 16:54:59 -05:00
Daniel Gimpelevich
734f0bae95 Input: cm109 - add keymap for ATCom AU-100 phone
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-11-11 14:02:13 -05:00
Al Viro
233e70f422 saner FASYNC handling on file close
As it is, all instances of ->release() for files that have ->fasync()
need to remember to evict file from fasync lists; forgetting that
creates a hole and we actually have a bunch that *does* forget.

So let's keep our lives simple - let __fput() check FASYNC in
file->f_flags and call ->fasync() there if it's been set.  And lose that
crap in ->release() instances - leaving it there is still valid, but we
don't have to bother anymore.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-11-01 09:49:46 -07:00
Philip Langdale
2d56f3a32c Input: refactor evdev 32bit compat to be shareable with uinput
Currently, evdev has working 32bit compatibility and uinput does not. uinput
needs the input_event code that evdev uses, so let's refactor it so it can
be shared.

[dtor@mail.ru: add fix for force feedback compat issues]
Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-10-27 22:03:42 -04:00
Dmitri Vorobiev
4c2bdcdc62 INPUT: sgi_btns: Add license specification
The SGI Volume Button interface driver uses GPL-only symbols
platform_driver_unregister and platform_driver_register, but
lacks license specification. Thus, when compiled as a module,
this driver cannot be installed. This patch fixes this by
adding the MODULE_LICENSE() specification.

Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@movial.fi>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2008-10-27 16:18:28 +00:00
Greg Kroah-Hartman
899ef6e7cf USB: remove info() macro from usb input drivers
USB should not be having it's own printk macros, so remove info() and
use the system-wide standard of dev_info() wherever possible.

Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17 14:41:10 -07:00
Greg Kroah-Hartman
1817b1692a USB: remove warn() macro from usb input drivers
USB should not be having it's own printk macros, so remove warn() and
use the system-wide standard of dev_warn() wherever possible.  In the
few places that will not work out, use a basic printk().

Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2008-10-17 14:41:08 -07:00
Linus Torvalds
36ac1d2f32 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: (32 commits)
  Input: wm97xx - update email address for Liam Girdwood
  Input: i8042 - add Thinkpad R31 to nomux list
  Input: move map_to_7segment.h to include/linux
  Input: ads7846 - fix cache line sharing issue
  Input: cm109 - add missing newlines to messages
  Input: document i8042.debug in kernel-parameters.txt
  Input: keyboard - fix potential out of bound access to key_map
  Input: psmouse - add OLPC touchpad driver
  Input: psmouse - tweak PSMOUSE_DEFINE_ATTR to support raw set callbacks
  Input: psmouse - add psmouse_queue_work() for ps/2 extension to make use of
  Input: psmouse - export psmouse_set_state for ps/2 extensions to use
  Input: ads7846 - introduce .gpio_pendown to get pendown state
  Input: ALPS - add signature for DualPoint found in Dell Latitude E6500
  Input: serio_raw - allow attaching to translated (SERIO_I8042XL) ports
  Input: cm109 - don't use obsolete logging macros
  Input: atkbd - expand Latitude's force release quirk to other Dells
  Input: bf54x-keys - add power management support
  Input: atmel_tsadcc - improve accuracy
  Input: convert drivers to use strict_strtoul()
  Input: appletouch - handle geyser 3/4 status bits
  ...
2008-10-16 11:52:08 -07:00
Dmitry Torokhov
4c0e799a9a Merge branch 'next' into for-linus 2008-10-15 23:29:12 -04:00
Geert Uytterhoeven
7477fb6fbc HP input: kill warnings due to suseconds_t differences
Kill compiler warnings related to printf() formats in the input drivers for
various HP9000 machines, which are shared between PA-RISC (suseconds_t is int)
and m68k (suseconds_t is long). As both are 32-bit, it's safe to cast to int.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Helge Deller <deller@gmx.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-14 10:23:27 -07:00
Atsushi Nemoto
f9da8d157b Input: move map_to_7segment.h to include/linux
The map_to_7segment.h provides generic 7segment LED mappings and is
designed to be used by other drivers.  Moving it to common area will
make it more usable.  Also exporting it to userspace will help users
of sysfs interface.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Acked-by: Henk Vergonet <henk.vergonet@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-10-10 23:16:16 -04:00
Daniel Gimpelevich
2d517cab01 Input: cm109 - add missing newlines to messages
Recent conversion from err(), warn(), info() to dev_* variants caused loss
of newlines at the end of messages, add them back.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-10-09 00:48:57 -04:00
Stephen Rothwell
67d47641b5 Input: cm109 - don't use obsolete logging macros
err(), warn(), info() are being removed in favor of dev_* variants.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-09-10 12:12:29 -04:00
David S. Miller
fd098316ef sparc: Annotate of_device_id arrays with const or __initdata.
As suggested by Stephen Rothwell.

Signed-off-by: David S. Miller <davem@davemloft.net>
2008-08-31 01:23:17 -07:00
Linus Torvalds
96d6d72d4e 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:
  Input: evdev - fix printf() format for sizeof
  Input: remove version.h from drivers that don't need it
  Input: cobalt_btns - add missing MODULE_LICENSE
2008-08-19 13:34:33 -07:00
Martin Michlmayr
26135ed322 Input: cobalt_btns - add missing MODULE_LICENSE
Export the module license and other information about the Cobalt
button module in order to avoid the following warning:

| WARNING: modpost: missing MODULE_LICENSE() in drivers/input/misc/cobalt_btns.o

Signed-off-by: Martin Michlmayr <tbm@cyrius.com>
Acked-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-08-18 11:00:37 -04:00
Remi Herilier
34a7c48c22 Input: wistron - add support for Fujitsu-Siemens Amilo Pro v3505
Wistron button support for Fujitsu-Siemens Amilo Pro Edition V3505.

Signed-off-by: Remi Herilier <rherilier@yahoo.fr>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-08-08 12:19:14 -04:00
Alfred E. Heggestad
c04148f915 Input: add driver for USB VoIP phones with CM109 chipset
Signed-off-by: Alfred E. Heggestad <aeh@db.org>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-08-08 11:54:03 -04:00
Russell King
a09e64fbc0 [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
This just leaves include/asm-arm/plat-* to deal with.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-08-07 09:55:48 +01:00
Russell King
4fb8af10d0 Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes 2008-08-07 09:55:03 +01:00
Russell King
be50972935 [ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead
Remove includes of asm/hardware.h in addition to asm/arch/hardware.h.
Then, since asm/hardware.h only exists to include asm/arch/hardware.h,
update everything to directly include asm/arch/hardware.h and remove
asm/hardware.h.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2008-08-07 09:40:08 +01:00
Ville Syrjala
d6505ab9cd Input: ati_remote2 - add autosuspend support
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-30 00:41:38 -04:00
Ville Syrjala
1971b9d56f Input: ati_remote2 - add loadable keymap support
Support for loadable keymaps. The driver now supports individual
keymaps for each of the five modes (AUX1-AUX4 and PC) of the
remote. To achieve this the keymap scancode is interpreted as a
combination of the mode and actual button scancode. The original
keycode patches were done by Peter Stokes <linux@dadeos.co.uk>
but I modified it quite a lot.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-30 00:41:38 -04:00
Linus Torvalds
f934fb19ef 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:
  Input: add driver for Atmel integrated touchscreen controller
  Input: ads7846 - optimize order of calculating Rt in ads7846_rx()
  Input: ads7846 - fix sparse endian warnings
  Input: uinput - remove duplicate include
  Input: serio - offload resume to kseriod
  Input: serio - mark serio_register_driver() __must_check
2008-07-28 09:59:26 -07:00
Matthew Wilcox
0f17e4c796 Add missing semaphore.h includes
These files use semaphores but don't include semaphore.h

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
2008-07-24 08:30:48 -04:00
Huang Weiyi
53703659ab Input: uinput - remove duplicate include
Remove duplicate include file <linux/smp_lock.h> in
drivers/input/misc/uinput.c.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-23 14:02:18 -04:00
Dmitry Torokhov
908cf4b925 Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 into next 2008-07-21 00:55:14 -04:00
Thomas Bogendoerfer
48ad88b1f2 Input: sgi_btns - add support for SGI Indy volume buttons
Also rename sgio2_btns to sgi_btns since the driver is not only
for SGI O2 anymore.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-19 00:50:39 -04:00
Jonathan Corbet
2fceef397f Merge commit 'v2.6.26' into bkl-removal 2008-07-14 15:29:34 -06:00
Thomas Bogendoerfer
3bee2a04cf Input: new driver for SGI O2 volume buttons
This driver adds support for the volume buttons on the front of every
SGI O2 workstation.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-07 09:08:07 -04:00
Oliver Neukum
b4ecda3e96 Input: yealink - reliably kill urbs
Yealink uses two URBs that submit each other. This arrangement
cannot be reliably killed with usb_kill_urb() alone, as there's
a window during which the wrong URB may be killed. The fix is
to introduce a flag.

[dtor@mail.ru: remove spinlock, flag alone should be enough]
Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-07-07 09:01:49 -04:00
Arnd Bergmann
8702965848 uinput: BKL pushdown
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2008-07-02 15:06:26 -06:00
Éric Piel
a894403766 Input: wistron - generate normal key event if bluetooth or wifi not present
If the subsystem is not present, instead of not doing anything, report
the key press as a normal key. This is done by modifying at
initialization the copied key entry table.

Signed-off-by: Eric Piel <Eric.Piel@tremplin-utc.net>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
2008-06-30 09:37:51 -04:00
Arnd Bergmann
986f8b8ccf hp_sdc_rtc: BKL pushdown
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2008-06-20 14:05:57 -06:00
Linus Torvalds
952f4a0a9b 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:
  Input: appletouch - implement reset-resume logic
  Input: i8042 - retry failed CTR writes when resuming
  Input: i8042 - add Fujitsu-Siemens Amilo Pro V2030 to nomux table
  Input: pcspkr - remove negative dependency on snd-pcsp

Manually fixed up trivial conflict in drivers/usb/core/quirks.c
2008-06-17 18:10:40 -07:00
Dmitry Torokhov
15439dd37f Merge branch 'for-linus' into next
Conflicts:

	drivers/input/mouse/appletouch.c
2008-06-17 12:02:44 -04:00