Message ID | 20121204153957.GC13356@hedwig.ini.cmu.edu |
---|---|
State | New |
Headers | show |
Hi, > The complete definition for the HPET on my MacPro5,1 is below; along > with the 0xFED00000 value gleaned from the previous SeaBIOS version of > _CRS, I came up with the above. Hopefully it works for WinXP too... > Device (HPET) { > Name (_HID, EisaId ("PNP0103")) > Name (BUF0, ResourceTemplate () { > IRQNoFlags () > {0} > IRQNoFlags () > {8} > Memory32Fixed (ReadOnly, > 0xFED00000, // Address Base > 0x00100000, // Address Length > _Y09) > }) > Method (_STA, 0, NotSerialized) { > If (LGreaterEqual (OSYS, 0x07D1)) { > If (HPAE) { > Return (0x0F) > } > } Else { > If (HPAE) { > Return (0x0B) > } > } > Return (0x00) > } > Method (_CRS, 0, Serialized) { > If (HPAE) { > CreateDWordField (BUF0, \_SB.PCI0.LPCB.HPET._Y09._BAS, HPT0) > If (LEqual (HPAS, 0x01)) { > Store (0xFED10000, HPT0) > } > If (LEqual (HPAS, 0x02)) { > Store (0xFED20000, HPT0) > } > If (LEqual (HPAS, 0x03)) { > Store (0xFED30000, HPT0) > } > } > Return (BUF0) > } > } Ok, and how does the RTC look like on your MacPro? thanks, Gerd
On Tue, Dec 04, 2012 at 05:56:55PM +0100, Gerd Hoffmann wrote:
> Ok, and how does the RTC look like on your MacPro?
Device (RTC)
{
Name (_HID, EisaId ("PNP0B00"))
Name (_CRS, ResourceTemplate ()
{
IO (Decode16,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x01, // Alignment
0x08, // Length
)
})
}
On 12/04/12 18:14, Gabriel L. Somlo wrote: > On Tue, Dec 04, 2012 at 05:56:55PM +0100, Gerd Hoffmann wrote: >> Ok, and how does the RTC look like on your MacPro? > > Device (RTC) > { > Name (_HID, EisaId ("PNP0B00")) > Name (_CRS, ResourceTemplate () > { > IO (Decode16, > 0x0070, // Range Minimum > 0x0070, // Range Maximum > 0x01, // Alignment > 0x08, // Length > ) > }) > } Ok, so no IRQ declared for the RTC. We have IRQ 8 for both rtc and hpet, which most likely is the root cause for the issue. You can try simply dropping the line for testing. I'll try to come up with something more clever as the hpet can be disabled in which case we should keep irq8 assigned to rtc. cheers, Gerd
On Wed, Dec 05, 2012 at 07:50:17AM +0100, Gerd Hoffmann wrote: > Ok, so no IRQ declared for the RTC. We have IRQ 8 for both rtc and > hpet, which most likely is the root cause for the issue. You can try > simply dropping the line for testing. I'll try to come up with > something more clever as the hpet can be disabled in which case we > should keep irq8 assigned to rtc. Yeah, with SnowLeopard, simply leaving out the IRQ on RTC in SeaBIOS got me all the way to a blue screen with a moving mouse pointer, but no further :) However, the acpi-dsdt-isa.dsl RTC patch you just sent to SeaBIOS has no (negative) impact on my ability to boot SnowLeopard. Thanks much, --Gabriel
diff --git a/src/acpi-dsdt-hpet.dsl b/src/acpi-dsdt-hpet.dsl index d5aa3f1..8385ce4 100644 --- a/src/acpi-dsdt-hpet.dsl +++ b/src/acpi-dsdt-hpet.dsl @@ -23,12 +23,17 @@ Scope(\_SB) { } Return (0x0F) } - Name(_CRS, ResourceTemplate() { + Name(BUF0, ResourceTemplate() { IRQNoFlags() {2, 8} Memory32Fixed(ReadOnly, 0xFED00000, // Address Base 0x00000400, // Address Length - ) + _Y09) }) + Method(_CRS, 0, Serialized) { + CreateDWordField (BUF0, \_SB.HPET._Y09._BAS, HPT0) + Store(0xFED00000, HPT0) + Return (BUF0) + } } }