Linux Input/HID development
 help / color / mirror / Atom feed
* [PATCH 0/2] Input: remove obsolete cm109 USB phone driver
@ 2026-11-12  0:16 Dmitry Torokhov
  2026-11-12  0:16 ` [PATCH 1/2] powerpc/configs: drop CONFIG_INPUT_CM109 from ppc6xx_defconfig Dmitry Torokhov
  2026-11-12  0:16 ` [PATCH 2/2] Input: cm109 - remove driver Dmitry Torokhov
  0 siblings, 2 replies; 3+ messages in thread
From: Dmitry Torokhov @ 2026-11-12  0:16 UTC (permalink / raw)
  To: Alfred E . Heggestad, Jiri Kosina, Benjamin Tissoires,
	Madhavan Srinivasan, Michael Ellerman, Nicholas Piggin,
	Christophe Leroy
  Cc: Oliver Neukum, Thomas Reitmayr, Shaun Jackman, Daniel Gimpelevich,
	Florian Euchner, Johan Hovold, Javier Carrasco, Xue Lei,
	linux-input, linux-usb, linuxppc-dev, linux-kernel

This short series removes the obsolete cm109 driver for mid-2000s USB
VoIP/Skype handsets based on the C-Media CM109 USB audio and HID
controller (0x0d8c:0x000e) and drops its module selection from
ppc6xx_defconfig.

The driver was written in 2007-2008 (modeled after yealink) to poll a
4x4 phone keypad matrix and toggle a buzzer wired to the chip's GPIO
pins across four phone models (Komunikate KIP1000, Genius G-talk,
Allied-Telesis Corega USBPH01, and ATCom AU-100), relying on a module
parameter (phone=...) to choose the keymap. The mid-2000s userspace
VoIP/Skype bridge ecosystem for these handsets is long defunct, and the
driver has seen no new hardware support since 2008 while continuing to
attract syzbot crashes in its custom URB state machine.

Furthermore, because 0x0d8c:0x000e is the generic default C-Media CM109
VID:PID and was added to hid_ignore_list[] so cm109 could claim the USB
interface, cm109 actively interferes with non-phone CM109 devices still
in use today: amateur radio interfaces (Direwolf, AllStarLink, SVXLink,
UniPager, Hamlib) have to blacklist cm109 so usbhid can expose
/dev/hidraw* and so opening the input device does not pulse the GPIO
pins and key the radio transmitter's PTT line, while standard USB
headsets with 0x0d8c:0x000e can bind to usbhid directly via the chip's
standard HID Consumer Page volume and mute descriptors once the
hid_ignore_list[] entry is dropped.

Thanks.

Dmitry Torokhov (2):
  powerpc/configs: drop CONFIG_INPUT_CM109 from ppc6xx_defconfig
  Input: cm109 - remove driver

 arch/powerpc/configs/ppc6xx_defconfig |   1 -
 drivers/hid/hid-ids.h                 |   1 -
 drivers/hid/hid-quirks.c              |   1 -
 drivers/input/misc/Kconfig            |  12 -
 drivers/input/misc/Makefile           |   1 -
 drivers/input/misc/cm109.c            | 940 --------------------------
 6 files changed, 956 deletions(-)
 delete mode 100644 drivers/input/misc/cm109.c

-- 
2.56.0.567.gdb80ae8cd5-goog


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-11-12  0:16 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-12  0:16 [PATCH 0/2] Input: remove obsolete cm109 USB phone driver Dmitry Torokhov
2026-11-12  0:16 ` [PATCH 1/2] powerpc/configs: drop CONFIG_INPUT_CM109 from ppc6xx_defconfig Dmitry Torokhov
2026-11-12  0:16 ` [PATCH 2/2] Input: cm109 - remove driver Dmitry Torokhov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox