Matthias Berndt and Dmitry Torokhov
a65cd7ef5a
Input: xpad - add PXN V900 support
...
Add VID and PID to the xpad_device table to allow driver to use the PXN
V900 steering wheel, which is XTYPE_XBOX360 compatible in xinput mode.
Signed-off-by: Matthias Berndt <matthias_berndt@gmx.de >
Link: https://lore.kernel.org/r/4932699.31r3eYUQgx@fedora
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-10-13 17:59:20 -07:00
Max Nguyen and Dmitry Torokhov
e28a0974d7
Input: xpad - add HyperX Clutch Gladiate Support
...
Add HyperX controller support to xpad_device and xpad_table.
Suggested-by: Chris Toledanes <chris.toledanes@hp.com >
Reviewed-by: Carl Ng <carl.ng@hp.com >
Signed-off-by: Max Nguyen <maxwell.nguyen@hp.com >
Reviewed-by: Rahul Rameshbabu <rrameshbabu@nvidia.com >
Link: https://lore.kernel.org/r/20230906231514.4291-1-hphyperxdev@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-09-17 22:24:56 -07:00
Dmitry Torokhov
5050193628
Merge tag 'v6.4' into next
...
Sync up with mainline to bring in updates to shared infrastructure.
2023-07-17 09:20:46 -07:00
Jonathan Frederick and Dmitry Torokhov
854d2233de
Input: xpad - add GameSir T4 Kaleid Controller support
...
Add VID and PID to the xpad_device table to allow driver
to use the GameSir T4 Kaleid Controller, which is
XTYPE_XBOX360 compatible in xinput mode.
Signed-off-by: Jonathan Frederick <doublej472@gmail.com >
Link: https://lore.kernel.org/r/ZKeKSbP3faIPv5jB@dbj-hp-flip
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-07-07 16:53:50 -07:00
Sam Lantinga and Dmitry Torokhov
1dfd41115f
Input: xpad - add GameSir VID for Xbox One controllers
...
Signed-off-by: Sam Lantinga <slouken@libsdl.org >
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230607012812.379640-3-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-07-07 16:53:50 -07:00
05e6329443
Input: xpad - fix support for some third-party controllers
...
Some third-party controllers, such as the HORPIAD FPS for Nintendo Switch
and Gamesir-G3w, require a specific packet that the first-party XInput
driver sends before it will start sending reports. It's not currently known
what this packet does, but since the first-party driver always sends it's
unlikely that this could cause issues with existing controllers.
Co-authored-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230607012812.379640-2-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-07-07 16:53:49 -07:00
Ismael Ferreras Morezuelas and Dmitry Torokhov
feee70f456
Input: xpad - delete a Razer DeathAdder mouse VID/PID entry
...
While doing my research to improve the xpad device names I noticed
that the 1532:0037 VID/PID seems to be used by the DeathAdder 2013,
so that Razer Sabertooth instance looked wrong and very suspect to
me. I didn't see any mention in the official drivers, either.
After doing more research, it turns out that the xpad list
is used by many other projects (like Steam) as-is [1], this
issue was reported [2] and Valve/Sam Lantinga fixed it [3]:
[1]: https://github.com/libsdl-org/SDL/blob/dcc5eef0e2395854b254ea2873a4899edab347c6/src/joystick/controller_type.h#L251
[2]: https://steamcommunity.com/app/353380/discussions/0/1743392486228754770/
[3]: https://hg.libsdl.org/SDL/rev/29809f6f0271
(With multiple Internet users reporting similar issues, not linked here)
After not being able to find the correct VID/PID combination anywhere
on the Internet and not receiving any reply from Razer support I did
some additional detective work, it seems like it presents itself as
"Razer Sabertooth Gaming Controller (XBOX360)", code 1689:FE00.
Leaving us with this:
* Razer Sabertooth (1689:fe00)
* Razer Sabertooth Elite (24c6:5d04)
* Razer DeathAdder 2013 (1532:0037) [note: not a gamepad]
So, to sum things up; remove this conflicting/duplicate entry:
{ 0x1532, 0x0037, "Razer Sabertooth", 0, XTYPE_XBOX360 },
As the real/correct one is already present there, even if
the Internet as a whole insists on presenting it as the
Razer Sabertooth Elite, which (by all accounts) is not:
{ 0x1689, 0xfe00, "Razer Sabertooth", 0, XTYPE_XBOX360 },
Actual change in SDL2 referencing this kernel issue:
https://github.com/libsdl-org/SDL/commit/e5e54169754ca5d3e86339d968b20126d9da0a15
For more information of the device, take a look here:
https://github.com/xboxdrv/xboxdrv/pull/59
You can see a lsusb dump here: https://github.com/xboxdrv/xboxdrv/files/76581/Qa6dBcrv.txt
Fixes: f554f619b7 ("Input: xpad - sync device IDs with xboxdrv")
Signed-off-by: Ismael Ferreras Morezuelas <swyterzone@gmail.com >
Reviewed-by: Cameron Gutman <aicommander@gmail.com >
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/5c12dbdb-5774-fc68-5c58-ca596383663e@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-05-23 14:48:23 -07:00
Ismael Ferreras Morezuelas and Dmitry Torokhov
9284d3b9a3
Input: xpad - spelling fixes for "Xbox"
...
The Linux kernel is notorious for misspelling X-Box, X-box, XBox or XBOX;
the official spelling is actually just Xbox. Plain and simple.
Tried to respect the existing notes but still following the style guide.
No functional changes intended. This only affects ancillary parts.
Signed-off-by: Ismael Ferreras Morezuelas <swyterzone@gmail.com >
Link: https://lore.kernel.org/r/401b1d94-1348-15fd-b48f-a80e8885c7a4@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-05-22 17:28:16 -07:00
Uwe Kleine-König and Dmitry Torokhov
d8bde56dfd
Input: Switch i2c drivers back to use .probe()
...
After commit b8a1a4cd5a ("i2c: Provide a temporary .probe_new()
call-back type"), all drivers being converted to .probe_new() and then
03c835f498 ("i2c: Switch .probe() to not take an id parameter") convert
back to (the new) .probe() to be able to eventually drop .probe_new() from
struct i2c_driver.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Link: https://lore.kernel.org/r/20230517164645.162294-1-u.kleine-koenig@pengutronix.de
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-05-17 09:59:11 -07:00
Dmitry Torokhov
9a87ffc99e
Merge branch 'next' into for-linus
...
Prepare input updates for 6.4 merge window.
2023-05-01 15:20:08 -07:00
Dmitry Torokhov
53bea86b57
Revert "Input: xpad - fix support for some third-party controllers"
...
This reverts commit db7220c48d because it
causes crashes when trying to dereference xpad->dev->dev in xpad_probe()
which has not been set up yet.
Reported-by: syzbot+a3f758b8d8cb7e49afec@syzkaller.appspotmail.com
Reported-by: Dongliang Mu <dzm91@hust.edu.cn >
Link: https://groups.google.com/g/syzkaller-bugs/c/iMhTgpGuIbM
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-05-01 15:14:06 -07:00
Vicki Pfau and Dmitry Torokhov
cf59501873
Input: xpad - fix PowerA EnWired Controller guide button
...
This commit explicitly disables the audio interface the same way the official
driver does. This is needed for some controllers, such as the PowerA Enhanced
Wired Controller for Series X|S (0x20d6:0x200e) to report the guide button.
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230411031650.960322-3-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-04-14 00:02:55 -07:00
Vicki Pfau and Dmitry Torokhov
f9b2e603c6
Input: xpad - add constants for GIP interface numbers
...
Wired GIP devices present multiple interfaces with the same USB identification
other than the interface number. This adds constants for differentiating two of
them and uses them where appropriate
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230411031650.960322-2-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-04-14 00:02:53 -07:00
db7220c48d
Input: xpad - fix support for some third-party controllers
...
Some third-party controllers, such as the HORPIAD FPS for Nintendo Switch and
Gamesir-G3w, require a specific packet that the first-party XInput driver sends
before it will start sending reports. It's not currently known what this packet
does, but since the first-party driver always sends it's unlikely that this
could cause issues with existing controllers.
Co-authored-by: Andrey Smirnov <andrew.smirnov@gmail.com >
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230324040446.3487725-3-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-04-01 20:28:07 -07:00
Pierre-Loup A. Griffais and Dmitry Torokhov
8fb1bcd0ba
Input: xpad - treat Qanba controllers as Xbox360 controllers
...
They act that way in PC mode.
Reviewed-by: Lyude Paul <lyude@redhat.com >
Signed-off-by: Pierre-Loup A. Griffais <pgriffais@valvesoftware.com >
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230324040446.3487725-2-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-04-01 20:26:06 -07:00
Vicki Pfau and Dmitry Torokhov
1999a6b12a
Input: xpad - add VID for Turtle Beach controllers
...
This adds support for the Turtle Beach REACT-R and Recon Xbox controllers
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230225012147.276489-4-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-03-23 18:50:55 -07:00
Vicki Pfau and Dmitry Torokhov
907d73bc0b
Input: xpad - remove unused field in VID/PID table
...
The list of specific VID/PID combinations for various controllers recently
added a new field "xtype". However, this field isn't used, nor filled in
the table itself, and was likely added by mistake and overlooked during
review. Since this field isn't used, it's safe to remove.
Signed-off-by: Vicki Pfau <vi@endrift.com >
Link: https://lore.kernel.org/r/20230225012147.276489-3-vi@endrift.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-03-23 18:50:54 -07:00
Matthias Benkmann and Dmitry Torokhov
ffa6206ebf
Input: xpad - fix incorrectly applied patch for MAP_PROFILE_BUTTON
...
When commit commit fff1011a26 ("Input: xpad - add X-Box Adaptive Profile
button") was applied, one hunk ended up in the wrong function; move it to
where it belongs.
Fixes: fff1011a26 ("Input: xpad - add X-Box Adaptive Profile button")
Signed-off-by: Matthias Benkmann <matthias.benkmann@gmail.com >
Link: https://lore.kernel.org/r/20230318162106.0aef4ba5@ninja
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-03-19 21:35:19 -07:00
John Butler and Dmitry Torokhov
21617de3b4
Input: xpad - add 8BitDo Pro 2 Wired Controller support
...
Add VID and PID to the xpad_device table to allow driver
to use the 8BitDo Pro 2 Wired Controller, which is
XTYPE_XBOX360 compatible by default.
Signed-off-by: John Butler <radon86dev@gmail.com >
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com >
Link: https://lore.kernel.org/r/20230124005206.80706-1-radon86dev@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2023-01-27 14:57:37 -08:00
Dmitry Torokhov
e291c116f6
Merge branch 'next' into for-linus
...
Prepare input updates for 6.2 merge window.
2022-12-12 10:47:03 -08:00
Jonathan Cameron and Dmitry Torokhov
de4b8d2016
Input: pxspad - fix unused data warning when force feedback not enabled
...
The functions using this data were protected with #ifdef
CONFIG_JOYSTICK_PSXPAD_SPI_FF. Do the same for the data used only in
those functions.
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
Link: https://lore.kernel.org/r/20221204180841.2211588-33-jic23@kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-12-07 13:29:05 -08:00
Jonathan Cameron and Dmitry Torokhov
f3183157cf
Input: pxspad - switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
...
SIMPLE_DEV_PM_OPS() is deprecated as it requires explicit protection
against used function warnings. The new combination of pm_sleep_ptr()
and DEFINE_SIMPLE_DEV_PM_OPS() allows the compiler to see the functions,
thus suppressing the warning, but still allowing the unused code to be
removed. Thus also drop the __maybe_unused markings.
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com >
Link: https://lore.kernel.org/r/20221204180841.2211588-2-jic23@kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-12-07 13:26:19 -08:00
Uwe Kleine-König and Dmitry Torokhov
37ab3d75b4
Input: as5011 - Convert to i2c's .probe_new()
...
The probe function doesn't make use of the i2c_device_id * parameter so it
can be trivially converted.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Link: https://lore.kernel.org/r/20221118224540.619276-192-uwe@kleine-koenig.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-12-02 14:53:41 -08:00
Randy Dunlap and Dmitry Torokhov
6100a19c4f
Input: joystick - fix Kconfig warning for JOYSTICK_ADC
...
Fix a Kconfig warning for JOYSTICK_ADC by also selecting
IIO_BUFFER.
WARNING: unmet direct dependencies detected for IIO_BUFFER_CB
Depends on [n]: IIO [=y] && IIO_BUFFER [=n]
Selected by [y]:
- JOYSTICK_ADC [=y] && INPUT [=y] && INPUT_JOYSTICK [=y] && IIO [=y]
Fixes: 2c2b364fdd ("Input: joystick - add ADC attached joystick driver.")
Reported-by: kernel test robot <lkp@intel.com >
Signed-off-by: Randy Dunlap <rdunlap@infradead.org >
Link: https://lore.kernel.org/r/20221104201238.31628-1-rdunlap@infradead.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-11-07 11:36:03 -08:00
Tetsuo Handa and Dmitry Torokhov
b8ebf25099
Input: iforce - invert valid length check when fetching device IDs
...
syzbot is reporting uninitialized value at iforce_init_device() [1], for
commit 6ac0aec6b0 ("Input: iforce - allow callers supply data buffer
when fetching device IDs") is checking that valid length is shorter than
bytes to read. Since iforce_get_id_packet() stores valid length when
returning 0, the caller needs to check that valid length is longer than or
equals to bytes to read.
Reported-by: syzbot <syzbot+4dd880c1184280378821@syzkaller.appspotmail.com >
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp >
Fixes: 6ac0aec6b0 ("Input: iforce - allow callers supply data buffer when fetching device IDs")
Link: https://lore.kernel.org/r/531fb432-7396-ad37-ecba-3e42e7f56d5c@I-love.SAKURA.ne.jp
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-11-07 10:28:58 -08:00
Dmitry Torokhov
5f8f8574c7
Merge branch 'next' into for-linus
...
Prepare input updates for 6.1 merge window.
2022-10-09 22:30:23 -07:00
Christophe JAILLET and Dmitry Torokhov
2d09ac951b
input: drop empty comment blocks
...
Commit 1a59d1b8e0 ("treewide: Replace GPLv2 boilerplate/reference with
SPDX - rule 156") has left some empty comment blocks.
Remove them to save a few lines of code.
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr >
Link: https://lore.kernel.org/r/26a2b905b259bfffaf2de5b26f2007b8606970ed.1664478665.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-29 16:25:42 -07:00
Nate Yocom and Dmitry Torokhov
fff1011a26
Input: xpad - add X-Box Adaptive Profile button
...
Adds a new quirk for controllers that have a Profile button which has 4
states, reflected as an ABS_PROFILE axis with 4 values.
Signed-off-by: Nate Yocom <nate@yocom.org >
Tested-by: Bastien Nocera <hadess@hadess.net >
Link: https://lore.kernel.org/r/20220908173930.28940-6-nate@yocom.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-28 18:31:39 -07:00
Nate Yocom and Dmitry Torokhov
f45aaae620
Input: xpad - add X-Box Adaptive XBox button
...
Adaptive controller sets 0x02 bit for this button, all others set 0x01
so presence of either is used for BTN_MODE.
Signed-off-by: Nate Yocom <nate@yocom.org >
Tested-by: Bastien Nocera <hadess@hadess.net >
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com
Link: https://lore.kernel.org/r/20220908173930.28940-3-nate@yocom.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-28 18:31:36 -07:00
Nate Yocom and Dmitry Torokhov
d218fe0433
Input: xpad - add X-Box Adaptive support
...
Adds correct VID/PID for this XTYPE_XBOXONE compatible controller to
xpad_device[] table.
Signed-off-by: Nate Yocom <nate@yocom.org >
Tested-by: Bastien Nocera <hadess@hadess.net >
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com >
Link: https://lore.kernel.org/r/20220908173930.28940-2-nate@yocom.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-28 18:31:34 -07:00
Pavel Rojtberg and Dmitry Torokhov
677065244a
Input: xpad - decipher xpadone packages with GIP defines
...
only renames, no functional changes. Some of the packets we send
seem superfluous now. Unfortunately I dont have the hardware to verify
whether they are.
Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com >
Link: https://lore.kernel.org/r/20220913213133.584979-3-rojtberg@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-27 18:03:46 -07:00
Pavel Rojtberg and Dmitry Torokhov
90c9978959
Input: xpad - refactor using BIT() macro
...
reduces the amount of magic numbers and makes the code more readable
Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com >
Link: https://lore.kernel.org/r/20220913213133.584979-2-rojtberg@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-27 18:03:44 -07:00
Christopher Crockett and Dmitry Torokhov
e23c69e332
Input: xpad - add support for XBOX One Elite paddles
...
An effort has been made to support every official model and firmware
version I could track down info on. The following controllers _should_
have working paddles with this PR:
- Xbox Elite (**untested**)
- Xbox Elite Series 2 on early firmwares (**untested**)
- Xbox Elite Series 2 on v4 firmwares (Tested v4.8.1908.0)
- Xbox Elite Series 2 on v5 pre-BLE firmwares (**untested**)
- Xbox Elite Series 2 on v5 post-BLE firmwares (Tested v5.13.3143.0)
This patch also introduces correct handling for the Elite 1 controller
and properly suppresses paddle inputs when using a custom profile slot.
Starting with firmware v5.11, certain inputs for the Elite 2 were moved
to an extra packet that is not enabled by default.
We must first manually enable this extra packet in order to correctly
process paddle input data with these later firmwares.
Signed-off-by: Christopher Crockett <chaorace@gmail.com >
Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com >
Tested-by: Bastien Nocera <hadess@hadess.net >
Link: https://lore.kernel.org/r/20220818154411.510308-5-rojtberg@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-06 11:45:27 -07:00
Santosh De Massari and Dmitry Torokhov
da7e2128b8
Input: xpad - Poweroff XBOX360W on mode button long press
...
Newer gamepads turn themselves off when the mode button is held down.
For XBOX360W gamepads we must do this in the driver.
Do not use BIT() macro for consistency within the file.
Signed-off-by: Santosh De Massari <s.demassari@gmail.com >
Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com >
Link: https://lore.kernel.org/r/20220818154411.510308-4-rojtberg@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-06 11:45:27 -07:00
Cameron Gutman and Dmitry Torokhov
a17b984115
Input: xpad - fix wireless 360 controller breaking after suspend
...
Suspending and resuming the system can sometimes cause the out
URB to get hung after a reset_resume. This causes LED setting
and force feedback to break on resume. To avoid this, just drop
the reset_resume callback so the USB core rebinds xpad to the
wireless pads on resume if a reset happened.
A nice side effect of this change is the LED ring on wireless
controllers is now set correctly on system resume.
Cc: stable@vger.kernel.org
Fixes: 4220f7db1e ("Input: xpad - workaround dead irq_out after suspend/ resume")
Signed-off-by: Cameron Gutman <aicommander@gmail.com >
Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com >
Link: https://lore.kernel.org/r/20220818154411.510308-3-rojtberg@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-06 11:45:27 -07:00
Pavel Rojtberg and Dmitry Torokhov
b382c5e373
Input: xpad - add supported devices as contributed on github
...
This is based on multiple commits at https://github.com/paroj/xpad
Cc: stable@vger.kernel.org
Signed-off-by: Jasper Poppe <jgpoppe@gmail.com >
Signed-off-by: Jeremy Palmer <jpalmer@linz.govt.nz >
Signed-off-by: Ruineka <ruinairas1992@gmail.com >
Signed-off-by: Cleber de Mattos Casali <clebercasali@gmail.com >
Signed-off-by: Kyle Gospodnetich <me@kylegospodneti.ch >
Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com >
Link: https://lore.kernel.org/r/20220818154411.510308-2-rojtberg@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-09-06 11:45:27 -07:00
Greg Tulli and Dmitry Torokhov
9c9c71168f
Input: iforce - add support for Boeder Force Feedback Wheel
...
Add a new iforce_device entry to support the Boeder Force Feedback Wheel
device.
Signed-off-by: Greg Tulli <greg.iforce@gmail.com >
Link: https://lore.kernel.org/r/3256420-c8ac-31b-8499-3c488a9880fd@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-08-29 11:45:28 -07:00
Tetsuo Handa and Dmitry Torokhov
98e0121570
Input: iforce - wake up after clearing IFORCE_XMIT_RUNNING flag
...
syzbot is reporting hung task at __input_unregister_device() [1], for
iforce_close() waiting at wait_event_interruptible() with dev->mutex held
is blocking input_disconnect_device() from __input_unregister_device().
It seems that the cause is simply that commit c2b27ef672 ("Input:
iforce - wait for command completion when closing the device") forgot to
call wake_up() after clear_bit().
Fix this problem by introducing a helper that calls clear_bit() followed
by wake_up_all().
Reported-by: syzbot <syzbot+deb6abc36aad4008f407@syzkaller.appspotmail.com >
Fixes: c2b27ef672 ("Input: iforce - wait for command completion when closing the device")
Tested-by: syzbot <syzbot+deb6abc36aad4008f407@syzkaller.appspotmail.com >
Suggested-by: Fabio M. De Francesco <fmdefrancesco@gmail.com >
Co-developed-by: Hillf Danton <hdanton@sina.com >
Signed-off-by: Hillf Danton <hdanton@sina.com >
Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp >
Link: https://lore.kernel.org/r/887021c3-4f13-40ce-c8b9-aa6e09faa3a7@I-love.SAKURA.ne.jp
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-08-27 20:54:06 -07:00
Chris Morgan and Dmitry Torokhov
24c06e000e
Input: adc-joystick - add polled input device support
...
Add polled input device support to the adc-joystick driver. This is
useful for devices which do not have hardware capable triggers on
their SARADC. Code modified from adc-joystick.c changes made by Maya
Matuszczyk.
Signed-off-by: Maya Matuszczyk <maccraft123mc@gmail.com >
Signed-off-by: Chris Morgan <macromorgan@hotmail.com >
Link: https://lore.kernel.org/r/20220816210440.14260-3-macroalpha82@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-08-17 12:32:51 -07:00
Uwe Kleine-König and Wolfram Sang
ed5c2f5fd1
i2c: Make remove callback return void
...
The value returned by an i2c driver's remove function is mostly ignored.
(Only an error message is printed if the value is non-zero that the
error is ignored.)
So change the prototype of the remove function to return no value. This
way driver authors are not tempted to assume that passing an error to
the upper layer is a good idea. All drivers are adapted accordingly.
There is no intended change of behaviour, all callbacks were prepared to
return 0 before.
Reviewed-by: Peter Senna Tschudin <peter.senna@gmail.com >
Reviewed-by: Jeremy Kerr <jk@codeconstruct.com.au >
Reviewed-by: Benjamin Mugnier <benjamin.mugnier@foss.st.com >
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com >
Reviewed-by: Crt Mori <cmo@melexis.com >
Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com >
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org >
Acked-by: Marek Behún <kabel@kernel.org > # for leds-turris-omnia
Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com >
Reviewed-by: Petr Machata <petrm@nvidia.com > # for mlxsw
Reviewed-by: Maximilian Luz <luzmaximilian@gmail.com > # for surface3_power
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com > # for bmc150-accel-i2c + kxcjk-1013
Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl > # for media/* + staging/media/*
Acked-by: Miguel Ojeda <ojeda@kernel.org > # for auxdisplay/ht16k33 + auxdisplay/lcd2s
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com > # for versaclock5
Reviewed-by: Ajay Gupta <ajayg@nvidia.com > # for ucsi_ccg
Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com > # for iio
Acked-by: Peter Rosin <peda@axentia.se > # for i2c-mux-*, max9860
Acked-by: Adrien Grassein <adrien.grassein@gmail.com > # for lontium-lt8912b
Reviewed-by: Jean Delvare <jdelvare@suse.de > # for hwmon, i2c-core and i2c/muxes
Acked-by: Corey Minyard <cminyard@mvista.com > # for IPMI
Reviewed-by: Vladimir Oltean <olteanv@gmail.com >
Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com > # for drivers/power
Acked-by: Krzysztof Hałasa <khalasa@piap.pl >
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de >
Signed-off-by: Wolfram Sang <wsa@kernel.org >
2022-08-16 12:46:26 +02:00
Dmitry Torokhov
7c744d0099
Input: adc-joystick - fix ordering in adc_joystick_probe()
...
We should register the IIO buffer before we register the input device,
because as soon as the device is registered input handlers may attach to
it, resulting in a call to adc_joystick_open() which makes use of the said
buffer.
Acked-by: Artur Rojek <contact@artur-rojek.eu >
Link: https://lore.kernel.org/r/YskFh4NHnlcryMkk@google.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-08-02 10:01:16 -07:00
Dmitry Torokhov
a63f7778f7
Merge tag 'v5.19-rc5' into next
...
Merge with mainline to bring up the latest definition from MFD subsystem
needed for Mediatek keypad driver.
2022-07-08 13:39:28 -07:00
Yang Li and Dmitry Torokhov
b2274ff2c4
Input: sensehat-joystick - remove unnecessary error message
...
The print function dev_err() is redundant because platform_get_irq()
already prints an error.
Eliminates the follow coccicheck warning:
./drivers/input/joystick/sensehat-joystick.c:102:2-9: line 102 is redundant because platform_get_irq() already prints an error
Reported-by: Abaci Robot <abaci@linux.alibaba.com >
Signed-off-by: Yang Li <yang.lee@linux.alibaba.com >
Link: https://lore.kernel.org/r/20220427004906.129893-1-yang.lee@linux.alibaba.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-06-28 22:50:48 -07:00
Randy Dunlap and Dmitry Torokhov
5f92df8dda
Input: raspberrypi-ts - add missing HAS_IOMEM dependency
...
Since JOYSTICK_SENSEHAT selects MFD_SIMPLE_MFD_I2C and the latter
depends on HAS_IOMEM, and since 'select' does not follow any
dependency chains, JOYSTICK_SENSEHAT should also depend on HAS_IOMEM
to prevent a kconfig warning and a build error:
WARNING: unmet direct dependencies detected for MFD_SIMPLE_MFD_I2C
Depends on [n]: HAS_IOMEM [=n] && I2C [=y]
Selected by [y]:
- JOYSTICK_SENSEHAT [=y] && INPUT_JOYSTICK [=y] && INPUT [=y] && I2C [=y]
s390-linux-ld: drivers/mfd/simple-mfd-i2c.o: in function `simple_mfd_i2c_probe':
simple-mfd-i2c.c:(.text+0xc8): undefined reference to `devm_mfd_add_devices'
Fixes: 41657514c7 ("Input: add Raspberry Pi Sense HAT joystick driver")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org >
Link: https://lore.kernel.org/r/20220531022942.16340-1-rdunlap@infradead.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-05-31 14:10:03 -07:00
Charles Mirabile and Dmitry Torokhov
41657514c7
Input: add Raspberry Pi Sense HAT joystick driver
...
This patch adds the driver for the Sense HAT joystick. It outputs BTN_DPAD
key events when moved in any of the four directions and the BTN_SELECT
event when depressed.
Co-developed-by: Daniel Bauman <dbauman@redhat.com >
Signed-off-by: Daniel Bauman <dbauman@redhat.com >
Co-developed-by: Mwesigwa Guma <mguma@redhat.com >
Signed-off-by: Mwesigwa Guma <mguma@redhat.com >
Co-developed-by: Joel Savitz <jsavitz@redhat.com >
Signed-off-by: Joel Savitz <jsavitz@redhat.com >
Signed-off-by: Charles Mirabile <cmirabil@redhat.com >
Link: https://lore.kernel.org/r/20220419205158.28088-3-cmirabil@redhat.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-04-24 18:25:02 -07:00
Colin Ian King and Dmitry Torokhov
a949087c22
Input: adi - remove redundant variable z
...
Variable z is being assigned a value that is never read, the
variable is redundant and can be removed.
Cleans up clang scan build warning:
drivers/input/joystick/adi.c:139:6: warning: Although the
value stored to 'z' is used in the enclosing expression,
the value is never actually read from 'z' [deadcode.DeadStores]
Signed-off-by: Colin Ian King <colin.i.king@gmail.com >
Link: https://lore.kernel.org/r/20220318002318.80519-1-colin.i.king@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-03-20 22:02:00 -07:00
Marcos Alano and Dmitry Torokhov
e3217f5e73
Input: xbox - correct the name for Xbox Series S|X controller
...
Change the name of controller to a more meaningful one.
Signed-off-by: Marcos Alano <marcoshalano@gmail.com >
Link: https://lore.kernel.org/r/20220212191014.1754721-1-marcoshalano@gmail.com
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2022-02-15 19:58:05 -08:00
Linus Torvalds
278218f677
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
...
Pull input fixes from Dmitry Torokhov:
"Two small fixups for spaceball joystick driver and appletouch touchpad
driver"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
Input: spaceball - fix parsing of movement data packets
Input: appletouch - initialize work before device registration
2022-01-01 10:21:49 -08:00
Leo L. Schwab and Dmitry Torokhov
bc7ec91718
Input: spaceball - fix parsing of movement data packets
...
The spaceball.c module was not properly parsing the movement reports
coming from the device. The code read axis data as signed 16-bit
little-endian values starting at offset 2.
In fact, axis data in Spaceball movement reports are signed 16-bit
big-endian values starting at offset 3. This was determined first by
visually inspecting the data packets, and later verified by consulting:
http://spacemice.org/pdf/SpaceBall_2003-3003_Protocol.pdf
If this ever worked properly, it was in the time before Git...
Signed-off-by: Leo L. Schwab <ewhac@ewhac.org >
Link: https://lore.kernel.org/r/20211221101630.1146385-1-ewhac@ewhac.org
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com >
2021-12-30 21:09:29 -08:00
Linus Torvalds
f78e9de80f
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
...
Pull input updates from Dmitry Torokhov:
"Just one new driver (Cypress StreetFighter touchkey), and no input
core changes this time.
Plus various fixes and enhancements to existing drivers"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (54 commits)
Input: iforce - fix control-message timeout
Input: wacom_i2c - use macros for the bit masks
Input: ili210x - reduce sample period to 15ms
Input: ili210x - improve polled sample spacing
Input: ili210x - special case ili251x sample read out
Input: elantench - fix misreporting trackpoint coordinates
Input: synaptics-rmi4 - Fix device hierarchy
Input: i8042 - Add quirk for Fujitsu Lifebook T725
Input: cap11xx - add support for cap1206
Input: remove unused header <linux/input/cy8ctmg110_pdata.h>
Input: ili210x - add ili251x firmware update support
Input: ili210x - export ili251x version details via sysfs
Input: ili210x - use resolution from ili251x firmware
Input: pm8941-pwrkey - respect reboot_mode for warm reset
reboot: export symbol 'reboot_mode'
Input: max77693-haptic - drop unneeded MODULE_ALIAS
Input: cpcap-pwrbutton - do not set input parent explicitly
Input: max8925_onkey - don't mark comment as kernel-doc
Input: ads7846 - do not attempt IRQ workaround when deferring probe
Input: ads7846 - use input_set_capability()
...
2021-11-12 11:53:16 -08:00