Bug 6984

Summary: boot fails unless "nohpet" - MSI S271 / MS-1058 notebook
Product: ACPI Reporter: Pieter Ennes (bugzilla.kernel.org)
Component: Config-OtherAssignee: Venkatesh Pallipadi (venki)
Status: CLOSED PATCH_ALREADY_AVAILABLE    
Severity: normal CC: acpi-bugzilla, astarikovskiy, bunk, shaferstockton
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6.15-26-amd64-k8 Subsystem:
Regression: --- Bisected commit-id:
Attachments: Buggy dsdt dump
List of errors from iasl
acpi dump output with 1.17 BIOS

Description Pieter Ennes 2006-08-10 13:10:41 UTC
Most recent kernel where this bug did not occur: None
Distribution: Ubuntu Dapper
Hardware Environment: MSI S271 laptop
Software Environment: Ubuntu Linux 2.6.15-26-amd64-k8
Problem Description:
Booting with ACPI turned on in the kernel fails immediately. The machine does
boot with ACPI turned off. Also a combination of noapic and nohpet seems to have
some effect.

I have dumped the DSDT file from the BIOS, but re-assembly fails miserably with
122 errors. I'll attach the dsdt file and iasl errors.
Comment 1 Pieter Ennes 2006-08-10 13:12:06 UTC
Created attachment 8751 [details]
Buggy dsdt dump
Comment 2 Pieter Ennes 2006-08-10 13:13:49 UTC
Created attachment 8753 [details]
List of errors from iasl
Comment 3 Pieter Ennes 2006-08-10 13:16:02 UTC
Is there anything i can do to fix this?

Thanks
Comment 4 Robert Moore 2006-08-10 15:58:17 UTC
There is invalid ASL code in the dsdt.dsl:

            Device (RS48)
            {
                Name (_ADR, 0x00)
                OperationRegion (NB2, PCI_Config, 0x00, 0x0100)
                Field (NB2, AnyAcc, NoLock, Preserve)
                {
                    Offset (0x90), 
                    UMBS,   32, 
                    Offset (0x9B), 
                    UMSL,   8, 
                    Offset (0xE4), 
                    MCDA,   32, 
                    NCIN,   32
                }

                If (UMRS)
                {

Can't have an "If" statement under a device. I'm not sure this was even 
allowed in ACPI 1.0. If you comment out this if block, the code compiles, 
although there are a few warnings like this:

dsdt.dsl  4112:             Acquire (MUTE, 0x03E8)
Warning  1103 -                                 ^ Possible operator timeout is 
ignored

Which means that if the Acquire times out, the code blindly goes forward as if 
it didn't.
Comment 5 Len Brown 2006-08-11 13:04:42 UTC
Please verify that you're running the latest production BIOS.  
  
Please attach the raw output from acpidump, not the version   
dis-assembled with the (8-month old) disassembler.   
   
Comment 6 Shafer Stockton 2006-08-13 00:54:28 UTC
Created attachment 8768 [details]
acpi dump output with 1.17 BIOS
Comment 7 Shafer Stockton 2006-08-13 01:08:55 UTC
I've got the same problem and I'm obviously anxious to see it sovled. If I
attached the wrong thing I'd be happy to run more commands. :)
Comment 8 Len Brown 2006-08-16 18:43:41 UTC
Does boot work with "acpi=noirq", "pci=noacpi", or "acpi=ht"?
Comment 9 Shafer Stockton 2006-08-16 23:40:27 UTC
Tried all three suggested boot options with no difference. All three freeze up
at the memory size and allocation line(s).

Even tried all three at once for giggles.
Comment 10 Pieter Ennes 2006-08-27 07:44:29 UTC
No, any of "acpi=noirq", "pci=noacpi", or "acpi=ht" doesn't help. However,
running kernel 2.6.17.6 (with Ubuntu patches) and using "nohpet" as a boot
option does! I now got suspend, cpu and battery status...

Since i don't really know what hpet is usefull for, this is much less an issue
for me now.

However, i'm also running BIOS 1.17 now in stead of the ancient 1.10 version
from the files i attached earlier, so if this still is a BIOS issue, and i can
do anything to help, please let me know.
Comment 11 peter.schlaf 2006-09-10 00:25:48 UTC
Does your laptop boot with usb disabled in your BIOS?
Comment 12 Len Brown 2006-09-26 22:13:20 UTC
"nohpet" is not a boot option. 
Shall I assume you meant to write "hpet=disable"? 
 
  
Comment 13 Pieter Ennes 2006-09-27 05:08:19 UTC
I think nohpet _is_ a boot option, because either removing it, or changing it
from nohpet to hpet=disable causes the machine to hang immediately.
Comment 14 Venkatesh Pallipadi 2007-01-03 18:26:20 UTC
Yes. nohpet is the option for x86-64 kernel and hpet=disable is the option for
x86 kernel. I assume you have x86-64 kernel here.

Looks like BIOS lists the HPET device and that device does not work correctly.
Do you have serial port on this system. Can you capture the dmesg (probably with
debug boot option) when the system hangs (that is booting without "nohpet" option).
Comment 15 Alexey Starikovskiy 2007-06-08 06:25:47 UTC
Do you still have the problem with 2.6.21 and later kernels?
Comment 16 Pieter Ennes 2007-06-10 23:59:13 UTC
Nope, i think it's fine now! Thanks