1.\" 2.\" This file and its contents are supplied under the terms of the 3.\" Common Development and Distribution License ("CDDL"), version 1.0. 4.\" You may only use this file in accordance with the terms of version 5.\" 1.0 of the CDDL. 6.\" 7.\" A full copy of the text of the CDDL should have accompanied this 8.\" source. A copy of the CDDL is also available via the Internet at 9.\" http://www.illumos.org/license/CDDL. 10.\" 11.\" 12.\" Copyright 2020 Oxide Computer Company 13.\" 14.Dd September 14, 2020 15.Dt IGB 4D 16.Os 17.Sh NAME 18.Nm igb 19.Nd Intel 1 GbE Server NIC Driver 20.Sh SYNOPSIS 21.Pa /dev/net/igb* 22.Sh DESCRIPTION 23The 24.Nm 25driver is a GLDv3 NIC driver for Intel 1 Gigabit Ethernet PCIe 26controllers which are built-in to motherboards and discrete PCIe 27devices. 28.Pp 29The driver supports the following device families: 30.Bl -dash 31.It 32Intel 82575 Gigabit Ethernet Controller 33.It 34Intel 82576 Gigabit Ethernet Controller 35.It 36Intel 82580 Gigabit Ethernet Controller 37.It 38Intel Ethernet Controller I210 39.It 40Intel Ethernet Controller I211 41.It 42Intel Ethernet Controller I350 43.El 44.Pp 45Many other Intel 1 GbE devices are supported by the 46.Xr e1000g 4D 47driver. 48.Pp 49The driver supports the following functionality depending on the 50controller generation: 51.Bl -dash 52.It 53Jumbo frames up to 9000 bytes. 54.It 55Checksum offload for TCP and UDP on IPv4 and IPv6. 56Checksum offload for IPv4 headers. 57.It 58TCP Segmentation Offload 59.Pq TSO 60over IPv4 and IPv6. 61.It 62Support for multiple hardware rings, enabling receive-side steering 63.Pq RSS 64and multiple MAC address filters. 65.It 66Promiscuous access via 67.Xr snoop 8 68and 69.Xr dlpi 4P . 70.It 71LED control. 72.It 73Link auto-negotiation, manual link controls, and IEEE 802.3x flow 74control. 75.El 76.Sh APPLICATION PROGRAMMING INTERFACE 77For each supported device instance, which corresponds to a port, a 78character-special file is created. 79This device can be used with the Data Link Provider Interface 80.Pq DLPI 81through either 82.Xr libdlpi 3LIB 83or 84.Xr dlpi 4P . 85.Pp 86Each instance is assigned a unique ascending integer identifier starting 87from zero. 88The first instance in the system would be enumerated with the id 0 and 89be named 90.Sy igb0 91and be found in the file system at 92.Pa /dev/net/igb0 . 93.Sh CONFIGURATION 94The 95.Nm 96driver supports operating at 1 Gbps full-duplex, 100 Mbps full and 97half-duplex, and 10 Mbps full and half-duplex. 98By default, the device will use auto-negotiation and prefer the highest 99compatible speed. 100The advertised speeds and broader configuration can be observed and 101modified with 102.Xr dladm 8 . 103While 104.Xr driver.conf 5 105based configuration is possible, it is recommended that 106.Xr dladm 8 107is used wherever possible. 108.Sh FILES 109.Bl -tag -width Pa 110.It Pa /dev/net/igb* 111.Nm 112special character device. 113.It Pa /kernel/drv/amd64/igb 114x86 device driver. 115.It Pa /kernel/drv/sparcv9/igb 116SPARC device driver 117.It Pa /kernel/drv/igb.conf 118Configuration file. 119.El 120.Sh SEE ALSO 121.Xr libdlpi 3LIB , 122.Xr e1000g 4D , 123.Xr dlpi 4P , 124.Xr driver.conf 5 , 125.Xr dladm 8 , 126.Xr mac 9E 127