AXE(4)

πŸ’– AXE(4) πŸ’– β€” the ASIX Electronics AX88x7x/760 USB Ethernet driver, bestie edition

okay so welcome to the axe(4) page, which lives in the Kernel Interfaces Manual and is literally just the whole tea on getting USB Ethernet working on your machine. pull up a chair, grab a strawberry πŸ“, we're doing this.


✨ NAME ✨

axe β€” the ASIX Electronics AX88x7x/760 USB Ethernet driver. that's it, that's the name, she's simple, she's iconic. πŸ‘‘


✨ SYNOPSIS ✨

so there are two ways to get her in your life, and bestie you gotta pick one.

Option A: bake her straight into the kernel. drop these lines into your kernel configuration file:

device ehci
device uhci
device ohci
device usb
device miibus
device uether
device axe

Option B: load her as a module at boot time (way more chill, no recompiling, we love a flexible queen). put this line in loader.conf(5):

if_axe_load="YES"
not me giving you two whole paths to success because I want you to have options πŸ’…

🌸 DESCRIPTION 🌸

okay so the axe driver? she provides support for USB Ethernet adapters based on the ASIX Electronics AX88172, AX88178, AX88772, AX88772A, AX88772B and AX88760 USB 2.0 chipsets. six chipsets. a whole squad. 🫢

here's the breakdown, and honestly the way these chips differ is giving main character energy:

  • The AX88172, AX88772, AX88772A, AX88772B and AX88760 contain a 10/100 Ethernet MAC with MII interface and are designed to work with both Ethernet and HomePNA transceivers.
  • The AX88178 has a 10/100/1000 Ethernet MAC with GMII/RGMII interface for interfacing with Gigabit Ethernet PHY. yeah she's the overachiever of the group. πŸ’…

now, real talk. 🫡 These devices will operate with both USB 1.x and USB 2.0 controllers β€” however performance with 1.x controllers will be limited since the USB 1.x standard specifies a maximum transfer speed of 12Mbps. so if you're on a USB 1.x controller, users should therefore not expect to actually achieve 100Mbps speeds with these devices. no cap, the math just isn't mathing there. πŸ’€

all chipsets support:

  • a 64-bit multicast hash table ✨
  • a single perfect filter entry for the station address
  • all-multicast mode
  • promiscuous mode

and packets are received and transmitted over separate USB bulk transfer endpoints. separate. endpoints. we stan a driver that keeps things organised. πŸŽ€


🌈 media types she supports 🌈

  • autoselect β€” Enable autoselection of the media type and options. and here's the cute part: the user can manually override the autoselected mode by adding media options to rc.conf(5). you're in charge, bestie, the driver just has opinions. πŸ™ˆ
  • 10baseT/UTP β€” Set 10Mbps operation. The ifconfig(8) mediaopt option can also be used to select either full-duplex or half-duplex modes. slow and steady, she's still valid. 🐒
  • 100baseTX β€” Set 100Mbps (Fast Ethernet) operation. The ifconfig(8) mediaopt option can also be used to select either full-duplex or half-duplex modes. now we're talking, Fast Ethernet era. πŸ”₯
  • 1000baseT β€” Set 1000Mbps (Gigabit Ethernet) operation (AX88178 only). The ifconfig(8) mediaopt option can also be used to select either full-duplex or half-duplex modes. yes, AX88178 only, don't @ me, that's just her lane. ⭐

πŸ’… media options πŸ’…

  • full-duplex β€” Force full duplex operation. talking and listening at the same time, multitasking queen. πŸ‘‘
  • half-duplex β€” Force half duplex operation. one at a time, take turns, be polite. πŸŽ€

for more information on configuring this device, see ifconfig(8). iykyk. πŸ¦‹


πŸ”₯ HARDWARE πŸ”₯

The axe driver supports ASIX Electronics AX88172/AX88178/AX88772/AX88772A/AX88772B/AX88760 based USB Ethernet adapters including:

AX88172: 🧚

  • AboCom UF200
  • Acer Communications EP1427X2
  • ASIX AX88172
  • ATen UC210T
  • Billionton SnapPort
  • Billionton USB2AR
  • Buffalo (Melco Inc.) LUA-U2-KTX
  • Corega USB2_TX
  • D-Link DUBE100
  • Goodway GWUSB2E
  • JVC MP_PRX1
  • LinkSys USB200M
  • Netgear FA120
  • Sitecom LN-029
  • System TALKS Inc. SGC-X2UL

AX88178: πŸ’œ

  • ASIX AX88178
  • Belkin F5D5055
  • Logitec LAN-GTJ/U2A
  • Buffalo (Melco Inc.) LUA3-U2-AGT
  • Planex Communications GU1000T
  • Sitecom Europe LN-028

AX88772: πŸ¦‹

  • ASIX AX88772
  • Buffalo (Melco Inc.) LUA3-U2-ATX
  • D-Link DUBE100B1
  • Planex UE-200TX-G
  • Planex UE-200TX-G2

AX88772A: 🌸

  • ASIX AX88772A
  • Cisco-Linksys USB200Mv2

AX88772B: ✨

  • ASIX AX88772B
  • Lenovo USB 2.0 Ethernet

AX88760: 🌈

  • ASIX AX88760
if your adapter's on this list, you're eating good tonight. if it's not… bestie, I can't help you, that's just what the page says. 😭

🩺 DIAGNOSTICS 🩺

these are the messages she might hit you with. read them like texts from your driver. πŸ’Œ

  • axe%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. she tried to send it, the device ghosted her, timeout expired. πŸ’€
  • axe%d: no memory for rx list β€” The driver failed to allocate an mbuf for the receiver ring. no mbuf, no receive ring, no vibes. 😭

πŸ‘€ SEE ALSO πŸ‘€

altq(4), arp(4), miibus(4), netintro(4), ng_ether(4), rgephy(4), vlan(4), ifconfig(8)

ASIX AX88x7x and AX88760 data sheets, http://www.asix.com.tw.

go read those if you want the deep lore, the data sheets are right there, they're free, they're iconic. πŸ“š


⏳ HISTORY ⏳

The axe device driver first appeared in FreeBSD 5.0. a legend since day one, fr fr. πŸ‘‘


🫢 AUTHORS 🫢

The axe driver was written by Bill Paul <wpaul@windriver.com>. thank you Bill, we owe you everything, we're literally using your driver right now. πŸ’–


and that's the whole page bestie!! this one shipped from Debian, dated November 24, 2015 β€” so yeah she's been holding it down for a minute and she still slays. πŸŽ€βœ¨ periodt. πŸ’…

πŸ“¦ where this page comes from