]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
net: usb: dm9601: remove broken SR9700 support
authorEthan Nelson-Moore <enelsonmoore@gmail.com>
Tue, 13 Jan 2026 06:39:24 +0000 (22:39 -0800)
committerJakub Kicinski <kuba@kernel.org>
Fri, 16 Jan 2026 03:47:28 +0000 (19:47 -0800)
commit7d7dbafefbe74f5a25efc4807af093b857a7612e
treec936d05efd6661fd352c6be02566bfc05df49693
parent9ad693018c8466819356771cb98f2fbe860640ca
net: usb: dm9601: remove broken SR9700 support

The SR9700 chip sends more than one packet in a USB transaction,
like the DM962x chips can optionally do, but the dm9601 driver does not
support this mode, and the hardware does not have the DM962x
MODE_CTL register to disable it, so this driver drops packets on SR9700
devices. The sr9700 driver correctly handles receiving more than one
packet per transaction.

While the dm9601 driver could be improved to handle this, the easiest
way to fix this issue in the short term is to remove the SR9700 device
ID from the dm9601 driver so the sr9700 driver is always used. This
device ID should not have been in more than one driver to begin with.

The "Fixes" commit was chosen so that the patch is automatically
included in all kernels that have the sr9700 driver, even though the
issue affects dm9601.

Fixes: c9b37458e956 ("USB2NET : SR9700 : One chip USB 1.1 USB2NET SR9700Device Driver Support")
Signed-off-by: Ethan Nelson-Moore <enelsonmoore@gmail.com>
Acked-by: Peter Korsgaard <peter@korsgaard.com>
Link: https://patch.msgid.link/20260113063924.74464-1-enelsonmoore@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/usb/dm9601.c