lan78xx_configure_usb(9)
πΈ NAME πΈ
hey bestie, welcome to lan78xx_configure_usb(9) from the Kernel API Manual π
β this one is all about Configure USB link power settings. slay.
β¨ SYNOPSIS β¨
int lan78xx_configure_usb (struct lan78xx_net *dev , int speed );
π ARGUMENTS π
devβ pointer to the LAN78xx device structure π«Άspeedβ negotiated Ethernet link speed (in Mbps) β‘
π¦ DESCRIPTION π¦
okay so hereβs the tea: this function configures U1/U2 link power management for SuperSpeed USB devices based on the current Ethernet link speed. itβs giving very βknow your speed, manage your powerβ energy β¨
it uses the USB_CFG1 register to enable or disable U1 and U2 low-power states. literally the USB_CFG1 register is the main character here π
π NOTE π
only LAN7800 and LAN7801 support SuperSpeed (USB 3.x). LAN7850 is a High-Speed-only (USB 2.0) device and is skipped π
π RETURN π
0 on success or a negative error code on failure. periodt π
π₯ SEE ALSO π₯
- Kernel file:
./drivers/net/usb/lan78xx.c lan78xx_phy_int_ack(9)lan78xx_configure_flowcontrol(9)lan78xx_mac_eee_enable(9)lan78xx_set_fixed_link(9)lan78xx_get_phy(9)lan78xx_mac_prepare_for_phy(9)lan78xx_configure_leds_from_dt(9)
okay thatβs the whole page, bestie π«Ά the footerβs source/version bit is ./drivers/net/usb, the date is October 2026, and the page itself is obviously lan78xx_configure_usb(9) πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms