VMware Cloud Community
PF4VMware
Enthusiast
Enthusiast
Jump to solution

How do I manually load a network card driver?

hi all

My old quad NIC card is visible to the kernel as 

Digital Equipment Corporation DECchip 21142/43 (rev 41) Subsystem: Hewlett-Packard Company 10/100Base-TX (PCI) [A5506B]

This is not directly supported by the kernel but I managed to add the drivers as shown below

How can I manually load the drivers to see what is going on. ESXi is not seeing the card yet, the kernel interface is not there yet

thanks

PF

I manage to upload the drivers and now I can see them like this

# esxcli software vib list

Name                           Version                               Vendor  Acceptance Level    Install Date

-----------------------------  ------------------------------------  ------  ------------------  ------------

net-tulip                      1.1.15-1                              DEC     CommunitySupported  2015-01-21

ata-pata-amd                   0.3.10-3vmw.550.0.0.1331820           VMware  VMwareCertified     2015-01-19

ata-pata-atiixp                0.4.6-4vmw.550.0.0.1331820            VMware  VMwareCertified     2015-01-19

ata-pata-cmd64x                0.2.5-3vmw.550.0.0.1331820            VMware  VMwareCertified     2015-01-19

ata-pata-hpt3x2n               0.3.4-3vmw.550.0.0.1331820            VMware  VMwareCertified     2015-01-19

ata-pata-pdc2027x              1.0-3vmw.550.0.0.1331820              VMware  VMwareCertified     2015-01-19

Apparently the driver was not loaded when the server was rebooted

Is there anything that I can do to manually load the driver to see if it sees the NIC ?

PS: don't worry about stability, this is a lab

Tags (2)
0 Kudos
1 Solution

Accepted Solutions
jlanders
VMware Employee
VMware Employee
Jump to solution

I'm struggling to understand the appeal of running a 10 year 10/100 NIC under the latest release of ESXi.

Being a PCI card, the A5506B can't be used in passthrough mode. So, that's not going to be a problem.

The driver you're using was a quick port intended as an experiment in running ESXi 5.1 under Hyper-V running on Windows 2012.

You can follow the discussion in this thread: Vmware ESXI within Hyper-v (server 2012) networking issue

The legacy NIC on Hyper-V emulates the DEC 21140 using the 'tulip' driver. I don't recall anyone using  it on a physical NIC.

The diffs to the linux sources are in the thread, as are instructions on building your own version of the driver.

One thing you will need to do is to get the PCI ID for the A5506B (as told by 'lspci') into /etc/vmware/driver.map.d/tulip.map.

You might be able to get at least one of the ports on the card to work this way.

To get them all lit up you'll likely need to fiddle with the driver source.

View solution in original post

0 Kudos
7 Replies
a_p_
Leadership
Leadership
Jump to solution

Did you already check the ESXi host's vmkernel log file? This file should show you whether the driver supports the network adapter.

André

0 Kudos
PF4VMware
Enthusiast
Enthusiast
Jump to solution

Is this log overwritten with each boot?

If yes I will have to put back the card and look at it

Right now there is nothing there regarding this card but I guess that is because the card is not in the system anymore

Edit: I am not sure if the driver is invoke first of all, that is what I want to make sure by loading the driver manually

0 Kudos
PF4VMware
Enthusiast
Enthusiast
Jump to solution

After some investigation I realized that my network cards were actually installed correctly but they were automatically made available for passthrough

Now my next question is this, how can I configure these to be available at host level?

Here is what the PCI tree looks like

I wonder if the cards are not available at host level because they have to be manually added or it is simply because the quad NIC card is quite old and it might not support features that

are needed at this level (host level) One things that comes to my mind is 802.1q labeling not supported although this would be odd since this card was server grade card. Anyway, great card for someone who needs to simulate network appliances. I wish my MB had more PCI slots because I have more of these

mOURGod[1].png

The above nics do not show at host level

~ # esxcfg-nics -l

Name    PCI           Driver      Link Speed     Duplex MAC Address       MTU    Description                  

vmnic0  0000:03:00.00 e1000e      Up   1000Mbps  Full   f4:6d:04:02:72:e6 1500   Intel Corporation 82574L Gigabit Network Connection

vmnic1  0000:04:00.00 e1000e      Down 0Mbps     Half   f4:6d:04:02:73:01 1500   Intel Corporation 82574L Gigabit Network Connection

0 Kudos
jlanders
VMware Employee
VMware Employee
Jump to solution

I'm struggling to understand the appeal of running a 10 year 10/100 NIC under the latest release of ESXi.

Being a PCI card, the A5506B can't be used in passthrough mode. So, that's not going to be a problem.

The driver you're using was a quick port intended as an experiment in running ESXi 5.1 under Hyper-V running on Windows 2012.

You can follow the discussion in this thread: Vmware ESXI within Hyper-v (server 2012) networking issue

The legacy NIC on Hyper-V emulates the DEC 21140 using the 'tulip' driver. I don't recall anyone using  it on a physical NIC.

The diffs to the linux sources are in the thread, as are instructions on building your own version of the driver.

One thing you will need to do is to get the PCI ID for the A5506B (as told by 'lspci') into /etc/vmware/driver.map.d/tulip.map.

You might be able to get at least one of the ports on the card to work this way.

To get them all lit up you'll likely need to fiddle with the driver source.

0 Kudos
PF4VMware
Enthusiast
Enthusiast
Jump to solution

Ups!
That sounds bad... I don't think that I have the time or the skills to change the above although I would like to

Yes, I came across that thread too there are very few references about this NIC and ESXi 🙂 so it is impossible to miss that one

Why I insist on running this? It is simple I wanted as many NICs as possible on my ESXi server, I am using it to emulate network appliances, this is for a network lab

One thing that you can not really emulate (yet) in such a lab is real world functionality of the L2 switches. For that you need to connect your virtual appliances to real switches. The more such connections the better, hence my need to have as many as possible NICs. I hope that now it is clear why I wanted this and it makes more sense to you

I will give it a try as it is, if it does not work I will remove the card and try something else

edit: Indeed after adding these NICs as PCI resource to some virtual machines these could not be started anymore

a WinXP (quick test I thought) had the Power on disabled

a TiniCore Linux tried to start but it failed

Damn, where were you two days ago when I started digging this. I wasted my time 🙂 (learned a  couple of things in the process thought)

PS: I might need to go with KVM since Linux sees this card without any problems via the same tulip driver.

I have 3 of them in an older machine in my lab

0 Kudos
PF4VMware
Enthusiast
Enthusiast
Jump to solution

There is something that I don't understand about the above statement:

"PCI is not passed through"

I just added a Broadcom NetXtreme BCM5704 2x1Gbe card and this like it could pass through ...see below

jBNofGR[1].png

0 Kudos
jlanders
VMware Employee
VMware Employee
Jump to solution

It's an old PCI card that was probably designed without IOMMU support.

You're certainly welcome to try adding it as a VMDirectPath device.

If it doesn't work, /var/log/vmkernel.log might give you a hint why it failed.

0 Kudos