IGC(4)

πŸ“¦
version 15.1 Β· 5 versions
, in freebsd 15.1

πŸ’… IGC(4) β€” the Kernel Interfaces Manual, bestie edition

okay so this is the manual page for igc, and it lives in section 4 of the Kernel Interfaces Manual. it's about the Intel Ethernet Controller I225 2.5GbE driver and honestly? she's kind of iconic. let's get into it πŸ’–


✨ NAME ✨

igc β€” the Intel Ethernet Controller I225 2.5GbE driver. that's it, that's the whole name. short, sweet, slays πŸŽ€


🌸 SYNOPSIS 🌸

so there are two ways to get this driver into your life. pick your fighter 🫢

option one: bake it right into the kernel. drop these lines into your kernel configuration file:

device iflib
device igc

option two: load it as a module at boot time. put this line into loader.conf(5):

if_igc_load="YES"

no cap, that's it. ✨


πŸ¦‹ DESCRIPTION πŸ¦‹

k so the igc driver provides support for any PCI Express adapter or LOM (that's LAN On Motherboard, iykyk) based on the Intel I225 Multi Gigabit Controller. so if you've got one of those, congrats, this driver is literally made for you πŸ’œ

here's the feature list, and it ate:

  • Transmit/Receive checksum offload
  • Jumbo Frames
  • MSI/MSI-X
  • TSO
  • RSS

jumbo frames, the vibe check

Jumbo Frames support comes to you via the interface MTU setting. select an MTU larger than 1500 bytes with the ifconfig(8) utility and boom β€” the adapter is configured to receive and transmit Jumbo Frames. the maximum MTU size for Jumbo Frames is 9216 bytes. so yes, you can go big, just not bigger than 9216 🌈

VLANs πŸŽ€

this driver version supports VLAN hardware insertion / extraction, plus VLAN checksum offload. wanna know how to actually enable VLANs? go see ifconfig(8), she'll walk you through it.

media types, the whole menu πŸ’…

the igc driver supports the following media types:

  • autoselect β€” enables auto-negotiation for speed and duplex. let her decide, she's got good taste ✨
  • 10baseT/UTP β€” sets 10Mbps operation. use the mediaopt option to select half-duplex mode.
  • 100baseTX β€” sets 100Mbps operation. use the mediaopt option to select half-duplex mode.
  • 1000baseT β€” sets 1000Mbps operation. only full-duplex mode is supported at this speed, so don't come asking for half 🫢
  • 2500baseT β€” sets 2500Mbps operation. only full-duplex mode is supported at this speed either. same rule, bestie.

πŸ”₯ HARDWARE πŸ”₯

the igc driver supports the following 2.5Gb Ethernet controllers β€” full roster below, no skips:

  • I220-V
  • I221-V
  • I225-LM
  • I225-LMvP(2)
  • I225-V
  • I225-IT, I225-IT(2)
  • I225-K, I225-K(2)
  • I226-LM
  • I226-LMvP
  • I226-V
  • I226-IT
  • I226-K

⭐ LOADER TUNABLES ⭐

tunables can be set at the loader(8) prompt before booting the kernel, or stored in loader.conf(5). your call, both work πŸ’–

  • hw.igc.igc_disable_crc_stripping β€” disable or enable hardware stripping of the CRC field. this is mostly useful on BMC/IPMI shared interfaces, where stripping the CRC causes remote access over IPMI to fail. default 0 (enabled). πŸ™ˆ
  • hw.igc.sbp β€” show bad packets when in promiscuous mode. default is false.
  • hw.igc.eee_setting β€” disable or enable Energy Efficient Ethernet. default 1 (disabled). 🌱
  • hw.igc.max_interrupt_rate β€” maximum device interrupts per second. the default is 8000. she's fast πŸ”₯

πŸ’€ DIAGNOSTICS πŸ’€

if you see one of these, something went wrong and you should pay attention:

  • igc%d: Hardware Initialization Failed β€” a fatal initialization error has occurred. 😭
  • igc%d: Unable to allocate bus resource: memory β€” a fatal initialization error has occurred. also 😭
  • igc%d: Invalid MAC address β€” the MAC address programmed into the EEPROM is either empty or a multicast/broadcast address. yeah that's not the vibe.

πŸ‘‘ SEE ALSO πŸ‘‘

altq(4), arp(4), iflib(4), netintro(4), ng_ether(4), vlan(4), ifconfig(8)

go read them, they're all part of the friend group 🫢


🌈 HISTORY 🌈

the igc device driver first appeared in FreeBSD 13.1. a legend was born ✨


πŸ’œ AUTHORS πŸ’œ

the igc was originally written by Intel Corporation and converted to the iflib(4) framework by Netgate. thank you for your service πŸ«‘πŸ’–


and that's the whole page, bestie! this version of the manual page comes to you from the Debian folks, dated March 9, 2026 β€” go forth and configure your I225 with confidence πŸ§šβ€β™€οΈπŸ’…πŸ₯°
πŸ“¦ where this page comes from
  • freebsd 15.1: base 15.1
  • πŸ“œ the page's license: BSD-3-Clause
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms