Discussion:
[Unattended] bnx2 firmware doesn't load
melbogia
2010-09-14 16:11:45 UTC
Permalink
Hi,
I am using the latest version of unattended, 4.9. My machine has a
broadcom NIC which uses the bnx2 module. When I pxe boot into
unattended it runs fine until it tries to load the bnx2 module, at
which point it fails like so

*** Next, we'll look for PCI Ethernet hardware...
Looking for PCI devices of class 0x020000 (mask 0xFFFF00)
01:00.0 0200: 14e4:163b (rev 20)
01:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716
Gigabit Ethernet (rev 20)
01:00.1 0200: 14e4:163b (rev 20)
01:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716
Gigabit Ethernet (rev 20)
Looking for PCI devices of class 0x068000 (mask 0xFFFF00)
Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.0.2 (Aug 21, 2009)

bnx2 0000:01:00.0: PCI->APIC IRQ transform: INT A -> IRQ 28
bnx2 0000:01:00.0: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
bnx2: Can't load firmware file "bnx2/bnx2-mips-09-5.0.0.j3.fw"
bnx2: probe of 0000:01:00.0 failed with error -2
bnx2 0000:01:00.1: PCI->APIC IRQ transform: INT B -> IRQ 40
bnx2 0000:01:00.1: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
bnx2: Can't load firmware file "bnx2/bnx2-mips-09-5.0.0.j3.fw"
bnx2: probe of 0000:01:00.1 failed with error -2


I am not sure where exactly it is looking for the firmware, it seems
to be looking at a relative path of bnx2/bnx2-mips-09-5.0.0.j3.fw. I
extracted the initrd and looked at /lib/firmware/bnx2 and the firmware
is there. I tried to symlink that location to /bnx2 but that didn't
help either. Does anyone know how to get this to work?
Juanjo Pablos
2010-09-14 17:02:08 UTC
Permalink
Post by melbogia
Hi,
I am using the latest version of unattended, 4.9. My machine has a
broadcom NIC which uses the bnx2 module. When I pxe boot into
unattended it runs fine until it tries to load the bnx2 module, at
which point it fails like so
*** Next, we'll look for PCI Ethernet hardware...
Looking for PCI devices of class 0x020000 (mask 0xFFFF00)
01:00.0 0200: 14e4:163b (rev 20)
01:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716
Gigabit Ethernet (rev 20)
01:00.1 0200: 14e4:163b (rev 20)
01:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716
Gigabit Ethernet (rev 20)
Looking for PCI devices of class 0x068000 (mask 0xFFFF00)
Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.0.2 (Aug 21, 2009)
bnx2 0000:01:00.0: PCI->APIC IRQ transform: INT A -> IRQ 28
bnx2 0000:01:00.0: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
bnx2: Can't load firmware file "bnx2/bnx2-mips-09-5.0.0.j3.fw"
bnx2: probe of 0000:01:00.0 failed with error -2
bnx2 0000:01:00.1: PCI->APIC IRQ transform: INT B -> IRQ 40
bnx2 0000:01:00.1: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
bnx2: Can't load firmware file "bnx2/bnx2-mips-09-5.0.0.j3.fw"
bnx2: probe of 0000:01:00.1 failed with error -2
I am not sure where exactly it is looking for the firmware, it seems
to be looking at a relative path of bnx2/bnx2-mips-09-5.0.0.j3.fw. I
extracted the initrd and looked at /lib/firmware/bnx2 and the firmware
is there. I tried to symlink that location to /bnx2 but that didn't
help either. Does anyone know how to get this to work?
Build the linuxboot from source.

https://sourceforge.net/apps/trac/unattended/wiki/ModifyingTheBootDisk

Then on linuxboot/linux type make menuconfig

go to Device Drives > Generic Driver Options > External firmware blobs
to build into the kernel
And add

bnx2/bnx2-mips-09-5.0.0.j3.fw
melbogia
2010-09-14 20:50:23 UTC
Permalink
I went through that and added bnx2/bnx2-mips-09-5.0.0.j3.fw to
External firmware blobs to build into the kernel binary, as you
suggested. Then I ran 'make' and got the following error.

...
...
MK_FW firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw.gen.S
make[1]: *** No rule to make target
`firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw', needed by
`firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw.gen.o'. Stop.
make: *** [firmware] Error 2

I am not what to make of this.
Post by Juanjo Pablos
Post by melbogia
Hi,
I am using the latest version of unattended, 4.9. My machine has a
broadcom NIC which uses the bnx2 module. When I pxe boot into
unattended it runs fine until it tries to load the bnx2 module, at
which point it fails like so
*** Next, we'll look for PCI Ethernet hardware...
Looking for PCI devices of class 0x020000 (mask 0xFFFF00)
01:00.0 0200: 14e4:163b (rev 20)
01:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716
Gigabit Ethernet (rev 20)
01:00.1 0200: 14e4:163b (rev 20)
01:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5716
Gigabit Ethernet (rev 20)
Looking for PCI devices of class 0x068000 (mask 0xFFFF00)
Broadcom NetXtreme II Gigabit Ethernet Driver bnx2 v2.0.2 (Aug 21, 2009)
bnx2 0000:01:00.0: PCI->APIC IRQ transform: INT A ->  IRQ 28
bnx2 0000:01:00.0: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
bnx2: Can't load firmware file "bnx2/bnx2-mips-09-5.0.0.j3.fw"
bnx2: probe of 0000:01:00.0 failed with error -2
bnx2 0000:01:00.1: PCI->APIC IRQ transform: INT B ->  IRQ 40
bnx2 0000:01:00.1: firmware: requesting bnx2/bnx2-mips-09-5.0.0.j3.fw
bnx2: Can't load firmware file "bnx2/bnx2-mips-09-5.0.0.j3.fw"
bnx2: probe of 0000:01:00.1 failed with error -2
I am not sure where exactly it is looking for the firmware, it seems
to be looking at a relative path of bnx2/bnx2-mips-09-5.0.0.j3.fw. I
extracted the initrd and looked at /lib/firmware/bnx2 and the firmware
is there. I tried to symlink that location to /bnx2 but that didn't
help either. Does anyone know how to get this to work?
Build the linuxboot from source.
https://sourceforge.net/apps/trac/unattended/wiki/ModifyingTheBootDisk
Then on linuxboot/linux type make menuconfig
go to Device Drives > Generic Driver Options >  External firmware blobs to
build into the kernel
And add
bnx2/bnx2-mips-09-5.0.0.j3.fw
Juanjo Pablos
2010-09-15 08:18:19 UTC
Permalink
Post by melbogia
I went through that and added bnx2/bnx2-mips-09-5.0.0.j3.fw to
External firmware blobs to build into the kernel binary, as you
suggested. Then I ran 'make' and got the following error.
Looks like it was deleted from the kernel tree:

http://www.linuxhq.com/kernel/v2.6/34-rc2/firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw.ihex


but I do not know the reason.
Juanjo Pablos
2010-09-15 08:28:20 UTC
Permalink
Post by melbogia
I went through that and added bnx2/bnx2-mips-09-5.0.0.j3.fw to
External firmware blobs to build into the kernel binary, as you
suggested. Then I ran 'make' and got the following error.
...
...
MK_FW firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw.gen.S
make[1]: *** No rule to make target
`firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw', needed by
`firmware/bnx2/bnx2-mips-09-5.0.0.j3.fw.gen.o'. Stop.
make: *** [firmware] Error 2
I am not what to make of this.
give it a try with

bnx2/bnx2-mips-09-5.0.0.j15.fw

and report back.

Loading...