aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* kdb: core for kgdb back end (1 of 2)Jason Wessel2010-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch contains only the kdb core. Because the change set was large, it was split. The next patch in the series includes the instrumentation into the core kernel which are mainly helper functions for kdb. This work is directly derived from kdb v4.4 found at: ftp://oss.sgi.com/projects/kdb/download/v4.4/ The kdb internals have been re-organized to make them mostly platform independent and to connect everything to the debug core which is used by gdbstub (which has long been known as kgdb). The original version of kdb was 58,000 lines worth of changes to support x86. From that implementation only the kdb shell, and basic commands for memory access, runcontrol, lsmod, and dmesg where carried forward. This is a generic implementation which aims to cover all the current architectures using the kgdb core: ppc, arm, x86, mips, sparc, sh and blackfin. More archictectures can be added by implementing the architecture specific kgdb functions. [mort@sgi.com: Compile fix with hugepages enabled] [mort@sgi.com: Clean breakpoint code renaming kdba_ -> kdb_] [mort@sgi.com: fix new line after printing registers] [mort@sgi.com: Remove the concept of global vs. local breakpoints] [mort@sgi.com: Rework kdb_si_swapinfo to use more generic name] [mort@sgi.com: fix the information dump macros, remove 'arch' from the names] [sfr@canb.auug.org.au: include fixup to include linux/slab.h] CC: linux-arch@vger.kernel.org Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Martin Hicks <mort@sgi.com>
* kgdb,blackfin: Add in kgdb_arch_set_pc for blackfinJason Wessel2010-05-20
| | | | | | | | | The new debug core api requires all architectures that use to debug core to implement a function to set the program counter. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Acked-by: Sonic Zhang <sonic.zhang@analog.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
* kgdb,sh: update superh kgdb exception handlingJason Wessel2010-05-20
| | | | | | | | | | | | | | | Implement kgdb_arch_pc() which adjusts the pc if it needs to be adjusted after a software breakpoint trap. Implement kgdb_arch_set_pc() which is a new required function in the kgdb debug core. When processing a single step return zero in the error exception field so that the debug core can distinguish between a single step trap and a breakpoint trap generically. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Acked-by: Paul Mundt <lethal@linux-sh.org>
* kgdb,sparc: Add in kgdb_arch_set_pc for sparcJason Wessel2010-05-20
| | | | | | | | The new debug core api requires all architectures that use to debug core to implement a function to set the program counter. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Acked-by: David S. Miller <davem@davemloft.net>
* MAINTAINERS: update kgdb, and debug_core infoJason Wessel2010-05-20
| | | | | | Update the kgdb section. Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
* Separate the gdbstub from the debug coreJason Wessel2010-05-20
| | | | | | | | | | | | | Split the former kernel/kgdb.c into debug_core.c which contains the kernel debugger exception logic and to the gdbstub.c which contains the logic for allowing gdb to talk to the debug core. This also created a private include file called debug_core.h which contains all the definitions to glue the debug_core to any other debugger connections. CC: Ingo Molnar <mingo@elte.hu> Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
* Move kernel/kgdb.c to kernel/debug/debug_core.cJason Wessel2010-05-20
| | | | | | | | Move kgdb.c in preparation to separate the gdbstub from the debug core and exception handling. CC: Ingo Molnar <mingo@elte.hu> Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
* Merge branch 'for-linus' of ↵Linus Torvalds2010-05-20
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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: psmouse - small formatting changes to better follow coding style Input: synaptics - set dimensions as reported by firmware Input: elantech - relax signature checks Input: elantech - enforce common prefix on messages Input: wistron_btns - switch to using kmemdup() Input: usbtouchscreen - switch to using kmemdup() Input: do not force selecting i8042 on Moorestown Input: Documentation/sysrq.txt - update KEY_SYSRQ info Input: 88pm860x_onkey - remove invalid irq number assignment Input: i8042 - add a PNP entry to the aux device list Input: i8042 - add some extra PNP keyboard types Input: wm9712 - fix wm97xx_set_gpio() logic Input: add keypad driver for keys interfaced to TCA6416 Input: remove obsolete {corgi,spitz,tosa}kbd.c Input: kbtab - do not advertise unsupported events Input: kbtab - simplify kbtab_disconnect() Input: kbtab - fix incorrect size parameter in usb_buffer_free Input: acecad - don't advertise mouse events Input: acecad - fix some formatting issues Input: acecad - simplify usb_acecad_disconnect() ... Trivial conflict in Documentation/feature-removal-schedule.txt
| * Input: psmouse - small formatting changes to better follow coding styleDmitry Torokhov2010-05-19
| | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: synaptics - set dimensions as reported by firmwareDmitry Torokhov2010-05-19
| | | | | | | | | | | | | | | | Newer Synaptics firmware allows to query maximim dimensions reported by device, let's use this data. Tested-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: elantech - relax signature checksDmitry Torokhov2010-05-19
| | | | | | | | | | | | | | | | | | | | Apparently there are Elantech touchpads that report non-zero in the 2nd byte of their signature. Adjust the detection routine so that if 2nd byte is zero and 3rd byte contains value that is not a valid report rate, we still assume that signature is valid. Tested-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: elantech - enforce common prefix on messagesDmitry Torokhov2010-05-19
| | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: wistron_btns - switch to using kmemdup()Julia Lawall2010-05-19
| | | | | | | | | | | | | | | | Use kmemdup when some other buffer is immediately copied into the allocated region. Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: usbtouchscreen - switch to using kmemdup()Julia Lawall2010-05-19
| | | | | | | | | | | | | | | | Use kmemdup when some other buffer is immediately copied into the allocated region. Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: do not force selecting i8042 on MoorestownJacob Pan2010-05-19
| | | | | | | | | | | | | | | | Moorestown does not have i8042 based keyboard controller, so give an option to deselect i8042 for non-pc mid. Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: Documentation/sysrq.txt - update KEY_SYSRQ infoPaul Fox2010-05-19
| | | | | | | | | | | | | | | | | | | | | | While setting up sysrq operation on the XO laptop (which lacks a SysRq key), i realized that the documentation was quite out of date. Change documentation of SysRq to reflect current KEY_SYSRQ value. Signed-off-by: Paul Fox <pgf@laptop.org> Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: 88pm860x_onkey - remove invalid irq number assignmentHaojian Zhuang2010-05-19
| | | | | | | | | | | | | | Irq number of onkey is assigned twice. The second assignment is wrong. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: i8042 - add a PNP entry to the aux device listMatthew Garrett2010-05-19
| | | | | | | | | | | | | | | | | | Windows checks for an ALPS PS/2 device in PNP. Add it on the off-chance that there's a machine that expresses this without also providing a compatibility ID. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: i8042 - add some extra PNP keyboard typesMatthew Garrett2010-05-19
| | | | | | | | | | | | | | | | | | | | Some Japanese machines declare their keyboard with a different PNP ID. Add it to the list of probed device IDs. While we're at it, add all the other IDs that Windows binds to - we'll probably never see them in the real world, but it doesn't hurt. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Input: wm9712 - fix wm97xx_set_gpio() logicManuel Lauss2010-05-19
| | | | | | | | | | | | WM97XX_GPIO_HIGH is not a bitmap and should to be treated as such. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * Merge commit 'v2.6.34' into nextDmitry Torokhov2010-05-19
| |\
| * | Input: add keypad driver for keys interfaced to TCA6416Sriramakrishnan Govindarajan2010-05-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | This patch implements a simple Keypad driver that functions as an I2C client. It handles key press events for keys connected to TCA6416 I2C based IO expander. Signed-off-by: Sriramakrishnan <srk@ti.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: remove obsolete {corgi,spitz,tosa}kbd.cEric Miao2010-05-04
| | | | | | | | | | | | | | | Signed-off-by: Eric Miao <eric.y.miao@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: kbtab - do not advertise unsupported eventsDmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | The device does not emit EV_MSC/MSC_SERIAL nor EV_KEY/BTN_MIDDLE events so it should not mark them as supported in capabilities bitmaps. This still leaves BTN_TOOL_PEN and BTN_TOUCH events being processed in a funky manner. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: kbtab - simplify kbtab_disconnect()Dmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need to check whether kbtab structure is attached to the interface; if it isn't and we are called we have much bigger problems. Also no need to call usb_kill_urb() in kbtab_disconnect() since it is being called in kbtab_close(). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: kbtab - fix incorrect size parameter in usb_buffer_freeAxel Lin2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | The size allocated by usb_buffer_alloc() is 8, however the size passed to usb_buffer_free() is 10. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: acecad - don't advertise mouse eventsDmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | The device does not emit events for left/right/middle mouse buttons so it should not mark them as supported in capabilities bitmaps. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: acecad - fix some formatting issuesDmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | Also switch to using input_set_abd_params() helper. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: acecad - simplify usb_acecad_disconnect()Dmitry Torokhov2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | There is no need to check whether acecad structure is attached to the interface; if it isn't and we are called we have much bigger problems. Also no need to call usb_kill_urb() in usb_acecad_disconnect() since it is being called in usb_acecad_close(). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: acecad - fix incorrect size parameter in usb_buffer_freeAxel Lin2010-04-21
| | | | | | | | | | | | | | | | | | | | | | | | The size allocated by usb_buffer_alloc() is 8, however the size passed to usb_buffer_free() in usb_acecad_disconnect() is 10. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: add driver for hampshire serial touchscreensAdam Bennett2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | Input: ad714x - add support for the AD7143/8/7A partsBarry Song2010-04-14
| | | | | | | | | | | | | | | | | | Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: add Analog Devices AD714x captouch input driverBryan Wu2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AD7142 and AD7147 are integrated capacitance-to-digital converters (CDCs) with on-chip environmental calibration for use in systems requiring a novel user input method. The AD7142 and AD7147 can interface to external capacitance sensors implementing functions such as buttons, scrollwheels, sliders, touchpads and so on. The chips don't restrict the specific usage. Depending on the hardware connection, one special target board can include one or several these components. The platform_data for the device's "struct device" holds these information. The data-struct defined in head file descript the hardware feature of button/scrollwheel/slider/touchpad components on target boards, which need be filled in the arch/mach-/. As the result, the driver is independent of boards. It gets the components layout from the platform_data, registers related devices, fullfills the algorithms and state machines for these components and report related input events to up level. Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: lm8323 - do not leave dangling client data pointerWolfram Sang2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Do not leave dangling client data pointers when unbinding device from the driver or when binding fails for some reason. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: tsc2007 - do not leave dangling clientdata pointerWolfram Sang2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Do not leave dangling client data pointers when unbinding device from the driver. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: keyboard - fix formatting issuesDmitry Torokhov2010-04-14
| | | | | | | | | | | | | | | | | | Also convert few variables to 'bool'. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: keyboard - switch to using pr_err() and friendsDmitry Torokhov2010-04-14
| | | | | | | | | | | | Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: implement SysRq as a separate input handlerDmitry Torokhov2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of keeping SysRq support inside of legacy keyboard driver split it out into a separate input handler (filter). This stops most SysRq input events from leaking into evdev clients (some events, such as first SysRq scancode - not keycode - event, are still leaked into both legacy keyboard and evdev). [martinez.javier@gmail.com: fix compile error when CONFIG_MAGIC_SYSRQ is not defined] Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: add PCF8574 I2C keypad input device driverBryan Wu2010-04-14
| | | | | | | | | | | | | | | | | | Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: remove now deprecated corgi_ts.c touchscreen driverEric Miao2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The corgi touchscreen is now deprecated in favour of the generic ads7846.c driver. The noise reduction technique used in corgi_ts.c, which is to wait till vsync before ADC sampling, is also integrated into ads7846 driver now. Provided that the original driver is not generic and is difficult to maintain, it will be removed now. Signed-off-by: Eric Miao <eric.y.miao@gmail.com> Cc: Richard Purdie <rpurdie@rpsys.net> Cc: Pavel Machek <pavel@ucw.cz> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: wacom - streamline 2-finger touch supportPing Cheng2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Clean up 2-finger touch support. This still needs to be converted to proper multi-touch protocol. Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: wacom - use get_unaligned to access unaligned dataDmitry Torokhov2010-04-14
| | | | | | | | | | | | | | | | | | | | | Also get rid of wacom_le16_to_cpu() and wacom_be16_to_cpu() helpers and ise le16_to_cpup() and be16_to_cpup() directly. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: wacom - get rid of wacom_combo structureDmitry Torokhov2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Now that we moved input device from struct wacom to struct wacom_wac, presence of wacom_combo just complicats things for no good reason. Let's get rid of it and simply pass URB length to wacom_wac_irq(). Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: wacom - get rid of input event wrappersDmitry Torokhov2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | Input event interface is pretty stable so let's get rig of wrappers for input_event() and fiends and call them directly. This will simplify and speed up code a bit. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: wacom - fix some formatting issuesDmitry Torokhov2010-04-14
| | | | | | | | | | | | | | | | | | | | | Fix identation of switch/case statements so they follow style used by the rest of the kernel. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: wacom - do not allocate wacom_wac separatelyDmitry Torokhov2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | There is no reason for allocating struct wacom_wac separately from struct wacom since both have the same lifetime rules and are not shared. Also make 'open' field a boolean. Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Input: wacom - share pen info with touch of the same IDPing Cheng2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Touch enbaled devices share the same product ID with pen. However, we do not want to post touch events while pen is in prox. To do so, we used to keep a local static variable to keep track of if pen is in prox or not. This works fine for Tablet PC devices since there is only one device attached. With the newer touch enabled regular tablets, we can not make this assumption any more, i.e, one system may have more than one identical tablet plugged in. This patch adds an new entry, shared, into the struct wacom_wac so touch data can access pen data to locally. This solution assumes the two tools (touch and pen) of the same ID will be probed one after the other without interruption in between by another Wacom device of the same ID.
| * | Input: wacom - merge out and in prox eventsPing Cheng2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Process out and in prox events for Graphire and Tablet PC devices in the same loop to simplify the data parsing logic. [re-applying after revert since other patches are based on this one] Signed-off-by: Ping Cheng <pingc@wacom.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
| * | Merge branch 'for-linus' into nextDmitry Torokhov2010-04-14
| |\ \
| | * | Input: wacom - switch mode upon system resumePing Cheng2010-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Wacom devices wake up from a sleep, the switch mode command (wacom_query_tablet_data) is needed before wacom_open is called. wacom_query_tablet_data should not be executed inside wacom_open since wacom_open is called more than once during probe. wacom_retrieve_hid_descriptor is removed from wacom_resume due to the fact that the required descriptors are stored properly upon system resume. Signed-off-by: Ping Cheng <pingc@wacom.com> Reported-and-tested-by: Anton Anikin <Anton@Anikin.name> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>