Foxconn Releases Test BIOS Fixing Linux Crashes
Ryan1984 writes "Only a week after the bad press coverage regarding the Linux-related bugs in a number of motherboards released by Foxconn (which turned out to be the AMI BIOS that several board makers use), Foxconn is the first vendor out with a publicly released test patch that fixes the bulk of the problems, allowing kernel 2.6.26 to run well on the afflicted boards. The remaining issues appear to either be kernel bugs in builds earlier than 2.6.26, issues with the Intel chipset itself, or minor annoyances that Foxconn is still working to resolve. Foxconn representative Heart Zhang has posted on the Ubuntu forums (where the situation began), apologizing for the issues, thanking Foxconn customers and the community at-large for their feedback, and promising that Foxconn will take Linux support and testing seriously, going forward."
"Hey Michael Dell, when are you gonna fix all the disabled HPETs in your laptops? Hell, when I checked for syntax errors in the DSDT code I found 26 of them! And it's only set up to work with different Windows models, nothing else!!! This is unacceptable! ... Hey.... Hey come back here - don't walk away when I'm talking to you!!!!"
Sadly, this is the truth, and if I could make one wish, it would be that computer makers not make their BIOS code such a damn secret. Dell uses a Phoenix BIOS with an unknown compression set up, and they seem to be extremely secretive about it. (Anyone here of the "delldeco" app? That's gone now, because Dell said so.) I'm also glad that EFI is starting to be used in some motherboard manufacturers.
Quotes from the article:
So not just in this one high publicity case, but on all of their motherboards.
I would say you got what you want here. Time will tell.
I'd say they got this one done too. That's pretty public.
Yes, it's lame that it was broken but now it's fixed. One week is pretty quick for a BIOS revision spin. Maybe it's OK to cut them some slack on this one now.
Help stamp out iliturcy.
Informative? That's pure speculation.
More likely, they simply didn't go out of their way to support Linux. When they buy a BIOS it comes with default DSDT tables that of coarse don't work on their specific board, it's very possible that they fixed the Windows tables and ignored the rest.
But of coarse, mere incompetence doesn't make for a good Two Minutes Hate. Linux zealots say they love UNIX, but they really just love to hate Microsoft.
Ryan1984's post makes it sound like a generic AMI BIOS problem with Linux ... I don't think this is the case. AMIBIOS runs well on Linux generically (it's on Sun Microsystems servers, the Asus EeePC & EeeBox, which all work with Linux) so this is probably Foxconn introducing a problem when they ported the BIOS to their boards.
Board manufacturers like Foxconn get a development kit from the BIOS manufacturer then port it to their platform. If Foxconn made a BIOS fix for Windows then didn't test it with Linux, this would cause the issue. A similar situation would be if a company made a variation of a Linux distro for their products but broke somethign that worked generically in the original distro.
I think the community response worked great for getting Foxconn to pay attention to Linux. They saw their business & reputation threatened and are trying to fix the problem.
No ... it looks like they got a licensed BIOS development kit, added code that broke Linux and didn't test it. Asus uses AMIBIOS and ships a lot of Linux systems (ever heard of the EeePC?) so I think this is a Foxconn "oops".
They didn't actually do anything dirty, they simply didn't do anything.
The problem is that the ACPI tables are handled according to the operating system installed and when the BIOS checked that linux was in use, it provided a null table. This is not because they purposely broke something, but because they failed to check the bios and follow through on it.
Evidently, and this is mostly my opinion, FoxxCon had no idea how much of a market Linux actually has or appears to have and took others at their word that it is too small to worry about. So they took a stock bios, made a few tweaks for the markets they thought would drive their sales and neglected to do anything about Linux. After they saw the response, they quickly and painstakingly got a workaround out and reversed their position because of the potential market size.
I over simplified the process there, there is a post obove this that goes into a good amount of detail. But it is more that they did nothing then that they did something dirty.