Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Apr 2020 05:30:03 +0200
From:      Polytropon <freebsd@edvax.de>
To:        jester@panix.com
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Drivers for NIC (igb vs em)?
Message-ID:  <20200430053003.243b10a9.freebsd@edvax.de>
In-Reply-To: <20200429165235.GA17720@panix.com>
References:  <20200429165235.GA17720@panix.com>

Next in thread | Previous in thread | Raw E-Mail | Index | Archive | Help
On Wed, 29 Apr 2020 12:52:35 -0400, jester@panix.com wrote:
> I have a motherboard with two built-in NICs. These appear as em0
> and igb0. I'm just wondering why these are created with different
> drivers, instead of as em0 and em1 or igb0 and igb1. Is this
> something I have any control over?

Unlike Linux, where network devices are typically enumerated
depending on the order they are detected in, FreeBSD uses a
device name according to the hardware found.

The diver manuals ("man 4 <name>") state:

em - Intel(R) PRO/1000 Gigabit Ethernet adapter driver

igb - Intel(R) PRO/1000 PCI Express Gigabit Ethernet adapter driver

So your mainboard has two _different_ kinds of networking hardware
installed, that's why FreeBSD loads the appropriate driver for each
one, leading to different names.



> If it's relevant, the output of lspci for the Ethernet controllers only:
> 
> $ sudo lspci -v
> 
> [...]
> 
> 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-LM (rev 31)
>         Subsystem: ASRock Incorporation Device 15b7
>         Flags: bus master, fast devsel, latency 0, IRQ 16
>         Memory at df100000 (32-bit, non-prefetchable)
>         Capabilities: [c8] Power Management version 3
>         Capabilities: [d0] MSI: Enable+ Count=1/1 Maskable- 64bit+
>         Capabilities: [e0] PCI Advanced Features
> 
> 02:00.0 Ethernet controller: Intel Corporation I210 Gigabit Network Connection (rev 03)
>         Subsystem: ASRock Incorporation Device 1533
>         Flags: bus master, fast devsel, latency 0, IRQ 19
>         Memory at df000000 (32-bit, non-prefetchable)
>         I/O ports at e000
>         Memory at df080000 (32-bit, non-prefetchable)
>         Capabilities: [40] Power Management version 3
>         Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
>         Capabilities: [70] MSI-X: Enable+ Count=5 Masked-
>         Capabilities: [a0] Express Endpoint, MSI 00
>         Capabilities: [100] Advanced Error Reporting
>         Capabilities: [140] Device Serial Number d0-50-99-ff-ff-c1-f6-ab
>         Capabilities: [1a0] Transaction Processing Hints

As you can see from the 1st line of each entry, lspci confirms
that you're dealing with two different models (both made by
Intel, though).



-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...



Want to link to this message? Use this URL: <http://docs.FreeBSD.org/cgi/mid.cgi?20200430053003.243b10a9.freebsd>