public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next] net: usb: dm9601: remove broken SR9700 support
@ 2026-01-13  6:39 Ethan Nelson-Moore
  2026-01-13  8:00 ` Peter Korsgaard
  2026-01-16  3:50 ` patchwork-bot+netdevbpf
  0 siblings, 2 replies; 3+ messages in thread
From: Ethan Nelson-Moore @ 2026-01-13  6:39 UTC (permalink / raw)
  To: netdev, linux-usb
  Cc: Ethan Nelson-Moore, Peter Korsgaard, Andrew Lunn, David S. Miller,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Liu Junliang

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>
---
 drivers/net/usb/dm9601.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/net/usb/dm9601.c b/drivers/net/usb/dm9601.c
index 8b6d6a1b3c2e..2b4716ccf0c5 100644
--- a/drivers/net/usb/dm9601.c
+++ b/drivers/net/usb/dm9601.c
@@ -603,10 +603,6 @@ static const struct usb_device_id products[] = {
 	USB_DEVICE(0x0fe6, 0x8101),	/* DM9601 USB to Fast Ethernet Adapter */
 	.driver_info = (unsigned long)&dm9601_info,
 	 },
-	{
-	 USB_DEVICE(0x0fe6, 0x9700),	/* DM9601 USB to Fast Ethernet Adapter */
-	 .driver_info = (unsigned long)&dm9601_info,
-	 },
 	{
 	 USB_DEVICE(0x0a46, 0x9000),	/* DM9000E */
 	 .driver_info = (unsigned long)&dm9601_info,
-- 
2.43.0


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

* Re: [PATCH net-next] net: usb: dm9601: remove broken SR9700 support
  2026-01-13  6:39 [PATCH net-next] net: usb: dm9601: remove broken SR9700 support Ethan Nelson-Moore
@ 2026-01-13  8:00 ` Peter Korsgaard
  2026-01-16  3:50 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2026-01-13  8:00 UTC (permalink / raw)
  To: Ethan Nelson-Moore
  Cc: netdev, linux-usb, Andrew Lunn, David S. Miller, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Liu Junliang

>>>>> "Ethan" == Ethan Nelson-Moore <enelsonmoore@gmail.com> writes:

 > 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>

I do not have access to a SR9700 device (and haven't touched anything
dm9601 related for a long time), but the above sounds sensible, so:

Acked-by: Peter Korsgaard <peter@korsgaard.com>

-- 
Bye, Peter Korsgaard

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

* Re: [PATCH net-next] net: usb: dm9601: remove broken SR9700 support
  2026-01-13  6:39 [PATCH net-next] net: usb: dm9601: remove broken SR9700 support Ethan Nelson-Moore
  2026-01-13  8:00 ` Peter Korsgaard
@ 2026-01-16  3:50 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+netdevbpf @ 2026-01-16  3:50 UTC (permalink / raw)
  To: Ethan Nelson-Moore
  Cc: netdev, linux-usb, peter, andrew+netdev, davem, edumazet, kuba,
	pabeni, liujunliang_ljl

Hello:

This patch was applied to netdev/net.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Mon, 12 Jan 2026 22:39:24 -0800 you wrote:
> 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.
> 
> [...]

Here is the summary with links:
  - [net-next] net: usb: dm9601: remove broken SR9700 support
    https://git.kernel.org/netdev/net/c/7d7dbafefbe7

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



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

end of thread, other threads:[~2026-01-16  3:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-13  6:39 [PATCH net-next] net: usb: dm9601: remove broken SR9700 support Ethan Nelson-Moore
2026-01-13  8:00 ` Peter Korsgaard
2026-01-16  3:50 ` patchwork-bot+netdevbpf

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