# Foxconn deliberately sabotaging their BIOS to destroy Linux



## abhinandh (Jul 27, 2008)

A very bright guy named Ryan (aka TheAlmightyCthulhu over at the Ubuntu Forums) has disassembled the BIOS on his Foxconn motherboard and found a very peculiar behaviour. Long story short, he found several tables written for almost all Microsoft OS’es and only one badly written table for Linux. The Linux table does not correspond to the board’s ACPI implementation. Causing weird kernel errors, strange system freezing, no suspend or hibernate, and other problems. What’s interesting is that ACPI is an open industry standard, and has nothing to do with Microsoft or any other proprietary standards. So all these errors and problems should not exist.

Ryan has found a way to salvage this, down to just crashing on the next reboot after suspend. However the only way to fully rectify this is to buy a Vista CD. According to Ryan, it’s very hard to believe that this is just a simple mistake or a bug, it’s way too calculated:



> After looking through the disassembled BIOS for the last several hours, rebooting it, and tweaking it more, I’d say this is very intentional, I’ve found redundant checks to make sure it’s really running on Windows, regardless what the OS tells it it is, and then of course fatal errors that will kernel panic FreeBSD or Linux, scattered all over the place, even in the table path for Windows 9x, NT, 2000, XP, and Vista, and had to correct them (Well, at least divert them off into a segment of RAM I hope to god I’m sure about)
> 
> No, this looks extremely calculated, it’s like they knew someone would probably go tearing it apart eventually and so tried to scatter landmines out so as to where you’d probably hit one eventually.
> 
> So if it is a mistake, or incompetence, then it’s the most meticulous, targeted, and dare I say, anal retentive incompetence I’ve seen.



*Emails between ryan and foxconn*



> *Foxconn:
> 
> Dear Ryan:
> 
> ...


ubuntu forums thread

source

and now in plain english....

They detect Linux, give it a bad DSDT table, one that looks ok at a glance, but broken in subtle ways so that some of it works, but not correctly.

You call them to ask why their board won't run Linux.

They tell you to buy Vista.


----------



## mastana (Jul 27, 2008)

How pathetic ! these anti-Linux ppl are in h/w manufacturers too !


----------



## MetalheadGautham (Jul 27, 2008)

I was going to post this yesterday... the news is all over phoronix. I think there you will get a good idea what Foxconn is.

Foxconn is an OEM motherboard manufacturer. You might not have heard of them, but the Original Intel Motherboards, the MacMini, the iPhone, and most Dells are supplied motherboards by them. They are the world's largest.

Unlike normal we-are-not-intrested-in-supporting-linux people, these guys went a step too far. *They have delibrately tried to sabotage linux, by making sure that if a linux kernel asks to boot, its explictly given wrong drivers, while windows is not.*

I think this is SERIOUSLY illegal, and I hope someone registers a case against them in India as well.


----------



## ThinkFree (Jul 27, 2008)

Instead of harming spread of linux, they themselves will be loosing in the end if the news is right.


----------



## iMav (Jul 27, 2008)

abhinandh said:


> and now in plain english....
> 
> You call them to ask why their board won't run Linux.
> 
> They tell you to buy Vista.


The specific model is not meant/optimized/made for Linux. That's it. They have said that it does not support Linux, it doesn't. It is their choice to make model A capable of handling both Linux & Windows. It is their choice of making model B not being able to run Linux or Windows. 

They are NOT harming Linux. The model states that Vista certified. And that's what it is.


----------



## abhinandh (Jul 27, 2008)

iMav said:


> The specific model is not meant/optimized/made for Linux. That's it. They have said that it does not support Linux, it doesn't. It is their choice to make model A capable of handling both Linux & Windows. It is their choice of making model B not being able to run Linux or Windows.
> 
> They are NOT harming Linux. The model states that Vista certified. And that's what it is.



who asked them to *certify* it for linux.......and which board has a "made for linux" sticker on it for that matter....
linux just expects acpi compilant motherboard......but the bios points linux to a bad DSDT table resulting in kernel panics.......

why should the manufacturer deliberately do that? and to quote you from the ubuntu forums thread...


> Linux and FreeBSD do not work with this motherboard due to it's ACPI configuration, using a disassembler program, I have found that it detects Linux specifically and points it to bad DSDT tables, thereby corrupting it's hardware support, changing this and setting the system to override the BIOS ACPI DSDT tables with a customized version that passes the Windows versions to Linux gives Linux ACPI support stated on the box, I am complaining because I feel this violates an anti-trust provision in the Microsoft settlement, I further believe that Microsoft is giving Foxconn incentives to cripple their motherboards if you try to boot to a non-Windows OS.


----------



## iMav (Jul 27, 2008)

Dude! The board is meant for Vista systems. This information is specifically mentioned. If Linux does not have a certificate program, it is the Linux organization's fault. Pointing to bad DSDT tables is what I mentioned - the board is not meant/optimized/made for Linux. It is made for Vista. Just like Apple hardware is specifically Apple, this was made only for Vista. Foxconn has said that the board DOES NOT support linux, so it does not. As simple as that. The model is not made for Linux. Whether it points to wrong tables or does not point to any tables. The fact is that the board is not for Linux, the manufacturers do not provide support for Linux on that particular board.

There is no law that states that Foxconn should make mobos that are supported by Linux. It is the company's wish whether the mobo supports Linux or no, this particular model does not.


----------



## abhinandh (Jul 27, 2008)

iMav said:


> Dude! The board is meant for Vista systems. This information is specifically mentioned. If Linux does not have a certificate program, it is the Linux organization's fault. Pointing to bad DSDT tables is what I mentioned - the board is not meant/optimized/made for Linux. It is made for Vista. Just like Apple hardware is specifically Apple, this was made only for Vista. Foxconn has said that the board DOES NOT support linux, so it does not. As simple as that. The model is not made for Linux. Whether it points to wrong tables or does not point to any tables. The fact is that the board is not for Linux, the manufacturers do not provide support for Linux on that particular board.
> 
> There is no law that states that Foxconn should make mobos that are supported by Linux. It is the company's wish whether the mobo supports Linux or no, this particular model does not.



and its not a question of board support...its acpi support...when they mention it is acpi compilant on the box....shouldnt it be so?
ok...ok....
if it is not made for linux why should it detect it in the first place and why should it point to wrong entry......

and for the heck...its not vista only.....


> I saw you targeting Linux with an intentionally broken ACPI table, you also have one for NT and ME, a separate one for newer NT variants like 2000, XP, Vista, and 2003/2008 Server, I'm sure that if you actually wrote to Intel ACPI specs instead of whatever quirks you can get away with for 8 versions of Windows and then go to the trouble of giving a botched table to Linux (How much *is* Microsoft paying you?) it would end up working a lot better, but I have this idea you don't want it to.


----------



## aditya.shevade (Jul 27, 2008)

You are wrong iMav when you compare apple with them. Apple hardware supports all the operating systems.

BTW.... I forgot to mention... *Foxconn sucks... they are connig people.*


----------



## iMav (Jul 27, 2008)

@Abhi:

When you try to install OS X on a hackint0sh it will detect _any_ motherboard, but whether it installs or not depends on the board you are using. It detects Linux, so  Linux is an OS and it detects it, detecting, installation and working are different aspects in technology, if 1 happens it is not a thumb rule that the rest will happen too. Almost all Vista hardware works with previous iterations of Windows and therefore we have been constantly saying that as opposed to the FUD that Vista is not compatible etc. it is compatible with older hardware and newer hardware is supported by older iterations too 

@Aditya:

I don't think Apple supports Linux, they only provide you support for Windows. For Linux you are on your own. Correct me if I am wrong, with some credible proof from Apple.


----------



## nish_higher (Jul 27, 2008)

enough!
Windows/Linux installation on such hardware=Legal

HAckintosh=illegal

dont compare the two

As far as this problem is concerned-Foxconn should have mentioned this on their website that this doesnt work with linux.and this thread creator (the original source) should have mentiond the model no.


----------



## k6153r (Jul 27, 2008)

May be EU would fine them?


----------



## Garbage (Jul 27, 2008)

@ iMav..

Enough yaar... Ab kitana apana gyan dikhayega...

If they people don't want to give support to Linux, they wish.. they wont.. Thats not problem...
The problem is that, they INTENTIONLY points Linux kernel to wrong tables... Why this ??
No Linux people is asking for support.

Okay.. They want to run windows on their BIOS is okay... But why they want Linux NOT to run on their BIOS ?? :O


----------



## Laser_dude (Jul 27, 2008)

Beside the seriousness of the matter i was ROFLing for some time  after reading RYAN 

and FOXCONN's conversation (Why? i don't know)

,besides ,the strategy used by foxconn ,if used intentionally,will surely ruin there

customer  base to an extent.


----------



## iMav (Jul 27, 2008)

Garbage said:


> @ iMav..
> 
> Enough yaar... Ab kitana apana gyan dikhayega...
> 
> ...


Arre who says intentionally? They don't support it therefore they never bothered to check where it points.  It is the smart guy (who I must is smart) who trying to sensationalize the issue by saying that they are deliberately pointing it to wrong tables. 

Why they don't want Linux on their BIOS is their wish. It is NOT mandatory that they should run Linux, they don't want to un Linux it is their wish. Foxconn's owner hates Linux for all I care. It is the company's choice whether they want to support Linux or no. In this case, they don't want to. Un-necessarily sensationalizing the issue is pointless.


----------



## MetalheadGautham (Jul 27, 2008)

iMav, you are completely ignorant of the ethics...

They INTENTIONALLY, I repeat, INTENTIONALLY put in some code in their BIOS so that if a kernel identifying itself as "linux" asks for permission to boot, it gets redirected to some faulty modules, while if it identifies itself as "windows" this does not happen. This has been proved by editing the kernel to identify itself as something else.

*As for certification,* the the ACPI standards are an Open Standard. Any hardware which supports it 100% should run any compliant OS, and linux IS a compliant OS. Its just that Foxconn is intentionally trying to make linux not work. In simple words, its not MS who certifies the board, but the international ACPI standards. And the manufacturers are doing something dirty to go against this, and they are *falsely claiming that they are standards compliant.*

Why this double standards ? This is plain stupid.


----------



## amitava82 (Jul 27, 2008)

No one has proof that its deliberate. Its incomplete which is not an issue for supported OS. BUT if the product is advertised as ACPI compliant then its an issue. In that case I'll go out , buy a Foxcon MB and sue them to make some money >.<


----------



## MetalheadGautham (Jul 27, 2008)

amitava82 said:


> No one has proof that its deliberate. Its incomplete which is not an issue for supported OS.* BUT if the product is advertised as ACPI compliant then its an issue. *In that case I'll go out , buy a Foxcon MB and sue them to make some money >.<


So you agree that its an issue....


----------



## hellknight (Jul 27, 2008)

No problem mere Linux waale bhaiyon.. OpenBIOS will take over soon..


----------



## iMav (Jul 27, 2008)

MetalheadGautham said:


> iMav, you are completely ignorant of the ethics...


If they claim something and then it is not as said by amitava, sue them. Let there be an inquiry and court judgment saying that it was deliberate. Until then, it is sensationalism by Ryan.

If it is something illegal, then sue them. Which I am quite amazed and surprised that no one has done yet. But, if your argument is based on the the pretext of being "un-ethical" according to some FOSS supporters & communities, then Foxconn is justified as rubbishing this as a rant.


----------



## narangz (Jul 27, 2008)

Well, they are not creating a problem for Linux users, they are creating a BIG problem for themselves.

Who will buy a motherboard which is stated as ACPI comlpliant whereas in reality it isn't. The law will take care of Foxconn


----------



## amitava82 (Jul 27, 2008)

MetalheadGautham said:


> So you agree that its an issue....


What do you mean?


----------



## infra_red_dude (Jul 27, 2008)

Issue is this:

If Foxconn advertises that the board is "Windows compliant", there's nothing wrong in what they've done.

If Foxconn advertises that the board is "ACPI compliant", then they are wrong and are liable to be sued.

Thats it.. matter ends..


----------



## NucleusKore (Jul 28, 2008)

^+1 yes
And no one is faulting them for NOT providing a table for linux, they are at fault for giving a DEFECTIVE table. No table at all would be a better option if they really do not want to support linux.
And I did not know that they are an OEM motherboard manufacturer 
Now I have to be careful
*farm3.static.flickr.com/2348/2122604109_102bd4c458_o.png


----------



## chesss (Jul 28, 2008)

WOW! its amazing how fanboyish some ppl are. :roll:
Ontopic: I have had a very similar problem. 
Got a so-called vista laptop , that was crippled to such an extent that it even won't run xp properly . And I am not talking abt drivers issue. It was a downright bios issue.


----------



## FilledVoid (Jul 28, 2008)

If anyone didn't notice Foxconn has already owned up and is working to fix the problems. 



> If it is something illegal, then sue them. Which I am quite amazed and surprised that no one has done yet. But, if your argument is based on the the pretext of being "un-ethical" according to some FOSS supporters & communities, then Foxconn is justified as rubbishing this as a rant.



Its when they filed a complaint with the FTC did Foxconn get off its rear. Multiple personnel have responded to the issue and are working on a fix to make sure the board is ACPI compliant. 



> Hi Ryan
> 
> Thank you for all the information so far...
> 
> ...



Enough said.


----------



## amitava82 (Jul 28, 2008)

Yes I did visit that guy's blog after reading the case. I was waiting to see how many actually bothered to visit the source and bring up the fact that Foxconn is resolving the issue. BTW, that guy is an uncultured idiot.


----------

