ACPI Forced On & Option Disabled in WinXP-Certified Motherboards
stealth_zipper asks: "I just got off the phone with a rep from Soyo Computer Inc trying to get the ability to change IRQs for the onboard hardware. It turns out that because of a deal to get WindowsXP certification, the Dragon-series motherboard ended up having the ability of Enabling/Disabling ACPI in the BIOS disabled. Now FreeBSD has complications with multiple devices on the same IRQs (especially sound, video, and nic all off the same one). Is there a way to get around this for new hardware? Has anyone else encountered this?" Why in the world does XP need this feature disabled, and are there workarounds to get OSes like FreeBSD working properly with motherboards of this sort?
Is it possible that the reason they couldn't get XP certification because they're not following the standard properly?
The only reason I ask is that it seems like we'd see more reports of other motherboards having trouble.
"Derp de derp."
I'd be more worried about the first line in the section titled "Device Class-specific Requirements" which states that audio devices must implement Digital Rights Management, since XP supports it.
Yeah, the devices will still work without it, but I wonder what concessions the manufacturers might make in order to derail SSSCA?
ACPI has been disabled on the last 5 or so motherboards I've seen (work computers I've built, etc..) It hasn't been much of a problem (other than incompatibilities with sucky sound blaster audigy drivers) but then again, I don't run linux.
Yes, it's required for XP-- and it was greatly encouraged for 2000 Pro-- ironically, turning ACPI off fixed a lot of problems I was having with my KT7A-RAID board.
New bios revisions of existing boards sometimes disable this, so watch out!
Some more popular motherboards have "hacks" that can add this functionality back.
Try looking for an "unofficial" support forum for Soyo or whatever.
Go here for the best KT7 faq which answers all these questions for that board, but provides interesting ACPI info, as well.
maybe this is the same problem that affected the old intel venus pentium pro motherboards.
What you described happens when you try to do a w2k shutdown on that board.
The other thing is, on NT4, they had an APM thing that properly shut down the thing, but microsoft won't make an equivalent one available for w2k+
Clearly they have the code to make things work, and I wonder why they don't have that available as an option somewhere to use different apm/acpi routines. It's not even like it's going to affect the rest of the system since this is a shutdown command and any instability introduced at that point will quickly be irrelevant.
Something like this and the article makes you wonder more about those theories that microsoft is in league with the hardware manufacturers to continually update your hardware.
I've got 5 devices running off of IRQ 9 and the thing is rock solid, never had a crash since early 2.4.0pre days and it probably wasn't because of an IRQ problem.
The Linux kernel has ACPI support in its future and it all started back in 1999
Anyway check this out...
[root@haemal]:/proc# cat interrupts
CPU0
0: 29750549 XT-PIC timer
1: 87289 XT-PIC keyboard
2: 0 XT-PIC cascade
3: 2 XT-PIC serial
5: 183414591 XT-PIC EMU10K1
8: 3 XT-PIC rtc
9: 1551326 XT-PIC acpi, usb-uhci, usb-uhci, eth0, eth1
10: 1318690 XT-PIC ide0
12: 2323801 XT-PIC PS/2 Mouse
14: 89064 XT-PIC ide2
15: 62 XT-PIC ide3
NMI: 0
LOC: 29751193
ERR: 46561
MIS: 0
ayottesoftware.com
I found point 5 particularly interesting:
WL-5. System and components meet reduced legacy support goals
Linux advocates pride themselves on the ability of the system to run on old systems. However, there is an argument for getting rid of obselete technologies. While M$ windoz's requirement for top of the line system's smacks of promotion of consumerism for consumerism's sake, My question is this:
How do we compromise between supporting legacy systems, without slowing the pace of tech development in order to accomodate them?
That headline really needs to be changed. It should read something like "ACPI Forced On in WinXP Certified Mobos"
Also, did anyone else notice this little gem on the requirements page?
Does this mean hardware support for DRM in sound cards?
First, this is totally insane - no ACPI? This means that I'm greeted by "it is now safe to shut down your computer" every time I tell Windows to shut down? Talk about circa '97. I absolutely refuse to use any PC that doesn't support ACPI in this day and age.
And second, don't totally blame Dragon for this. Win XP wreaks havoc with motherboards, IRqs, etc. It's almost as bad as the old Dos days, but at least back then, with ISA and Win95, we had more of a fighting chance via trial and error.
Case in point: I have an Epox 8KHA motherboard. Works great with Win2K. I added a second partition and installed XP. Once I installed the drivers for my Geforce2 card (from Windows Update, no less), WHAM! Blue Screen of Death. After hours of flashing my BIOS, and trying other drivers (both WHQL and Nvidia beta), I gave up and went back to 2K. I don't know what the hell MS did, but it sure screwed me up.
The other side of it is that it causes issues with BSD, a non-GPL OS. One of the OSs MS actually shows some support for. Why does THIS make sense?
Further, I think it may demonstate a more insidious strategy for MS. The HW is configured in such a way that alternative OSs cannot use it. That's bad, that's very very bad. This could SEVERELY limit where Linux/BSD can be used.
OTOH, companies like IBM and other motherboard manf may come out with Linux-only lines and find a nice little niche market there...
Computer Science is Applied Philosophy
Just wanted to mention that the ACPI support in Linux 2.4.17 is a few months old. We are making progress *weekly*, and the latest patches are available at sf.net/projects/acpi . Bad BIOSes will always be a problem, and there's not much we can do about that, but help is still needed in stabilizing the Linux ACPI code (the core of which is also being used on *BSD).
Regards -- Andy
(Linux ACPI maintainer)
Naturally, though, since the DoJ has dropped the ball on Microsoft, this sort of thing will only get worse. Get used to it, and vote Democratic in 2004.
Not to point out obvious stuff, but if producers of Windows compatible motherboards consistently take longer to deliver product and charge more to cover their R&D and production expenses because of incompatibilities like these, it means that Linux-only mobos are gonna come to market faster and cheaper. In other words, it adds one more reason that it's cheaper and more efficient to run Linux instead of 'doze. That's just gonna hurt MS in the long run. DOJ action is entirely unnecessary.
Anyone want to finish the ACPI driver? It's big and complicated.
Bruce
Bruce Perens.
I always find comments like this interesting. What makes anyone think that the Democrats are any better at protecting "Your Rights Online"? Correct me if I am wrong, but wasn't the DMCA passed under a Democrat president, and mostly supported by Democrats? Also, isn't the SSSCA being touted by a Democrat senator and has mostly Democratic support, while the Repulicans oppose the law? I really try not to be partisan, but to be honest, I think the Republicans are your best bet for protecting your online rights, not so much because of their politics, but because they are in the back pockets of companies that oppose oppresive computer legislation. Sure Microsoft is one of the companies that owns them, but Microsoft, IMHO, is a lot less evil than the MPAA/RIAA crew, and the Democrats seem to be the bitches of the entertainment industry.
In general yes, but Abit and Asus are not only middle line as far as quality goes, they are still running off of the steam of past glories.
:) )
:)
... needless to say Standby mode is not an option. Hehe. :) )
(woh, did I mix enough metaphors for ya?
Soyo has come out with some rather good boards, and some rather bad boards. Asus and Abit also have come out with some rather craptacular boards.
Hell who knows it may just be one faulty little part that once it is found everybody will be going "Duh!" and slapping their hand against their forehead.
Disabling ACPI does suck though.
Especially since anybody who is going to go into the BIOS setup screen and change that sort of settings (which requires reinstalling Windows, at least on 2000 it does, so it is NOT something that you just go ahead and do without a thought for it) aaah screw it.
Basically Win2k (and I am extrapolating for XP here, since it is awfully simular... ) required two separate kernels, one for ACPI, one without ACPI.
I am sure that MS was just getting friggin annoyed with having to support two kernels, not to mention run support for two completely different ways of doing the IRQ thang (WTF is up with backwards support and IRQs? Current x86 OSs support the old way of IRQs to work with current motherboards, current motherboards support it to work with current OSs, WHAT THE FUCK IS GOING ON HERE FOLKS???? YEESH! Catch(22+(1/0)) --- for you TI calc people out there. ) ).
*NOTE* I read someplace that it is a different Kernel, other places just mention a HAL, either way it must be a pain in the ass to support and I can understand Microsoft not wanting to have to support both ways of doing things, after all, this is the twenty first century, IRQ conflicts should not be a problem. I agree that at times how Microsoft Windows tends to, uh, arrange your IRQs is rather bad, but that piss poor sound quality you hear may very well be a SB:Live, which sucks, horribly.
Turn off Plug and Play OS in your BIOS, as is recommended, if installing Windows2k+. Your PCI slots are most likely already setup to separate a few of them by IRQ, use that if Windows will allow you too. If necessary install devices one by one (recommended in any scenario), yes it is a pain, but it is about the only way of having so many friggin devices installed in a computer at once.
Hell I ran out of IRQs WITH IRQ sharing, I have so many devices that do not like to share IRQs at all. (Dual Head Video Card, TV Tuner, Sound Card, SCSI Card, woh, there goes 4 IRQs already!!!
Need help treating your acne? Come here!
Comment removed based on user account deletion
Comment removed based on user account deletion
Apple has complete control over their hardware. Microsoft, for all we hate them, should at least have a little. ACPI basically eliminates the hardware problems due to IRQs that we've been dealing with for something like ten years.
XP with ACPI runs beautifully on my Asus A7V with Athlon chip and even the dreaded Via 4 in 1 chipset.
Look at IRQ 9:
IRQ 0 System timer OK
IRQ 1 Standard 101/102-Key or Microsoft Natural PS/2 Keyboard OK
IRQ 6 Standard floppy disk controller OK
IRQ 8 System CMOS/real time clock OK
IRQ 9 Microsoft ACPI-Compliant System OK
IRQ 9 NVIDIA RIVA TNT2 Model 64 OK
IRQ 9 VIA Rev 5 or later USB Universal Host Controller OK
IRQ 9 VIA Rev 5 or later USB Universal Host Controller OK
IRQ 9 Intel(R) PRO/100+ Management Adapter OK
IRQ 9 SB PCI(WDM) OK
IRQ 9 Promise Technology Inc. Ultra IDE Controller OK
IRQ 13 Numeric data processor OK
Now ask me how many times XP has crashed since I installed it after purchasing on day one...
(The answer is zero. Not once. The thing is more stable even than my G4 running OSX)
Give 'em a break for once. They may suck as a corporation, but XP is a decent product, and there's nothing at all wrong with them requiring ACPI "always on." It'll save most users the trouble of IRQ conflicts while still letting them plug the latest shit from CompUSA into their PC every month.
Except for the fact there are only 15 HARDWARE interrupts, with many of them STILL used to support ancient outdated legacy fixes.
The rest are software interrupts, and I'd like to see you wire some hardware to those.
The fact is in the days of PCI and newer operating systems etc, IRQ sharing is a good thing, the device writes its information into a memory space, and generates a (single shared) IRQ, you write a single IRQ handler that runs at kernel level to get that data to the driver. (in other words you don't have to have loads of 3rd party kernel level drivers that have the potential to blue screen you)
The rest of the driver code runs outside of the kernel since it has no interrupts to hook any more it can also run across multiple processors now...
AND not to mention the 'old days' of juggling with PCI card locations because your NIC had a higher priority than your sound card.
There are plenty of other bus systems that used shared IRQ's quite happily.. eg. Zorro from the amiga...