KUE(4)

πŸ’– KUE(4) β€” the Kawasaki LSI KL5KUSB101B USB Ethernet driver πŸ’–

okay bestie, sit down, we're doing kue(4) β€” it's from the Kernel Interfaces Manual and it's literally the whole tea on this USB Ethernet situation 🫢


✨ NAME ✨

kue β€” Kawasaki LSI KL5KUSB101B USB Ethernet driver

no cap, that's the whole vibe. a driver. for USB ethernet. named kue. periodt πŸ’…


🌸 SYNOPSIS 🌸

so like, there are two ways to get this baby into your life and i need you to pick one, okay?

Option A β€” bake it into the kernel. To compile this driver into the kernel, drop these lines into your kernel configuration file:

device uhci
device ohci
device usb
device miibus
device uether
device kue

yes, all of them. don't skip any, the way that uhci and ohci are both there is not a mistake, it's iconic πŸ™ˆ

Option B β€” load it as a module at boot time. Alternatively, to load the driver as a module at boot time, put this line in loader.conf(5):

if_kue_load="YES"

one line. that's it. that's the whole thing. slay ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

The kue driver provides support for USB Ethernet adapters based on the Kawasaki LSI KL5KLUSB101B chipset. πŸ’œ

okay so here's what the KL5KLUSB101B is working with: it supports a 128-entry multicast filter, single perfect filter entry for the station address, and promiscuous mode. and the packets? received and transmitted over separate USB bulk transfer endpoints. separate. endpoints. the way it keeps things organized is giving main character energy ngl πŸŽ€

now, the tea: the Kawasaki chipset supports only 10Mbps half-duplex mode, hence there are no ifmedia(4) modes to select. like, there's nothing to pick from. the options menu is empty. it is what it is 😭

For more information on configuring this device, see ifconfig(8). go read it, i'll wait πŸ’…


🌈 HARDWARE 🌈

The kue driver supports Kawasaki LSI KL5KLUSB101B based USB Ethernet adapters including:

  • 3Com 3c19250
  • 3Com 3c460 HomeConnect Ethernet USB Adapter
  • ADS Technologies USB-10BT
  • AOX USB101
  • ATen UC10T
  • Abocom URE 450
  • Corega USB-T
  • D-Link DSB-650C
  • Entrega NET-USB-E45, NET-HUB-3U1E
  • I/O Data USB ETT
  • Kawasaki DU-H3E
  • LinkSys USB10T
  • Netgear EA101
  • Peracom USB Ethernet Adapter
  • Psion Gold Port USB Ethernet adapter
  • SMC 2102USB, 2104USB

look at that list. sixteen entries of pure vintage USB ethernet nostalgia. if your dongle is on here, congrats, you're supported πŸ’– if it's not... bestie, i can't help you 😭


πŸ”₯ DIAGNOSTICS πŸ”₯

these are the messages that show up when things get real. pay attention, okay?

  • kue%d: watchdog timeout β€” A packet was queued for transmission and a transmit command was issued, however the device failed to acknowledge the transmission before a timeout expired. translation: you asked it to send something, it said nothing back, and the clock ran out. πŸ’€
  • kue%d: no memory for rx list β€” The driver failed to allocate an mbuf for the receiver ring. translation: the driver tried to get memory for the receive ring and came back empty-handed. it's giving broke 😭

🧚 SEE ALSO 🧚

go read these too, they're all besties with kue:

iykyk 🫢


⭐ HISTORY ⭐

The kue device driver first appeared in FreeBSD 4.0. vintage. a classic. we stan a legacy icon πŸ‘‘


πŸ’œ AUTHORS πŸ’œ

The kue driver was written by Bill Paul <wpaul@ee.columbia.edu>.

give him his flowers, fr fr πŸŒΈπŸ’


πŸ™ˆ BUGS πŸ™ˆ

The kue driver does not accumulate Ethernet collisions statistics because the Kawasaki firmware does not appear to maintain any internal statistics.

so like... the collision stats? they don't exist. not because kue forgot, but because the Kawasaki firmware isn't keeping any internal statistics at all. nothing to report. the numbers are simply not there. no cap. 😭

and that's the whole page, bestie!! this one came from the Debian build, dated November 24, 2015 β€” yeah, it's an oldie but it's still out here doing its thing. mwah πŸ’‹βœ¨πŸŽ€

πŸ“¦ where this page comes from