lan78xx: Debounce link events to minimize poll storm
authorJoshua Emele <jemele@acm.org>
Thu, 8 Nov 2018 00:07:40 +0000 (16:07 -0800)
committerDom Cobley <popcornmix@gmail.com>
Mon, 19 Feb 2024 11:32:49 +0000 (11:32 +0000)
commitd7aaf94605ee4565d2d826db49968d1c629efeaa
treefcdd746004f27db374bae7f3cc2738caa0a47735
parentb6ce3dd71573da8e2b40e907573d8c21938c4fb5
lan78xx: Debounce link events to minimize poll storm

The bInterval is set to 4 (i.e. 8 microframes => 1ms) and the only bit
that the driver pays attention to is "link was reset". If there's a
flapping status bit in that endpoint data, (such as if PHY negotiation
needs a few tries to get a stable link) then polling at a slower rate
would act as a de-bounce.

See: https://github.com/raspberrypi/linux/issues/2447
drivers/net/usb/lan78xx.c