1517904deSPeter Grehan.\"- 2517904deSPeter Grehan.\" Copyright 2021 Intel Corp 3517904deSPeter Grehan.\" Copyright 2021 Rubicon Communications, LLC (Netgate) 4517904deSPeter Grehan.\" SPDX-License-Identifier: BSD-3-Clause 5517904deSPeter Grehan.\" 6517904deSPeter Grehan.\" $FreeBSD$ 7517904deSPeter Grehan.\" 8517904deSPeter Grehan.Dd May 10, 2021 9*331d4f3cSTrond Endrestol.Dt IGC 4 10517904deSPeter Grehan.Os 11517904deSPeter Grehan.Sh NAME 12517904deSPeter Grehan.Nm igc 13517904deSPeter Grehan.Nd "Intel Ethernet Controller I225 driver" 14517904deSPeter Grehan.Sh SYNOPSIS 15517904deSPeter GrehanTo compile this driver into the kernel, 16517904deSPeter Grehanplace the following lines in your 17517904deSPeter Grehankernel configuration file: 18517904deSPeter Grehan.Bd -ragged -offset indent 19517904deSPeter Grehan.Cd "device iflib" 20517904deSPeter Grehan.Cd "device igc" 21517904deSPeter Grehan.Ed 22517904deSPeter Grehan.Pp 23517904deSPeter GrehanAlternatively, to load the driver as a 24517904deSPeter Grehanmodule at boot time, place the following line in 25517904deSPeter Grehan.Xr loader.conf 5 : 26517904deSPeter Grehan.Bd -literal -offset indent 27517904deSPeter Grehanif_igc_load="YES" 28517904deSPeter Grehan.Ed 29517904deSPeter Grehan.Sh DESCRIPTION 30517904deSPeter GrehanThe 31517904deSPeter Grehan.Nm 32517904deSPeter Grehandriver provides support for any PCI Express adapter or LOM (LAN 33517904deSPeter GrehanOn Motherboard) based on the Intel I225 Multi Gigabit Controller. 34517904deSPeter GrehanThe driver supports Transmit/Receive checksum offload, Jumbo Frames, 35517904deSPeter GrehanMSI/MSI-X, TSO, and RSS. 36517904deSPeter Grehan.Pp 37517904deSPeter GrehanSupport for Jumbo Frames is provided via the interface MTU setting. 38517904deSPeter GrehanSelecting an MTU larger than 1500 bytes with the 39517904deSPeter Grehan.Xr ifconfig 8 40517904deSPeter Grehanutility 41517904deSPeter Grehanconfigures the adapter to receive and transmit Jumbo Frames. 42517904deSPeter GrehanThe maximum MTU size for Jumbo Frames is 9216 bytes. 43517904deSPeter Grehan.Pp 44517904deSPeter GrehanThis driver version supports VLAN hardware insertion / extraction, and 45517904deSPeter GrehanVLAN checksum offload. 46517904deSPeter GrehanFor information on enabling VLANs, see 47517904deSPeter Grehan.Xr ifconfig 8 . 48517904deSPeter GrehanThe 49517904deSPeter Grehan.Nm 50517904deSPeter Grehandriver supports the following media types: 51517904deSPeter Grehan.Bl -tag -width ".Cm 10baseT/UTP" 52517904deSPeter Grehan.It Cm autoselect 53517904deSPeter GrehanEnables auto-negotiation for speed and duplex. 54517904deSPeter Grehan.It Cm 10baseT/UTP 55517904deSPeter GrehanSets 10Mbps operation. 56517904deSPeter GrehanUse the 57517904deSPeter Grehan.Cm mediaopt 58517904deSPeter Grehanoption to select 59517904deSPeter Grehan.Cm half-duplex 60517904deSPeter Grehanmode. 61517904deSPeter Grehan.It Cm 100baseTX 62517904deSPeter GrehanSets 100Mbps operation. 63517904deSPeter GrehanUse the 64517904deSPeter Grehan.Cm mediaopt 65517904deSPeter Grehanoption to select 66517904deSPeter Grehan.Cm half-duplex 67517904deSPeter Grehanmode. 68517904deSPeter Grehan.It Cm 1000baseT 69517904deSPeter GrehanSets 1000Mbps operation. 70517904deSPeter GrehanOnly 71517904deSPeter Grehan.Cm full-duplex 72517904deSPeter Grehanmode is supported at this speed. 73517904deSPeter Grehan.It Cm 2500baseT 74517904deSPeter GrehanSets 2500Mbps operation. 75517904deSPeter GrehanOnly 76517904deSPeter Grehan.Cm full-duplex 77517904deSPeter Grehanmode is supported at this speed. 78517904deSPeter Grehan.El 79517904deSPeter Grehan.Pp 80517904deSPeter Grehan.Sh HARDWARE 81517904deSPeter GrehanThe 82517904deSPeter Grehan.Nm 83517904deSPeter Grehandriver supports the following models: 84517904deSPeter Grehan.Pp 85517904deSPeter Grehan.Bl -bullet -compact 86517904deSPeter Grehan.It 87517904deSPeter GrehanI225-LM 88517904deSPeter Grehan.It 89517904deSPeter GrehanI225-V 90517904deSPeter Grehan.It 91517904deSPeter GrehanI225-IT 92517904deSPeter Grehan.It 93517904deSPeter GrehanI225-K 94517904deSPeter Grehan.El 95517904deSPeter Grehan.Sh LOADER TUNABLES 96517904deSPeter GrehanTunables can be set at the 97517904deSPeter Grehan.Xr loader 8 98517904deSPeter Grehanprompt before booting the kernel or stored in 99517904deSPeter Grehan.Xr loader.conf 5 . 100517904deSPeter Grehan.Bl -tag -width indent 101517904deSPeter Grehan.It Va hw.igc.igc_disable_crc_stripping 102517904deSPeter GrehanDisable or enable hardware stripping of CRC field. 103517904deSPeter GrehanThis is mostly useful on BMC/IPMI shared interfaces where stripping the 104517904deSPeter GrehanCRC causes remote access over IPMI to fail. 105517904deSPeter GrehanDefault 0 (enabled). 106517904deSPeter Grehan.It Va hw.igc.rx_int_delay 107517904deSPeter GrehanThis value delays the generation of receive interrupts in units 108517904deSPeter Grehanof 1.024 microseconds. 109517904deSPeter GrehanThe default value is 0, since adapters may hang with this feature being 110517904deSPeter Grehanenabled. 111517904deSPeter Grehan.It Va hw.igc.rx_abs_int_delay 112517904deSPeter GrehanIf hw.igc.rx_int_delay is non-zero, this tunable limits the 113517904deSPeter Grehanmaximum delay in which a receive interrupt is generated. 114517904deSPeter Grehan.It Va hw.igc.tx_int_delay 115517904deSPeter GrehanThis value delays the generation of transmit interrupts in units 116517904deSPeter Grehanof 1.024 microseconds. 117517904deSPeter GrehanThe default value is 64. 118517904deSPeter Grehan.It Va hw.igc.tx_abs_int_delay 119517904deSPeter GrehanIf hw.igc.tx_int_delay is non-zero, this tunable limits the 120517904deSPeter Grehanmaximum delay in which a transmit interrupt is generated. 121517904deSPeter Grehan.It Va hw.igc.sbp 122517904deSPeter GrehanShow bad packets when in promiscuous mode. 123517904deSPeter GrehanDefault is false. 124517904deSPeter Grehan.It Va hw.igc.rx_process_limit 125517904deSPeter GrehanMaximum number of received packets to process at a time. 126517904deSPeter GrehanDefault is 100. 127517904deSPeter GrehanA value of -1 means unlimited. 128517904deSPeter Grehan.It Va hw.igc.eee_setting 129517904deSPeter GrehanDisable or enable Energy Efficient Ethernet. 130517904deSPeter GrehanDefault 1 (disabled). 131517904deSPeter Grehan.It Va hw.igc.max_interrupt_rate 132517904deSPeter GrehanMaximum device interrupts per second. 133517904deSPeter GrehanThe default is 8000. 134517904deSPeter Grehan.El 135517904deSPeter Grehan.Sh DIAGNOSTICS 136517904deSPeter Grehan.Bl -diag 137517904deSPeter Grehan.It "igc%d: Hardware Initialization Failed" 138517904deSPeter GrehanA fatal initialization error has occurred. 139517904deSPeter Grehan.It "igc%d: Unable to allocate bus resource: memory" 140517904deSPeter GrehanA fatal initialization error has occurred. 141517904deSPeter Grehan.It "igc%d: Invalid MAC address" 142517904deSPeter GrehanThe MAC address programmed into the EEPROM is either empty or a multicast/broadcast 143517904deSPeter Grehanaddress. 144517904deSPeter Grehan.El 145517904deSPeter Grehan.Sh SEE ALSO 146517904deSPeter Grehan.Xr altq 4 , 147517904deSPeter Grehan.Xr arp 4 , 148517904deSPeter Grehan.Xr iflib 4 , 149517904deSPeter Grehan.Xr netintro 4 , 150517904deSPeter Grehan.Xr ng_ether 4 , 151517904deSPeter Grehan.Xr vlan 4 , 152517904deSPeter Grehan.Xr ifconfig 8 153517904deSPeter Grehan.Sh HISTORY 154517904deSPeter GrehanThe 155517904deSPeter Grehan.Nm 156517904deSPeter Grehandevice driver first appeared in 157517904deSPeter Grehan.Fx 14.0 . 158517904deSPeter Grehan.Sh AUTHORS 159517904deSPeter Grehan.An -nosplit 160517904deSPeter GrehanThe 161517904deSPeter Grehan.Nm 162517904deSPeter Grehanwas originally written by 163517904deSPeter Grehan.An Intel Corporation 164517904deSPeter Grehanand converted to the 165517904deSPeter Grehan.Xr iflib 4 166517904deSPeter Grehanframework by 167517904deSPeter Grehan.An Netgate . 168