MotherboardsMemoryStorageCases & CoolingIT ComputingDisplaysMobileMacCPUs & ChipsetsVideoDigital CamerasLinuxMultimediaSystemsTrade ShowsGuidesHome

Spacer
My Menu
Enter login information
*
*

Forget your login information?
< REFRESH >
Topic Title: Thinkpad T41 and intel 2200 wireless miniPCI
Topic Summary: Can they be made to work?
Created On: 05/15/2004 02:50 AM

Search these messages

View Related Topics

Pages: [ << 3 4 5 6 7 >> Previous Next ]
View topic in raw text format.
 05/02/2005 08:57 AM
 User is offline  View Users Profile  Print this message

Author Icon
WhiteHeat
Junior Member

Posts: 4
Joined: 05/02/2005

Well I have an HP zt3000 and they did the same thing to me (bios whitelist). A bloke at our forum found a way around it and I just wanted to sharethe fix with the IBM community.
Go here and see...
You will have to have linux installed but the process was VERY easy. Basicly we just reprogram the subsystem ID code on the card to reflect what we need. You will have to look in the inf file that comes with the Intel Driver to find out what code you need but this will eliminate the need for people with Intel cards having to hack their bioses.

Hope this helps out you guys !!

Bryan

-------------------------
Come visit the Asus Z71 Series Forumsl

Never forget to be romantic again -- Rominder.com
    Reply     Quote     Top     Bottom    
 05/02/2005 11:48 AM
 User is offline  Print this message

Author Icon
mibas
Junior Member

Posts: 14
Joined: 10/05/2004

Thanks!
It seems, that we are much closer to make LED working.

Michal
    Reply     Quote     Top     Bottom    
 05/09/2005 07:50 AM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

This is all very interesting.
Theoretically, this should mean it is possible to reprogram the 2200BG EEPROM to look like an IBM card.
Really I'd almost given up on making my LED work....
I'll keep you posted.
    Reply     Quote     Top     Bottom    
 05/11/2005 02:37 PM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

Okay guys, I have a version of linux (Knoppix) on a boot CD up and running on my laptop, and can build the drivers required to write to the 2200BG EEPROM!

I was thinking that putting 0x03 in byte offset 0x4A in the EEPROM would turn it into an IBM card. As this is how the driver works out the OEM card version, so I did that.

Unfortunately that doesn't work, so don't try it! In fact it completely screwed the card so it wouldn't even boot under linux or Windows - so basically I couldn't even use ethtool to set it back again! Eventually I managed to write to the EEPROM by adding some custom code to the card initialisation routine. Phew!

Does anyone have an official IBM (or any other OEM for that matter) 2200BG card which we could dump the EEPROM on? Then I can see what else is different other than the PCI ID and NIC Type?

Here's how to do it:
Download Knoppix LiveCD from http://www.knoppix.net/
The version you want is KNOPPIX_V3.8.1-2005-04-08-EN.iso
Burn this iso image to a CD (Note you must use the disk image option of your CD burning software, not just put the iso file on a data CD)
Boot your computer using the CD - Hopefully it will auto-detect all your hardware (just press enter at the boot screen) and eventually arrive at the desktop. Neat eh?
Click on the penguin on the taskbar and select "Root Shell", then the following command (from now on any line that begins with a # is a command to be typed at the Root prompt:
#iwconfig
You will get a list of ethernet adapters, eth0, eth1 etc. The wireless one should be quite obvious from the text displayed after it with all the wireless parameters!
#ethtool -e ethX
Obviously replace the 'X' with the index of your wireless card you found above.
You will get a hex dump of the 256 bytes of EEPROM data. Post it here, you may want to remove your MAC address.
Note: There is nothing dangerous in the above steps at all.

If you want to writing to your EEPROM (You can seriously screw your card up - as I showed - so don't do this unless you know what you are doing!):
You will need to download the linux kernel sources for 2.6.11 and make them. This is what I did. Note you will need to be connected to the internet via the onboard ethernet:
#cd /usr/src
#wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.11.tar.bz2
#tar xvjf linux-2.6.11.tar.bz2
#cd linux-2.6.11
#make xconfig
Select save and exit on the GUI config screen that pops up
#make
I'm not really sure if the last two steps are 100% correct, but they enabled me to build the ipw2200 module that I needed in the next step! Note the last make takes quite some time, but you don't seem to have to wait for it to finish!:

Next you will need to download the ipw2200 sources, patch them and make that:
#mkdir /usr/tmp
#cd /usr/tmp
#wget http://mesh.dl.sourceforge.net/sourceforge/ipw2200/ipw2200-1.0.3.tgz
#tar xvzf ipw2200-1.0.3.tgz
#cd ipw2200-1.0.3
#wget http://stachon.webpark.cz/files/ipw-eeprom-write.patch
#patch -p < ipw-eeprom-write.patch
#make

Now you can unload the current ipw2200 module:
#sh unload

And reload your new one you have just patched:
#sh load

You can view the driver debug output:
#dmesg
Which is really useful if you have problems getting it to load.

Now you can write to your card EEPROM as specified in WhiteHeat's post, and Druid_cz's instructions here http://www.x1000forums.com/index.php?showtopic=8737
But be very, very, very careful what you do!

Really the thanks for all this should go to Drudi_cz who worked it all out, as WhiteHead says. I'll let you all know if I have any luck with the LED....

Edited: 05/13/2005 at 09:38 AM by pcbbc
    Reply     Quote     Top     Bottom    
 05/12/2005 06:57 AM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

Well, I have sucessfully reprogrammed my Intel 2200BG card into an IBM Intel 2200BG, by changing the PCI subsystem ID. Now my BIOS boots with the card in with no BIOS patch or 1802 workaround! Also IBM Access Connections works without modification. Unfortunately the LED still doesn't work! Aggghhh!

All I needed to do was change the PCI subsystem id from 27028086 to 27128086.
These values can all be found in the Intel 2200BG driver instal file, W22N51.SYS.
This changes the card from an "Intel 2200 mPCI 3B - RoW" to "IBM 2200 mPCI 3B - RoW". If you are in the US (what Intel seem to call MoW - Most of World - LOL) you would need to change from 27018086 to 27118086. Other OEM values are also in the file for Del, Fujitsu, Toshiba, Sony and HPQ.

The command to do this (once you have built the custom driver in my previous post) is:
#ethtool -E ethX magic 0x2200 offset 0x08 value 0x12
Remember to replace the X in ethX with your wireless ethernet card ID from iwconfig
Also remember neither I nor anyone else is responsible if it all goes wrong!

Oh, and I have an official IBM card on order so I can dump the EEPROM and find out what controls that LED. I guess I can always sell it on ebay or send it back when I'm done.

Edited: 05/12/2005 at 07:03 AM by pcbbc
    Reply     Quote     Top     Bottom    
 05/12/2005 07:15 AM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

quote:

Originally posted by: roibm
quote:

Originally posted by: roks
Thanks man.....I did manage to backup my bios with phlash16.exe.


can you please tell me how di you do that?
I used 6 different versions of phlash and none works.
I even used the version that is in the floppy image and nothing. it complains about a missing image, and yes, the image is missing since that's the thing I miss. I tried both /BU and ?RO params and no luck...

I found that too. I think phlash16 was expecting the name of the new EEPROM image file on the floppy disk to be passed in on the command line? For some reason it seems to need the new image to know what to backup (I expect it contains the size and some parameters, as phlash is a general purpose utility for lots of different EEPROMs?).

Sorry, but I can't remember exactly what I did. It's either that, or I may have renamed the image on the floppy to what phlash16 was expecting. I would have found the original name of the image by hex editing the executable. However I know I did get this to work (eventually).
    Reply     Quote     Top     Bottom    
 05/12/2005 07:42 AM
 User is offline  Print this message

Author Icon
mibas
Junior Member

Posts: 14
Joined: 10/05/2004

Thanks PCBBC!
Could I ask You for a copy of IBM's EEPROM dump?

cheers

Michał
    Reply     Quote     Top     Bottom    
 05/12/2005 12:42 PM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

quote:

Originally posted by: mibas
Thanks PCBBC!
Could I ask You for a copy of IBM's EEPROM dump?

NP. When I get the card, and if reprogramming the Intel card the same as the IBM makes the LED work I will post back the changes you need to make.
If you feel confident you could change your subsystem ID, from 2702 to 2712, as I have proved that works. I see actually you already posted that as a potential solution earlier, but unfortunately it doesn't seem to make the led work.
Be VERY careful though. Hopefully my instructions are good enough...
    Reply     Quote     Top     Bottom    
 05/12/2005 03:03 PM
 User is offline  View Users Profile  Print this message

Author Icon
WhiteHeat
Junior Member

Posts: 4
Joined: 05/02/2005

Glad to hear you are making some progress - good luck on the LED problem.

Whiteheat

-------------------------
Come visit the Asus Z71 Series Forumsl

Never forget to be romantic again -- Rominder.com
    Reply     Quote     Top     Bottom    
 05/12/2005 03:04 PM
 User is offline  Print this message

Author Icon
mibas
Junior Member

Posts: 14
Joined: 10/05/2004

Thanks in advance.
This is EEPROM dump of my 2200BG:
Offset Values
------ ------
0x0000 02 a5 00 80 20 42 86 80 02 27 86 80 18 00 01 03
0x0010 00 dc 22 c8 00 40 01 13 00 00 00 05 00 00 00 00
0x0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0030 00 00 00 00 30 30 30 45 33 35 xx xx xx xx xx xx
0x0040 26 38 00 0e 35 xx xx xx 00 46 00 01 5a 5a 52 00
0x0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0060 0c 00 00 00 00 00 01 00 00 00 00 00 00 00 03 00
0x0070 33 30 34 41 44 00 00 00 00 43 37 32 39 39 34 30
0x0080 30 31 00 00 0e 15 f3 30 03 01 d2 05 82 ff 00 00
0x0090 12 14 12 00 0d 00 0f f0 00 00 00 0f 00 0f f0 00
0x00a0 00 00 00 00 00 00 00 00 f9 00 00 00 00 00 00 00
0x00b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00e0 00 00 00 00 04 00 01 00 00 00 00 01 00 00 00 00
0x00f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

cheers

Michał

Edited: 05/14/2005 at 06:58 AM by mibas
    Reply     Quote     Top     Bottom    
 05/12/2005 06:18 PM
 User is offline  Print this message

Author Icon
mibas
Junior Member

Posts: 14
Joined: 10/05/2004

PCBC:
have You tried to change cell 0x4A? you have written something in the past about it..

cheers

Michał
    Reply     Quote     Top     Bottom    
 05/13/2005 09:22 AM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

Michal:
Thanks for the dump. Which OEM model? I assume Intel from your previous posts, the PCI subsystem and as 0x4a = 0x00 in your dump.
However what I really need is a dump of the IBM version, and it has arrived today!

DO NOT UNDER ANY CIRCUMSTANCES CHANGE 0x4A!!!!
That was my first attempt, after I managed to write to the EEPROM, and the card would not work at all! It is a real pain (well, not too bad, but a little tricky) to get it back again.
My next attempt was to change PCI subsystem AND 0x4A, and that didn't work either (same result). So far changing the subsystem ONLY appears to be safe and known to work.

Edited: 05/13/2005 at 09:28 AM by pcbbc
    Reply     Quote     Top     Bottom    
 05/13/2005 11:07 AM
 User is offline  Print this message

Author Icon
mibas
Junior Member

Posts: 14
Joined: 10/05/2004

Intel 2200BG OEM (2702), product code:WM3B2200BGRWWB2

Michał
    Reply     Quote     Top     Bottom    
 05/13/2005 04:26 PM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

And here is the dump of my Intel 2200BG. What's interesting is there are quite a few differences, even between two cards of the same type. Ummm....
Note that I have already patched the PCI subsystem to 27128086:

Offset Values
------ ------
0x0000 02 a5 00 80 20 42 86 80 12 27 86 80 18 00 01 03
0x0010 00 dc 22 c8 00 40 01 13 00 00 00 05 00 00 00 00
0x0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0030 00 00 00 00 30 30 30 45 33 35 xx xx xx xx xx xx
0x0040 f7 70 00 0e 35 xx xx xx 00 46 00 01 5a 5a 52 00
0x0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0060 0c 00 00 00 00 00 01 00 00 00 00 00 00 00 03 00
0x0070 33 38 34 41 44 00 00 00 00 43 37 32 39 39 34 30
0x0080 30 31 00 00 44 0a 2d 31 03 01 c9 05 9f 26 00 00
0x0090 13 15 12 00 00 00 0f 0d e2 00 00 00 00 0f 0f 00
0x00a0 00 00 00 00 00 00 00 00 f9 00 00 00 00 00 00 00
0x00b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00e0 00 00 00 00 04 00 01 00 00 00 00 01 00 00 00 00
0x00f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Anyway, next to replace the card with the IBM part and see what's on that! I'll keep you posted.
And here it is:
Offset Values
------ ------
0x0000 02 a5 00 80 20 42 86 80 12 27 86 80 18 00 01 03
0x0010 00 dc 22 c8 00 40 01 13 00 00 00 05 00 00 00 00
0x0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0030 00 00 00 00 30 30 31 32 46 30 xx xx xx xx xx xx
0x0040 e1 b7 00 12 f0 xx xx xx 00 46 03 00 5a 5a 52 00
0x0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0060 0c 00 00 00 00 00 02 00 00 00 00 00 00 00 03 00
0x0070 31 32 35 42 54 00 00 00 00 43 36 31 38 33 30 30
0x0080 31 30 00 00 15 31 7c 32 03 01 dc 05 83 fe 00 00
0x0090 16 19 12 00 00 0f 00 0f 00 00 00 00 00 0f 00 00
0x00a0 00 00 00 00 00 00 00 00 f9 00 00 00 00 00 00 00
0x00b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00e0 00 00 00 00 03 01 01 00 00 00 00 01 00 00 00 00
0x00f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

So as expected the OEM card ID at 0x4A has changed from 0x00 (Intel) to 0x03 (IBM). But there are some other subtle changes too. I'll need to take some time to work on these.

Edited: 05/13/2005 at 05:00 PM by pcbbc
    Reply     Quote     Top     Bottom    
 05/13/2005 06:59 PM
 User is offline  Print this message

Author Icon
mibas
Junior Member

Posts: 14
Joined: 10/05/2004

I think that some cells contains card settings, so it depends on settings in driver tab. Maybe there is somewhere a checksum..
What is in cells 3a-3f?

cheers

Michał
    Reply     Quote     Top     Bottom    
 05/13/2005 07:10 PM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

Unfortunately the sticky labels on both sides of the card obscure most of the components. However having examined what is visible of both cards carefully (esp PCI pin tracks), they look identical.
The Intel card has PBC54910-004 and R2-2 silk-screened on it.
The IBM card has PBC54910-005 and B4-1 silk-screening.

Here is my summary of the differences in the EEPROM:

ADDR LN A B Description
0000 04 - -
0004 02 - - PCI Device ID
0006 02 - - PCI Vendor ID
0008 02 - Y PCI Subsystem ID
000A 02 - - PCI Subsystem Vendor ID
000C 07 - -
0013 01 - - PME Capability
0014 20 - -
0034 0C Y Y MAC (ASCII)
0040 02 Y Y Checksum: XOR of all words 0x40-0xfe = 0x0000
0042 06 Y Y MAC (Binary)
0048 01 - -
0049 01 - - EEPROM type
004A 01 - Y NIC Type (OEM version)
004B 01 - ? SKU Capability
004C 03 - - Country code
004F 01 - -
0050 02 - - IBSS channels BG
0052 01 - -
0053 05 - - IBSS channels A
0058 02 - - BSS channels BG
005A 0C - -
0066 01 - ?
0067 09 - -
0070 05 Y Y Mid 5 characters serial xxxxxxXXXXXxxxxxxxxx
0075 04 - -
0079 09 Y Y Last 9 characters serial xxxxxxxxxxxXXXXXXXXX
0082 1E ? ?
00A0 44 - -
00E4 02 - Y Hardware version
00E6 1A - -

Key:
ADDR=Address
LN=Length
A=Comparison of two Intel cards
B=Comparison of Intel vs IBM

- = Not different
Y = Different but explainable/known reason
? = Different for unknown reason

It seems to me that 0x40/0x41 might be a checksum preventing the card from booting if anything changes, in the 0x42-0x?? range? Perhaps this is why I had no luck changing the NIC type the first time. To validate this I intend to change the MAC address and see if the card still functions.

Other likely candidates for investigation (discounting things that are different on all three cards) are:
0x4A as discussed, 0x4B, 0x66, 0xE4/0xE5

Edited: 05/14/2005 at 05:45 AM by pcbbc
    Reply     Quote     Top     Bottom    
 05/13/2005 08:20 PM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

I think we may nearly be there. Bytes 0x40/0x41 do indeed appear to be a checksum. It's a simple XOR of all the words on the EEPROM from 0x42 through 0xfe, so the XOR of all the words 0x40 through 0xfe yields zero. This is true for all 3 dumps I have.

Now time to reboot to linux and try and change offset 0x4A again, only this time correcting the checksum. Things are looking hopeful...

Okay, it is a checksum as my Intel card now boots and works with 0x4a=0x03 and 0x4b=0x00 as per the IBM card.
Unfortunately STILL no LED. Agggggh!!

I'll try some other settings tomorrow, but for now I'm off to bed.

Michal, if you look at the table above you will see why I have blanked 0x3a-0x3f. You may want to edit your post. I'd have warned you if I'd noticed earlier!
It was useful however, as it enabled me to validate the checksumed area for all three cards and be sure I'd got the algorithm right.

Edited: 05/13/2005 at 09:00 PM by pcbbc
    Reply     Quote     Top     Bottom    
 05/14/2005 06:39 AM
 User is offline  Print this message

Author Icon
Egika
Junior Member

Posts: 2
Joined: 05/14/2005

@pcbbc:

I tried your knoppix solution and encountered the following problem:

while compiling the driver, my notebook seems to get stuck... It continously accesses the CD-ROM drive and gets hardly usable...
What can this be? I waited for an hour or so to let it finish, but it obviously won't...

Can you help?

Thanks,
Egika
    Reply     Quote     Top     Bottom    
 05/14/2005 06:45 AM
 User is offline  Print this message

Author Icon
pcbbc
Junior Member

Posts: 13
Joined: 01/26/2005

This is so frustrating! I now have my Intel card programmed thus:

Offset Values
------ ------
0x0000 02 a5 00 80 20 42 86 80 12 27 86 80 18 00 01 03
0x0010 00 dc 22 c8 00 40 01 13 00 00 00 05 00 00 00 00
0x0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0030 00 00 00 00 30 30 30 45 33 35 xx xx xx xx xx xx
0x0040 f0 70 00 0e 35 xx xx xx 00 46 03 00 5a 5a 52 00 *** 00 01 -> 03 00
0x0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0060 0c 00 00 00 00 00 02 00 00 00 00 00 00 00 03 00 *** 01 -> 02
0x0070 33 38 34 41 44 00 00 00 00 43 37 32 39 39 34 30
0x0080 30 31 00 00 44 0a 2d 31 03 01 c9 05 9f 26 00 00
0x0090 13 15 12 00 00 00 0f 0d e2 00 00 00 00 0f 0f 00
0x00a0 00 00 00 00 00 00 00 00 f9 00 00 00 00 00 00 00
0x00b0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x00e0 00 00 00 00 03 01 01 00 00 00 00 01 00 00 00 00 *** 04 00 -> 03 01
0x00f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

The card still works, but still no LED! Really I am starting to think this is impossible.
Either there IS some hardware difference, or the LED is controlled by some firmware on card which is not loaded at boot time.
    Reply     Quote     Top     Bottom    
 05/14/2005 07:04 AM
 User is offline  Print this message

Author Icon
mibas
Junior Member

Posts: 14
Joined: 10/05/2004

OK, thanks, good job!
Have a break, maybe later You will find somethnig. Have You tried to use it with IBM Access Connection Wizard? Maybe there is a key..

cheers
Michał
    Reply     Quote     Top     Bottom    
Pages: [ << 3 4 5 6 7 >> Previous Next ]
View topic in raw text format.
< REFRESH >

FuseTalk Enterprise Edition - © 1999-2005 FuseTalk Inc. All rights reserved.