-
Senior Member
registered user

Originally Posted by
krishnaprasadk
Hello,
But if i have an Intel card and if e1000.ko is the driver, this gets initalized properly. The issue is only with bnx2.ko and the firmware files.
Unfortunately all of my systems have Onboard Broadcom NICs.

I have asked you to read the document, you have probably not read it thoroughly yet. 
Nevermind, that's the long version of the answer. The short version of the answer is as follows :-
You need to have a shell script called /sbin/hotplug, with execution permission, the content
is something like this :-
#!/bin/sh
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/bnx2/$FIRMWARE > /sys/$DEVPATH/data
echo 0 > /sys/$DEVPATH/loading
That's will likely do the trick.
Cheers.
-

Originally Posted by
kl522
I have asked you to read the document, you have probably not read it thoroughly yet.

Nevermind, that's the long version of the answer. The short version of the answer is as follows :-
You need to have a shell script called /sbin/hotplug, with execution permission, the content
is something like this :-
#!/bin/sh
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/bnx2/$FIRMWARE > /sys/$DEVPATH/data
echo 0 > /sys/$DEVPATH/loading
That's will likely do the trick.
Cheers.
my bad !!.. i read the doc but it didn't clicked for me. I will try this out today. I've just one basic question..what's the DEVPATH needs to be used in my case? will it be the hard drive device name? please advise
Thanks,
Krishnaprasad
-

Originally Posted by
kl522
I have asked you to read the document, you have probably not read it thoroughly yet.

Nevermind, that's the long version of the answer. The short version of the answer is as follows :-
You need to have a shell script called /sbin/hotplug, with execution permission, the content
is something like this :-
#!/bin/sh
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/bnx2/$FIRMWARE > /sys/$DEVPATH/data
echo 0 > /sys/$DEVPATH/loading
That's will likely do the trick.
Cheers.
Hi, Please ignore my previous post.
i do see that DEVPATH is the Path under /sys at which this device's sysfs directory can be found. i saw the documentation inside Documentation/firmware_class as well. From there i understood the way kernel is calling the firmware and how it needs to be passed from the user end. per your advise, I've created a script /sbin/hotplug as below:-
#!/bin/sh
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/bnx2/$FIRMWARE > /sys/class/firmware/data
echo 0 > /sys/$DEVPATH/loading
Now the firmware is read while loading the module and it fails with an error message as below
firmware 0000:05:00.0: firmware_loading_store: vmap() failed
bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
bnx2: probe of 0000:05:00.0 failed with error -2
I am checking bnx2 driver code on why this failure is seen.
Thanks,
Krishnaprasad
-

Originally Posted by
krishnaprasadk
Hi, Please ignore my previous post.
i do see that DEVPATH is the Path under /sys at which this device's sysfs directory can be found. i saw the documentation inside Documentation/firmware_class as well. From there i understood the way kernel is calling the firmware and how it needs to be passed from the user end. per your advise, I've created a script /sbin/hotplug as below:-
#!/bin/sh
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/bnx2/$FIRMWARE > /sys/class/firmware/data
echo 0 > /sys/$DEVPATH/loading
Now the firmware is read while loading the module and it fails with an error message as below
firmware 0000:05:00.0: firmware_loading_store: vmap() failed
bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
bnx2: probe of 0000:05:00.0 failed with error -2
I am checking bnx2 driver code on why this failure is seen.
Thanks,
Krishnaprasad
It looks like the issue that i am seeing ( i.e. while loading the bnx2 firmware, vmap() call is failed ) is a known issue. i do see the link as below and it exactly matches the error code that i am seeing.
patchwork.kernel.org/patch/49056/
vmap is called to load the firmware data stored in /lib/firmware/bnx2/$FIRMWARE to the kernel.
Looks like Knoppix is not yet included the fix mentioned in the above link in the kernel that they use. So i compiled ( Changed firmware_class.c in drivers/base ) and created a new bzImage using Live CD but still i face the same error. The error is as below
firmware 0000:05:00.0: firmware_loading_store: vmap() failed
bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
bnx2: probe of 0000:05:00.0 failed with error -2
Any one have faced an error like this?
i am blocked my Knoppix Booting via PXE because of this issue ..
any help will be highly appreciated !
Thank you all for your time !
- Krishnaprasad
-
Senior Member
registered user

Originally Posted by
krishnaprasadk
Now the firmware is read while loading the module and it fails with an error message as below
firmware 0000:05:00.0: firmware_loading_store: vmap() failed
bnx2: Can't load firmware file "bnx2/bnx2-mips-06-4.6.16.fw"
bnx2: probe of 0000:05:00.0 failed with error -2
I am checking bnx2 driver code on why this failure is seen.
Thanks,
Krishnaprasad
Try this improved script ( still not the best ) :-
Code:
#!/bin/sh
[ -z "$FIRMWARE" ] && exit
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/$FIRMWARE > /sys/class/firmware/data
echo 0 > /sys/$DEVPATH/loading
Please, this is not ***NOT*** a kernel bug or something, this is
an ***EXPECTED*** behaviour.
Cheers.
-

Originally Posted by
kl522
Try this improved script ( still not the best ) :-
Code:
#!/bin/sh
[ -z "$FIRMWARE" ] && exit
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/$FIRMWARE > /sys/class/firmware/data
echo 0 > /sys/$DEVPATH/loading
Please, this is not ***NOT*** a kernel bug or something, this is
an ***EXPECTED*** behaviour.
Cheers.
Hello,
Sorry if i took a wrong route. I tried the above change that you advised in /sbin/hotplug script, but still bnx2 fails to load the firmware file. I am still seeing the error message:-
firmware_loading_store: vmap() failed
As far as scripting is concerned, no difficulties are there.
since i saw a kernel forum thread which shows the exact error message, i thought of following that. Also in the 6.2 DVD, kernel source is available. There also inside drivers/base, firmware_class.c doesnt have the mutex fix that the forum is suggested to use. so I believed that i am facing the same issue.
Now that the loading of bnx2 firmware still fails with this updated script, could you please advise on how to move forward?
I really appreciate the help that you are providing in this issue !
- Krishnaprasad
-

Originally Posted by
kl522
Try this improved script ( still not the best ) :-
Code:
#!/bin/sh
[ -z "$FIRMWARE" ] && exit
echo 1 > /sys/$DEVPATH/loading
cat /lib/firmware/$FIRMWARE > /sys/class/firmware/data
echo 0 > /sys/$DEVPATH/loading
Please, this is not ***NOT*** a kernel bug or something, this is
an ***EXPECTED*** behaviour.
Cheers.
okay..my mistake.. instead of sending the bnx2 firmware data ( /path/$FIRMWARE ) to /sys/$DEVPATH/data, i was re-directing it to /sys/class/firmware/data.
Now i corrected that and bootup of Knoppix 6.2 from PXE is successful using NFS share... there is not even requited to check if $FIRMWARE exists or not.
Thanks for all your patience in helping me out on this.
Thank you !
Krishnaprasad
-
Hi, Looks like this is a known issue.
https://patchwork.kernel.org/patch/49056/
Does any one if this patch is part of any of the upcoming Knoppix releases? 
Thanks,
Krishnaprasad
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules

Genuine IBM ThinkPad Trackpoint Tip Cap Pack 91P8421 NEW OLD STOCK -SEALED - OEM
$8.88

2025 NEW Genuine OEM BATTERY for IBM 00Y4643 00Y4594 90Y7689 90Y7632 V3700 V3500
$119.00

NEW IBM Lenovo T61 14in 4;3 NOT WIDE motherboard T601F FRANKENPAD 44C3924 OEM
$299.95

IBM Genuine OEM Network Printer 12 Toner Cartridge 63H3005 Printer Ink - NEW
$119.58

IBM OEM Genuine 1969-009 CD Driver Untested As PARTS. Read Description.
$32.99

IBM OEM Genuine 1969-010 CD Driver Untested
$44.99

IBM OEM WD25R 20MB MFM 5.25" Full Height Hard Disk Drive - TESTED BAD
$49.99

Vintage New Old Stock IBM PS/2 Mouse 6450350 OEM
$19.95

*NEW* Vintage IBM UltraPort Digital Array Microphone 09N4178 OEM
$54.49

IBM 5763-SS1 R02M00 AS/400 Cumulative PTFS Operating System/400 V3 LOT 6 OEM New
$999.99