Adding Mini PCI cards to the R40's White List - Step by Step

R, A, G and Z series specific matters only
Post Reply
Message
Author
jacb
Posts: 26
Joined: Tue Jul 29, 2008 4:30 am
Location: England & Vietnam

Adding Mini PCI cards to the R40's White List - Step by Step

#1 Post by jacb » Tue Jul 29, 2008 9:31 pm

I have just modified my BIOS and added a new Mini Pci WiFi card to my PC's Bios ..... This is what I did and it works. There may be many more options but I hope this helps those with the same PC that I have.

How to insert a new Mini PCI card in the “White list” of the IBM R40 Thinkpad 2682-K2G - BIOS version 1.27

As you may or may not know, there are very few supported Mini Pci Wi-Fi cards in this particular BIOS. By looking inside my BIOS I find that the supported cards are:

PCI ID & Sub-system - Manufacturer -Card Name
168c:1014/17ab:8331 Atheros IBM 11a/b/g Wireless LAN Mini PCI Adapter (IBM P/N:31P9701 or FRU 91P7301)
168c:0013/1468:0408 Atheros 802.11a/b/g
1260:3873/8086:2513 Prism 2.5 ..........We will replace this card with our new card

This is confirmed by IBM: http://www-307.ibm.com/pc/support/site. ... MIGR-50822

If you have a card that is not on the list what can you do?

1. Download and install a Virtual floppy drive. http://chitchat.at.infoseek.co.jp/vmwar ... 080206.zip
2. Download the “Floppy” version of the R40 2682-K2G BIOS from http://www-307.ibm.com/pc/support/site. ... MIGR-46061 and save it to your hard drive.
3. Double click on the 1ouj24ud.exe file and save the contents to the new virtual drive A: - The file “$018C000.FL1” is the compressed BIOS file we require.

An alternative method to get the “$018C000.FL1” file is to download the IBM “flash” BIOS from http://www-307.ibm.com/pc/support/site. ... 46055.html
A. Open the EXE file with Winrar & extract the IMG file.
B. Open the IMG file with UltraIso and extract the “$018C000.FL1” file.


4. Download “phcomp.exe” from http://ender.in/bios.tools/ and save it to the directory where you saved the “$018C000.FL1” file.
5. Go to - Start – Run – Type “CMD” - Enter
6. Change directory to the directory where “phcomp.exe” and the “$018C000.FL1” files are located.
7. Type: phcomp /d $018C000.FL1 .... This will create a file called $018C000.flh ... this is the uncompressed BIOS file we need.

An alternative method to get the uncompressed BIOS file is:
A. Download http://rapidshare.com/files/88660973/Th ... rocess.rar and decompress the rar file to a folder on the desktop. It creates 3 subfolders called, BIOS, BIOSCOD3 and SLIC.
B. Copy the “$018C000.FL1” to the BIOS folder.
C. Open the folder and edit BIOS.bat with notepad. Change the text to show: e_bcpvpw $018C000.FL1 BIOSmod.rom ....... Save and exit the bat file.
D. Execute the bat file by double clicking it. It will decompress the “$018C000.FL1” file and create a file called BIOSmod.rom ...... This is also an uncompressed BIOS file.


8. Open the BIOSmod.rom or $018C000.flh file with “Edit Pad Pro” and search for “60 12 73 38 86 80 13 25”.
9. Change the values to match your new card. E.g. If you have a Toshiba Satellite M10 version of the “Intel PRO/Wireless LAN 2100 3B Mini PCI Adapter”. The windows device manager will identify it as: “PCI\VEN_8086&DEV_1043&SUBSYS_25818086&REV_04\4&16793A72&0&10F0” and you would replace the “60 12 73 38 86 80 13 25” with “86 80 43 10 81 25 86 80”.
10. File – Save
11. Download “phnxcksm-0.2.exe” from http://ender.in/bios.tools/ and save the file to the same directory where your uncompressed BIOS file is.
12. Start – Run – Type “CMD” - Enter
13. Change directory to the directory to where phnxcksm-0.2.exe is.
14. Type: phnxcksm-0.2 BIOSmod.rom or phnxcksm-0.2 $018C000.flh and press enter followed by 0 and enter again (this sets the chksums back to 0).
15. Type “exit” and press enter.
16. If you are of the nervous disposition you could get yourself a copy of the Phoenix Bios Editor Pro (Ver 2.2.0.1 or later) and open your modified and uncompressed BIOS file. If you look carefully at the bottom of the PBE screen you should see “Sum ~ ~ Sum: 0000”. If you do proceed, if you do not, I.e. sum = anything but 0000, start again.
17. You know have two possible routes, A or B.

A. Download Winphlash 2.0.2.9 from the following location: http://rapidshare.com/files/86482696/Ph ... .0.2.9.rar
i. Run Winphlash and install the new modified uncompressed BIOS – Finished!

B. An alternative method is to compress the BIOS before flashing. To do this:
i. Download “phcomp.exe” from http://ender.in/bios.tools/ and save the file to the same directory as $018C000.flh or BIOSmod.rom
ii. Go to Start – Run – Type CMD - Enter
iii. Go to the directory where the above files are
iv. Type phcomp BIOSmod.rom and press enter. A new file called BIOSmod.ro2 will appear................. or if you are working with the $018C000.flh file, type phcomp $018C000.flh A new file called $018c000.fl2 will appear
v. Rename either BIOSmod.ro2 or $018c000.fl2 as $018C000.FL1 Overwriting the first $018C000.FL1 will help to avoid any mistakes and stop you flashing with the original BIOS by mistake!
vi. Put the modified $018C000.FL1 file back into to the directory used in step 2).
vii. Use a good media-burning tool such as Nero and create a boot CD/DVD. Using the floppy image as boot loader.
viii. Yet another alternative is to use MagicISO and create a new CD/DVD within the program. Again use the floppy files as a boot loader (don’t just save them in the media content) save the compilation as an ISO file. Burn the ISO to a CD/DVD using Nero etc.
ix. Boot from the Disk and flash the BIOS.

18. Now and only now can you install the Lenovo driver http://www-307.ibm.com/pc/support/site. ... MIGR-59438

The note: Machine Types 2681, 2682, 2683 are not supported can be disregarded because of the above changes.
Last edited by jacb on Fri Aug 29, 2008 3:35 am, edited 5 times in total.
R40 2682-K2G
England & Vietnam
Good, better, best; never rest till your good is better and your better is best

ajkula66
SuperUserGeorge
SuperUserGeorge
Posts: 15740
Joined: Sun Feb 25, 2007 11:28 am
Location: Brodheadsville, Pennsylvania

#2 Post by ajkula66 » Tue Jul 29, 2008 10:11 pm

Very impressive work, and extremely detailed post. You are to be congratulated.

Personally, I got around this by sticking with Atheros cards in all R40 units I have owned (and that's many) but for people who prefer Intel, Broadcom or anything else for that fact your research and experiment are truly golden.

Now, I could think of a couple of other ThinkPad models that could use the same treatment...when you have time to spare... :D
...Knowledge is a deadly friend when no one sets the rules...(King Crimson)

Cheers,

George (your grouchy retired FlexView farmer)

AARP club members:A31p, T43pSF

Abused daily: T61p

PMs requesting personal tech support will be ignored.

Terrahawk
Junior Member
Junior Member
Posts: 430
Joined: Wed Sep 20, 2006 12:51 am
Location: Hamilton, New Zealand
Contact:

#3 Post by Terrahawk » Thu Aug 07, 2008 5:08 am

I just want to add a few notes when doing this for Pentium-M equipped R40s (Types 2722 and 2723 in particular).

This method does not work for the R40 BIOS for the 2722/2723 models with the Pentium-M (BIOS version 1.33). The only thing stopping it from working is that the white list for this BIOS appears to be in a different location and searching for and modifying the locations reported by the OP seems to make no difference to the BIOS. I suppose I may be extremely blessed by the fact that I did not change something critical and brick the R40.

I found the new white list location by searching for the IBM Atheros B/G card which has a PCI ID (as mentioned by the OP) of 168c:0013/1468:0408. Once this was found, I discovered a numnber of Intel cards listed here as well as a Cisco Aironet 802.11b card. I chose to replace the Cisco on my BIOS as it was the first in the list (there is a zero byte in between all the different PCI IDs listed.

The hex values to search for are B914:04A5/B914:5000 (PCI ID as returned by lspci in linux read 14B9:A504/14B9:0050 which corresponds to the Aironet card (http://pci-ids.ucw.cz/iii/?i=14b9a504)

I was installing a IBM Wireless a/b/g Mini PCI II card which has a PCI ID of 168C:1014/1014:057E - this is the value returned by lspci in linux, not by the Device Manager in Windows. Why? Read on.

Be careful at this stage! The Windows device manager returned a set of values for the PCI IDs which had one set of two bytes transposed, i.e. 168C:1014/057E:1014 which I put in and they did not work. The correct values are what I have in the previous paragraph - the 057E:1014 should be 1014:057E.

Total payload in the whitelist are three Atheros cards, one Cicso card and one Intel card.

After modifying and recalculating the checksum as described by the OP, I then used WinPhlash to update the BIOS. Thankfully, everything worked properly and my "triple reboot" issue went away. The first time I ever inserted the IBM Mini PCI II card, my R40 seemed to try to POST three times before the IBM logo showed up. Using the no-1802 patch simply allowed it to continue to Windows but did not speed up my POST. After patching the BIOS, the triple POSTing issue went away and my startups are now how I remember them when I had no wireless Mini PCI card.

I installed this modified BIOS on my R40 2722-3GG and my wife's R40 2723-26M. Both R40s are happy and working at the moment (they both have the same wireless card).

One day, I may have to delve further into this and see if I can modify the accepted CPU list and convince my R40 to take a Dothan...

Thanks go to jacb for an awesome write-up on how to do this!
Geoff.
T60P 2007-8JM / T60 1951-A35 / Z60M 2531-E9M / Tablet 1838-23M / Tablet 2 3679-27M
T410 2522-CTO / X301 2776-A17 / X201 3680-FAG / T420 4180-AQ3

jacb
Posts: 26
Joined: Tue Jul 29, 2008 4:30 am
Location: England & Vietnam

#4 Post by jacb » Thu Aug 07, 2008 10:26 pm

Terrahawk wrote:Thanks go to jacb for an awesome write-up on how to do this!
Thanks Terrahawk for the kind words.

How did you get on with the LED and FnF5 issues?

Have a look at http://forum.thinkpads.com/viewtopic.ph ... highlight= for more information ..... any help gratefully accepted..
R40 2682-K2G
England & Vietnam
Good, better, best; never rest till your good is better and your better is best

jacb
Posts: 26
Joined: Tue Jul 29, 2008 4:30 am
Location: England & Vietnam

#5 Post by jacb » Thu Aug 07, 2008 10:31 pm

ajkula66 wrote:JACB ~ You are to be congratulated.

Now, I could think of a couple of other ThinkPad models that could use the same treatment...when you have time to spare... :D
Thanks ajkula66

Regarding the other ThinkPad's .... I think I will pass at the moment - I am still working on the other white lists at this time. See http://forum.thinkpads.com/viewtopic.ph ... highlight= for more background.
R40 2682-K2G
England & Vietnam
Good, better, best; never rest till your good is better and your better is best

Terrahawk
Junior Member
Junior Member
Posts: 430
Joined: Wed Sep 20, 2006 12:51 am
Location: Hamilton, New Zealand
Contact:

#6 Post by Terrahawk » Thu Aug 07, 2008 11:19 pm

jacb wrote:How did you get on with the LED and FnF5 issues?

Have a look at http://forum.thinkpads.com/viewtopic.ph ... highlight= for more information ..... any help gratefully accepted..
I have had no issues with the Fn+F5 LED as I have only used IBM cards which despite not being in the BIOS whitelist, work fine with Fn+F5 and the wireless LED.
Geoff.
T60P 2007-8JM / T60 1951-A35 / Z60M 2531-E9M / Tablet 1838-23M / Tablet 2 3679-27M
T410 2522-CTO / X301 2776-A17 / X201 3680-FAG / T420 4180-AQ3

Terrahawk
Junior Member
Junior Member
Posts: 430
Joined: Wed Sep 20, 2006 12:51 am
Location: Hamilton, New Zealand
Contact:

#7 Post by Terrahawk » Thu Aug 07, 2008 11:35 pm

ajkula66 wrote:Now, I could think of a couple of other ThinkPad models that could use the same treatment...when you have time to spare... :D
I was going to do it to my X31 to add in the IBM 2915abg card that I had in it but since I'm ridding myself of that card, there's no point.
Geoff.
T60P 2007-8JM / T60 1951-A35 / Z60M 2531-E9M / Tablet 1838-23M / Tablet 2 3679-27M
T410 2522-CTO / X301 2776-A17 / X201 3680-FAG / T420 4180-AQ3

gooberpea33
Posts: 10
Joined: Thu Aug 28, 2008 4:21 pm
Location: Massillon, Ohio

#8 Post by gooberpea33 » Thu Aug 28, 2008 7:57 pm

I attempted this with my R52, but found none of the listed ID's in my bios. If anyone has info on how to mod the R52 Bios, your help would be greatly appreciated!!
Thanks!

jacb
Posts: 26
Joined: Tue Jul 29, 2008 4:30 am
Location: England & Vietnam

#9 Post by jacb » Fri Aug 29, 2008 5:24 pm

gooberpea33 wrote:I attempted this with my R52, but found none of the listed ID's in my bios. If anyone has info on how to mod the R52 Bios, your help would be greatly appreciated!!
Thanks!
Hi gooberpea33 ..... after a quick search I found this link http://www-307.ibm.com/pc/support/site. ... MIGR-52623 which shows that the 11a/b/g Wireless LAN Mini PCI adapter P/N: 31P9701 works in the R52. The PCI ID & Sub-system ID for that card are 168c:1014/17ab:8331.

Start your search in the uncompressed BIOS by looking for 8c 16 ..... hopefully you will be able to find 8c 16 14 10 ab 17 31 83 ....... If you do, change the values to match your new card. I can only tell you what I did for my R40 and hope that's of some help. Have a second look at the first post in this listing.
Last edited by jacb on Sat Aug 30, 2008 12:38 am, edited 1 time in total.
R40 2682-K2G
England & Vietnam
Good, better, best; never rest till your good is better and your better is best

gooberpea33
Posts: 10
Joined: Thu Aug 28, 2008 4:21 pm
Location: Massillon, Ohio

#10 Post by gooberpea33 » Fri Aug 29, 2008 5:59 pm

Yes, I have read the first post, which seemed very helpful until I got to the point where I couldn't find anything useful in the uncompressed bios. I even looked for the existing hardware ID for the wireless card that came with it. I am just not able to find the whitelist. If anyone knows any way of going in and disabling the whitelist manually, like that one file does, I'd be more than happy to try that. Thanks!

Zender
Junior Member
Junior Member
Posts: 315
Joined: Sun Mar 18, 2007 8:34 pm
Location: Prague, Czech Republic
Contact:

#11 Post by Zender » Fri Aug 29, 2008 7:24 pm

Unfortunately this method only works for machines old enough to have BiosCode modules uncompressed in the BIOS itself. In newer machines, there's one more layer of compression in the BIOS itself - you'd need to use phnxdeco or Phoenix BIOS editor to decompose and decompress the BIOS, and then put it back together... which isn't really easy to do right.
T60 14" SXGA+ 9c T5600 3GB X1400 4965AGN MC8780 IR BT FPR DVDRW Alps XPP

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “ThinkPad R, A, G and Z Series”

Who is online

Users browsing this forum: Thinkpad4by3 and 5 guests