BIOS-Approved PCI Cards For Laptops
derek_farn writes "First there were printers that would would only work with vendor annointed ink cartridges; now we have laptops that will only boot with vendor annointed PCI cards. Keeping a list of approved PCI cards in the bios is one way of ensuring that customers renew their maintenance contracts. How else are they going to be able to plug in a PCI card released after the last BIOS update?" My HP laptop is several years old; can anyone confirm this?
My HP laptop is several years old; can anyone confirm this?
How should we know? It's your laptop.
I want to drag this out as long as possible. Bring me my protractor.
"My HP laptop is several years old; can anyone confirm this"
I'd need the serial number to confirm the age.. but we'll take your word for it.
You have now confirmed that your laptop is 7 years old.
09 F9 11 02 9D 74 E3 5B - D8 41 56 C5 63 56 88 C0 45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
My older Thinkpad T40p has a whitelist, too. Luckily the Cisco 350 mini-PCI card I needed to connect to the corporate wireless LAN is on the whitelist. IBM actually sells the Cisco card with an IBM part number.
But forget trying to buy a random 802.11 a/b/g card and plug it in.
Is this just Compaq/HP? If so, just don't buy from them?
Please work to undermine the Great Strength of the PC market, the open architecture.
Brilliant move.
They should find everyoen who supported this decision and make sure they never work in any decision-making capacity anywhere again.
We can keep our own list of venders who do this... ..and don't buy from them.
IBM has been doing this in Thinkpads for a while (starting with the T40, I think) - mini-PCI wireless cards are whitelisted, and the PC will refuse to work with anything other than pure, 100% IBM parts.
If you don't like it, don't buy it...
This is nothing new. Linux-lovin' IBM is known to do this as well,
# You need an uncompressed copy of the BIOS. The easiest way to obtain this is probably to use phlash16 under DOS with the /BU option. This will write out an uncompressed copy as BIOS.BAK. /CS option to phlash16 in order to check the checksum.
# Find out the PCI vendor, device and subsystem IDs of your card. In Linux, doing lspci -v will tell you this.
# Open the BIOS file in a hex editor. Find the BCPUSB header (there's an index near the start of the file that contains references to lots of BCP stuff. Ignore the one that appears here). Shortly after this is a set of PCI IDs, split up with 0s. The file is in little endian format, so the first byte in the file is the second byte of the ID. For instance, an IBM Pro/Wireless 2100 is 8086:1043 with a subsystem id of 8086:2551. This will appear as 8680431086805125. Make the modifications to suit your card.
# Find the string EXTD. The 4 bytes after that are an additive checksum. When all the 4 byte blocks in the file are added up, they must equal 0. Change the checksum as appropriate. At some point I'll probably get round to writing a tool to do this.
# Reflash your BIOS. Make sure that you use the
# If it's worked, your card should now work. If it hasn't, your laptop is probably dead.
I can at least confirm that changing the WLAN card in my Dell Inspiron 8200 laptop (because Dell's TrueMobile stuff definitely sucks a donkey's primary sexual organ) wasn't any problem at all. But Dells are known to be pretty user-maintainable anyway ;)
I have an old NetServer LPr that I use as a Debian server. It's built like a tank, and has been fairly reliable, save for one issue:
Since I got it (used), it always printed a warning that non-HP DIMMs were detected, and HP's on-site warranty didn't cover problems caused by non-HP memory.
Then two of the DIMMs failed, so I popped the lid.
You guessed it. HP memory.
At least the motherboard was kind enough to turn on a flashing light next to the bad DIMMS. (Seriously)
You have violated Robot's Rules of Order and will be asked to leave the future immediately.
Many people who run corp laptops have found out that aleast since the T30, IBM laptops will not boot with a non IBM card, Well, if you have the utility you can put any mini-PCI card in there.... They make alot of money with there cards, so you can understand why they would do this.. What I don't hear about is apple and there slots not taking anything but "AIRPORT" cards? why is nobody bitching about that?
I came across his site a while back, and holy crap if he isn't hacking his BIOS to get around these limitations. (His page is linked to if you follow a link from TFA, but I figured he deserves more prominence here.)
Interestingly, this is the same IBM (and HP, for that matter) that we have come to know and love for their help with Linux. I realize they're a big company, full of lawyers and patents and left hands unaware of what the right hand's doing, but I'm still really surprised I haven't heard about this before.
Anyone know of a blacklist of this sort of shenanigans? I'm the sysadmin where I work, and it'd be great to know what to stay away from -- and to explain to these companies why they've lost our business.
Carousel is a lie!
It's too bad TFA doesn't say what kind of mini-PCI card. He probably bought some generic made-in-god-knows-where card from JustDeals or somewhere like that. Now, I'm an opponent of the direction "Trusted Computing" is going, but in this case there's something to be said for a manufacturer locking out shitty peripherals so they don't kill your system. It saves them one more support headache. Apple does the same thing. Sure, lot's of us Mac-heads bitch about it (myself included sometimes), but at the end of the day we can always brag about how plug-and-play Macs are. It looks as though PC manufacturers are following in footsteps of Apple again.
Per Square Mile, a blog about density
Capitalism provides a simple solution to this problem.
Track down the person that made such an non-upgradable notebook and kill them in their sleep.
Actually, maybe that's not the capitalistic way of solving it but it's likely more satisfying.
I'm a big tall mofo.
Which is what the blogger is referring to. Those cards, if I am not mistaken, are the kind of "built-in" cards that you can install, typically under the keyboard, but that you don't remove and re-install all the time. I think you are thinking of PCMCIA cards that you take in and out all the time. And in response to what the blogger is posting, he could remove the MiniPCI card and it would boot fine, and then revert his BIOS back to his old version (unless for some reason it had some VERY critical fix) and then put his card back in and simply not do the BIOS updates unless he really, really has to. But so basically, you don't have to worry at all, me thinks :)
Good reason not to purchase ANY HP/Compaq product from the Carly era, isn't it. Tough break there, but when you purchase something that's supposedly 'commodity', and then realize that it has a very, very short list of 'accepted' expansion options, you've done this to yourself.
Personally, I'm a big IBM Thinkpad fan, plug in all type's of card's into them, and as long as I have driver support, I have no issues, be it XP, Linux, or any of the BSD's (of course, this changes with what hdd I plug in the laptop at the time).
Sometimes people just have to learn and adapt to change, it is one of the requirements of being a living thing.
There is a list of hardware that is not very Linux friendly here: http://www.leenooks.com/ - perhaps this stuff would make a good addition to the list.
http://www.welton.it/davidw/
Wasn't there a project a while back to produce a GPLed BIOS for booting Linux? Not sure how much success you'd have with a laptop, but might be worth a go? I'm sure another /.er will put me right.
"XML is like violence. If it doesn't solve your problem, use more." - Anonymous Coward
Matthew Garrett
This will only cause a proliferation of web-based collections of hacked BIOS'es, just like rpc1.org is now for DVD player firmwares. All the nasties hacked out for your convenience.
For all of you about to say: "Well, that's against the DMCA...", true, but that hasn't stopped the widespread distribution of region-free hacked DVD firmware has it?
Flash - gotta love it!
-- You are in a maze of little, twisty passages, all different... --
(note: this is not Apple fanboyism -- I don't complain about the proprietary slot on the lid of of my Compaq laptop either.)
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
Bastards!
What does this button do...
Your post is hilarious because IBM has been known to be doing this for some time now. You ahve been fortunate to only use IBM whitelisted products so far.
In fact your post reminds me of an incident I experienced a few years ago. I was approached and reprimanded by a WWII veteran for driving a "Jap car". At the time I was driving an Isuzu. After the man was finished reprimanding me, he jumped into his Chevrolet and drove away. I burst out laughing because the particular model of Chevrolet that he was driving was actually a re-branded Isuzu.
Apple calls their slot an "Airport Express slot" and they call their wirless card an "Airport Express card". They've never promised that it could do anything else.
Like the CD-ROM protection schemes that made the discs nonstandard, are these laptops far enough from the device standard that they could be forbidden from using the mini-PCI brand/logo/classification?
If Carly were still in office, she'd probably find a way to convince you that your printer is out of ink and you need to buy refills!
Aside from that, if this under-handed marketting strategy is going to keep us from running servers/workstations, what's next - BMWs whose engines suddenly stop working because there's a Fram oil filter installed? What if I decide to use a generic dollar-store bulb in my socket instead of the "approved" Philips bulb? Based on this theory, can you imagine what would happen if I were to eat a bag of knock-off raisin bran?
It sounds to me that this is just a marketting gimick to screw customers over and force them to buy what the manufacturer wants you to buy. God forbid I should find a better alternative to what the manufacturer wants me to buy.
-- Game Developers: Stop porting badly-textured games from crappy console systems!
From a compatibility standpoint, this isn't a terrible idea. After all, we're talking about laptops, NOT desktop systems. Most laptop users aren't trying to stick all kinds of PCI cards in their laptops. In my experience, many laptops are only compatible with a small number of cards made by few manufacturers anyway.
Restricting add-on cards in a laptop to approved cards will ease support issues, by assuring that a laptop will work with that card (as opposed to a support technician requiring you to remove your add-on cards before you get support). In the end, customers get a more reliable laptop with some expandability choices.
Look, guys, Mini-PCI is not meant to be a route for user extensibility; it was meant to be a mechanism for the vendor to add individual cards to a standard motherboard. If you want to configure a high-speed a/b/g device, go through your USB ports.
I tried removing the broadcom wireless card in my ZD 7168cl laptop because I didn't want to use ndiswrapper and have to deal with additional troubles. So, I wanted to install a more linux friendly card like the Intel Pro 2200. I installed the card and the system got to the initial BIOS splash screen and then came to a screeching halt. It complained that an unapproved Mini-PCI card was installed and that I must remove it and reboot.
Naive me, I called HP to see if they had a special BIOS package to get around this.
<sarcasm>I don't know, I guess I thought HP might want to accommodate their customers' needs... Silly me. </sarcasm>
I talked to a know-nothing tech support guy for about five minutes before I realized that he was not going to be any help. So, I simply asked him to pass on a message to his superiors that a customer was very irritated by the lack of support for linux or even simple modification of one's own computer. In response, this guy tried to explain that since the system was packaged with Windoze XP Home, that it is only supposed to run XP home because HP signed a contract with Microsoft to package this system with Windoze. I patiently explained that I understood that this system was designed for Microsoft and that they came as a package and that although that was a mistake to begin with, I simply wanted HP to stop crippling my computer by blocking 3rd party devices in the BIOS. I again asked him to simply pass on that a customer is very unhappy with the 2 grand that he paid for a hardware-blocking computer. How would you feel if you bought a car and if you didn't fill it up at a Shell gas station, it wouldn't start. Oh well, hopefully by the time I buy a new computer, linux support will be more widespread. Go IBM go!
1, 2, 3, 4, 5... That's the combination on my luggage!
It sucks badly, but the current FCC rules are as much ti blame as the manufacturers are.
This is also a known problem with a lot of Compaq Presario R3000 Series laptops. The have the same issue, with the non-OSS friendly Broadcom 802.11g mini-PCI cards pre-installed. Apparently, the BIOS is built to only allow that card becasue the FCC-ID for the wireless device is for the card and the internal antenna *together*. When you change the card, the system is no longer legal, according to the FCC, so they put in BIOS protection to keep you from breaking FCC rules.
int cents = 0;
cents += 2;
My HP laptop is several years old; can anyone confirm this?
Yeah, Timothy. I was there with you when you bought your laptop. It was around the same time that I got my iPod. It was a first generation, so, yeah, your laptop is definitely a few years old.
You're welcome. =)
Your laptop is downloading pr0n and warez from the internet, and is unresponsive when you try to get it to do something useful. I'd put it's age at about 14.
HA! I just wasted some of your bandwidth with a frivolous sig!
Bull, I say. Putting a WLAN PCI card in your desktop PC doesn't change its FCC certification!
That's because the desktop PCI card comes complete with a built-in antenna. In a laptop, the antenna's built into the case and the card plugs into it.
Because of this, it's possible to venture outside the FCC certification by using a different miniPCI card.
It happened to me when I upgraded from an intel 2100 wireless card to an intel 2200 wireless pci card in an eight month old Compaq X1000 laptop. Rolling back to an older bios "fixed" the problem.
More info here: http://www.x1000forums.com/index.php?showtopic=573 9
Today's lesson: Don't buy Compaq.
My IBM TPX31 has a BIOS lock at least for 802.11 a/b/g cards (mini-PCI). I picked up a Dell 2200 card which when installed would cause the laptop to be unable to boot. A freshly updated BIOS and chipset firmware did not help this situation. I then obtained the same model card (2200 a/b/g) but IBM-branded and it worked like a charm.
The installation in an IBM laptop of a non-whitelist card is supposed to cause it to throw some error to the screen, but mine would just hang. There are some BIOS patches in the wild which is supposed to bypass this problem, but because I didn't get the error code I was hesitant to install the hack.
Apparently there is a pin on the mini-PCI card which the IBM onboard firmware pushes high and allows the Thinkpad's BIOS to illuminate the little "wireless signal" light on the screen base. Installing the hack mentioned above will disable this feature.
From what I understand from reading, the reason that certain cards are whitelisted is so that RF emmissions from the laptops meet FCC regulations. If that's not the reason, it's the justification I've read.
Luckily, my girlfriend's R30 did not have the BIOS lock-out, so the Dell a/b/g card worked just fine in her machine.
Now if I can just find a reasonably-priced BMDC card...
Example of this is Pontiac Sufire = Asuna= Chev Cavalier All three are the same car, but with different trim and styling. They all cost, last time I bought one 1998, about the same. I went for the Cav because that dealer had a model with ETS and a four speed automatic. Sometimes they market the same car with different names, the 1960's GTO was a Beaumont in Canada. It's the Chrysler Intrepid not Dodge.
No - that's not why every generic card wouldn't work in a Mac. It's because the firmware was typically processor-specific on a (PCI, AGP, etc.) card back in the day. 68k/PPC chips use a different endian mode than x86 does, and so if you didn't put appropriate firmware on the card, it wouldn't work. There are cards out there nowadays that work on both platforms just fine (for instance, a lot of ATA controllers work just fine cross-platform - same with networking cards and plenty of other stuff).
;-)
In some cases, the card would work fine if there were an OS-specific driver for it. The vendor's decision not to write one isn't Apple's fault.
I'm not striving for unrestrained Apple fanboydom here, but let's get real. The fact that Apple doesn't build generic x86 computers that are interchangeable doesn't make them proprietary - they've just made different architectural choices that impact what will work with their products. NuBus wasn't proprietary, for instance - it was industry standard. It just wasn't used by x86 vendors. But it was technically superior to 8/16 bit ISA, so Apple used it until it made more sense to move to PCI. They also used SCSI to gain an technical advantage over older-generation PC drive technology - there were clear speed advantages to SCSI for a long time until newer ATA implementations caught up. At which point Apple switched and lowered their costs in doing so.
They also helped drive the move to USB, popularized Firewire, added standard Ethernet on everything before any x86 vendors, and added a dedicated slot and antenna for wireless before anyone.
There's plenty of useful stuff to rip on Apple about without the misinformed "proprietary hardware" red herring.
There. I feel much better now
-- Josh Turiel
"2. Do not eat iPod Shuffle."
The author writes:
"Oh, the horror. I bought a Compaq/HP nx9110 a year ago, and recently upgraded my Mini-PCI Wireless card from non-OSS friendly Broadcom 11b to an 11g card."
But Broadcom have clearly GPL'd their drivers:
http://www.broadcom.com/drivers/driver-sla.php?
The bios-level white list is an issue but that seems an undeserved cheap-shot against Broadcom.
Your Mini-PCI slot was never intended to be user upgradeable. Frankly, I always assumed they wouldn't be compatible between laptop vendors, models, or nescessarily even between two laptops of the same model that came off the assembly line on different days.
If you want to upgrade to a better wireless connection, use a PMCIA card.
supported white-lists? Isn't that reverse-racisim?
Unlike a regular PCI add-in card, the miniPCI WiFi card(s) in question doesn't contain a PCI option ROM. Like VGA, SCSI or RAID cards, this option ROM configures the device before the OS loads.
Since the option ROM isn't on the device, the ROM is stored in the system BIOS. When PCI option ROMs are stored in the BIOS, they are associated with the device's PCI "vendor ID" and "device ID". The "hack" described in an earlier post tells the BIOS to look for a different vendor/device ID (which hopefully is compatible with the embedded option ROM).
Some network adapters require the option ROM for the OS drivers to work, and network booting requires the option ROM so the BIOS can use UNDI/PXE.
This is a support problem from the notebook manufacturer. They only tested a few adapters, and only have room in the BIOS for one network option ROM. This has nothing to do with "trusted computing" or weird conspiracy theories. If the integrated card can't be upgraded, then USB or PCMCIA devices should be an option.
There have already been opening salvos of FUD fired at the Open Source movement for not having a "certified" credential system for contributing programmers and writers.
I can give anyone a certificate right now. Just give me some scrap paper and a green crayon, and I'll certify you for anything. Heck, I'll even ask you a few lame questions first to make sure you're qualified.
And that's about how I'll feel about certificates for as long as there are VeriSign certificates for spyware companies, MCSEs, and the like.
I'm writing this on a G4 PowerMac into which I have retrofitted a PC version of an ATI Radeon 7000 PCI card. (I just had it lying around. Really.)
OS X recognised it as a VGA card. It wouldn't do anything useful with it, however, as OpenFirmware didn't know what to do with VGA. (It's understandable: if you aren't tied down to ancient PC standards, why would you want to be?) I stuck the card into a PC and flashed it with the Mac ROM image, obtained from a website, and it worked perfectly.
I also have a generic USB 2.0 PCI card in there that didn't need special treatment.
Like the immediate parent says, it's not a lockout, but certain architectural differences require things like the graphics cards to interact differently with the host system at boot time.
If your comment title says 'Re: Foo', I'm not likely to read it.
....if you car detected something trivial like a non OEM starter and refused to crank. The car comapnies lost that one bigtime in court, at least you have the option now of an aftermarket starter or alternator, etc that will still function in your car. They are trying to rebooger it back up with the "magical computer" noise, but there's some bills in congress now to get them to stop doing that as well, to open up all the code and specs to independent mechanics, the owner and to the after market manufacturers.
Lest we forget:
FCC Allows Mix-and-Match Wi-Fi Antennas
Under 15 USC 50 2304 (Magnussen Moss Act), HP has violated the terms of your warranty by disallowing you from using compatible hardware. When you purchased the laptop, one of the stated features was a PCMCIA slot - theimplied warranty is that it was interoperable with aftermarket componants which conformed to the PCMCIA standard.
In short, you have the makings of a class action lawsuit on your hands. Get the to a slimy lawyer. They'll be in the phone book under "D" for democrat.
These laptops often still have USB ports and cardbus slots. This doesn't seem to cause any problems with support.
Any user who goes to the trouble to replace a miniPCI card knows they are taking out SUPPORTED HARDWARE and replacing it with UNSUPPORTED HARDWARE. A user would not expect support from HP regarding the operation of an Apple iPod nor should he expect support for hardware that didn't come with the computer.
I think alot of the confusion on this thread is stemming from the difference between mini-PCI and PCI and Cardbus (PC Card).
To be very technical about it, PCI is the protocol, electical and logical that runs between on-board chips and plug-in cards. Mini-PCI, Cardbus and the most common flavor of edge connector PC plug-in card (called the "PCI expansion card" by the specification) all use PCI to communicate.
In pupose and form factor, the three are very different.
The PC plug-in card is used to provided user-accessible expansion capabilites to off-the-shelf PCs.
Somewhat similiarly, Cardbus was intended as a laptop expansion slot for after-market upgrades. Again, user servicable.
Mini-PCI was intended to allow laptop vendors to create an easy way to avoid the regulatory headache associated with getting UL (safety) testing done on every laptop with a modem. Modems are high-voltage devices.
It turned out that mini-PCI was also useful for making other services (NICs and Wireless) easy to add to a base laptop design at build time rather than being designed directly onto the PCB. But this connection, was never meant to be user-servicable.
In addition to the fact that there are no fewer than three specified and incompatible flavors of Mini-PCI, sometimes vendors even run non-standard signals through the mini-PCI connector, making them even more incompatible with each other (potentially hazardously so). All of this because they were never intended as user-servicable parts. If you want to expand your laptop, that's what PC Card is for.
Honestly, the things we get worked up over...
Wednsday May 19, 2004 I tried to post the progenetor of this to slashdot and got rejected. In particular I bought a top-of-the-line wide-screen HP (7130 ?) laptop with Media Center et al. It kept blue-screening so after two complete re-installs of windows I went to the HP site and got the BIOS update.
After installing the new bios the box complained that my the build-in wireless board was not kosher ("authorized" is, I beleive, the correct word) and that I would have to remove the wireless board if I wanted the laptop to boot.
I elected not to play...
I returned it to Frye's for a complete refund.
Innocent people shouldn't be forced to pay for inferior software development.
--"Code Complete" Microsoft Press