Jump to content

Master Chief's P5K PRO ACPI Warfare


VegasKarma
 Share

908 posts in this topic

Recommended Posts

I still have no sound and I know you fixed that in your dsdt. There may be other things, I really don't know whats possible.

Right. I'll look at it after work.

 

hello again

in m case i need to load in /E 2 kexts because i use keyboard in PS2 port (mouse is usb)

http://www.insanelymac.com/forum/index.php...st&id=57913

do u think via dsdt i could get rid of the 2 hacked kexts?

i tried to copy/paste this code but couldnt compile the aml

any advise? (

Not really. I don't think so. And I don't have/use PS2 hardware so I can't help you here. And if it works... then don't break it :)

Link to comment
Share on other sites

You have got to tell us a lot more about what you have/are using like (add it to the first post):

 

1) What BIOS version are you using?

– I am using 1303 which people can get from the support page (link below).

 

2) Do you have a (patched) dsdt.dsl? If yes attach it.

I'll attach a zipped copy of mine shortly. Done. See attachments.

 

3) What boot loader are you using?

– I am using Chameleon v1.0.12 with a patched /boot file.

 

4) Have you AHCI enabled in the BIOS?

– I have SATA Configuration set to AHCI (see page 4.13).

 

5) What brand/type of hard drive/DVD (interfact SATA/IDE) do you have?

– I have two 1TB and two 300MB SATA hard drives plus a TSSTcorp CDDVDW SH-S223L.

 

6) RAID or non RAID installation?

– I use a non-RAID installation.

 

7) Mouse/keyboard type (USB/PS2).

– I use a wired Logitech USB keyboard and wireless Logitech mouse.

 

8) What kexts did you install/use for 10.5.7?

I'll attach a zipped copy of mine shortly. Done. See attachments.

– Please note that the included LegacyAppleAHCIPort.kext includes my patch to fix the orange drive icons without the need for a blockstorage.kext, and that PlatformUUID.kext needs to be changed to match your partitions' GUID.

 

Also, add a link for future reference, to the used installation method. I'll add a few myself.

 

References/Links

Here's the ASUS P5K PRO specific support page and here's a link to the manual I have here which I will be using in near future updates/replies to this topic – this should grow (over time) into the Snow Leopard Installation Guide for P5K PRO users.

 

Vanilla Snow Leopard Installation

Here's the ultra short/over simplified edition:

1) Made a GUID Partition Table with Disk Utility on a 8GB SanDisk Cruzer (1 * 512MB + 1 * 7GB).

2) Restored the original Snow Leopard Retail DVD with Disk Utility on the second partition.

3) Installed Chameleon v2 RC3 on the first partition.

4) Booted from the USB stick and installed Snow Leopard.

 

DSDT

WARNING: The attached DSDT includes many patches, including the newly added HDEF/DTGP/LAN/SBUS methods, included USB patches, but most importantly the following Intel Q9300 specific P-State fix to lower the CPU temperature:

 

			Name (_PSS, Package (0x04)
		{
			Package (0x06) { 2498, 88000, 10, 10, 0x4720, 0x0000 },
			Package (0x06) { 2331, 59643, 10, 10, 0x071E, 0x0001 },
			Package (0x06) { 2165, 51124, 10, 10, 0x461C, 0x0002 },
			Package (0x06) { 1998, 41880, 10, 10, 0x061A, 0x0003 }
		})

With the following ASL snippet added to Processor (CPU[2/3/4], 0x0[2/3/4], 0x00000810, 0x06):

			Method (_CST, 0, NotSerialized)
		{
			Return (\_PR.CPU1._CST())
		}

And the following ASL method:

       Method (_CST, 0, NotSerialized)
       {
           If (LAnd (And (CFGD, 0x01000000), LNot (And (TYPE, 0x09
               ))))
           {
               Return (Package (0x02)
               {
                   One, // Number of C-State packages: 1
                   Package (0x04)
                   {
                       ResourceTemplate ()
                       {
                           Register (FFixedHW, 
                               0x00,               // Bit Width
                               0x00,               // Bit Offset
                               0x0000000000000000, // Address
                               ,)
                       }, 

                       One, // Type: C1 
                       0x9D, // Latency: 157us
                       0x03E8 // Power: 1000mw
                   }
               })
           }

                   Return (Package (0x04)
                   {
                       0x03, 
                       Package (0x04)
                       {
                           ResourceTemplate ()
                           {
                               Register (FFixedHW, 
                                   0x01,               // Bit Width
                                   0x02,               // Bit Offset
                                   0x0000000000000000, // Address
                                   0x01,               // Access Size
                                   )
                           }, 

                           0x01, 
                           0x01, 
                           0x03E8
                       }, 

                       Package (0x04)
                       {
                           ResourceTemplate ()
                           {
                               Register (SystemIO, 
                                   0x08,               // Bit Width
                                   0x00,               // Bit Offset
                                   0x0000000000000814, // Address
                                   ,)
                           }, 

                           0x02, 
                           0x01, 
                           0x01F4
                       }, 

                       Package (0x04)
                       {
                           ResourceTemplate ()
                           {
                               Register (SystemIO, 
                                   0x08,               // Bit Width
                                   0x00,               // Bit Offset
                                   0x0000000000000815, // Address
                                   ,)
                           }, 

                           0x03, 
                           0x11, 
                           0xFA
                       }
                   })

       }

To prevent the following errors from showing up in kernel.log:

ACPI_SMC_PlatformPlugin::pushCPU_CSTData - _CST evaluation failed
ACPI_SMC_PlatformPlugin::registerLPCDriver - WARNING - LPC device initialization failed: C-state power management not initialized

This however also requires you to have some sort of SMBIOS injection, to set it as P5K PRO, or you can use this hack to change "MacPro3,1" in:

/System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/info.plist

into "P5K PRO". Which works for me.

 

About Chameleon

I personally cannot use Chameleon v2 RC3 simply because it won't even boot (anymore) from a USB stick when my 1TB SAMSUNG HD103SJ is connected to any SATA port of the motherboard. I don't have this problem with the 1TB SAMSUNG HD103UJ so it must be related to the GUID partition simply because I installed Snow Leopard from the very same USB stick on the very same HD. A bug was filed on May 06, 2009, 01:21:50 PM but the Chameleon developers have yet to fix it.

 

New Devices

Device (DTGP) of course

Device (LAN)

Device (SBUS)

 

Renamed Devices

I renamed the following Devices in my dsdt.dsl to match a MacPro3,1:

 

Device (MCEH) // Renamed from: MCH

Device (IPIC) // Renamed from: PIC

Device (DMAC) // Renamed from: DMAD

Device (TIMR) // Renamed from: TMR

Device (RTC) // Renamed from: RTC0

Device (MATH) // Renamed from: COPR

Device (LDRC) // Renamed from: OMSC

Device (PRT0) // Renamed from: CHN0

Device (PRT1) // Renamed from: CHN1

Device (EHCI) // Renamed from: EUSB

Device (UHCI) // Renamed from: USBE

 

Fix for USBF: error in kernel.log

The USB Hub Channels (12 USB ports) have now also been renamed properly:

 

Device (UHC1) // Renamed from: USB0

Device (UHC2) // Renamed from: USB1

Device (UHC3) // Renamed from: USB2

Device (UHC4) // Renamed from: USB4

Device (UHC5) // Renamed from: USB5

Device (UHC6) // Renamed from: USB6

 

Not really a visual trade off, but it takes care of this error in your kernel.log:

 

Sep 27 10:04:50 localhost kernel[0]: USBF: 5.387 AppleUSBUHCI[0x6e64000]::start unable to initialize UIM

 

Note: I removed (comment out really) Device USB3 in my dsdt.dsl because it didn't show up in IORegistryExplorer.

 

Removed Devices

The following devices have been removed with this update:

 

Device PS2K (PS2 Keyboard)

Device PS2M (PS2 Mouse)

Device SPKR (Speaker)

Device FDC (Floppy Disk Controller)

 

TODO

Fix sleep after idle period with TSSTcorp DVD drives.

 

Graphics

You will not find any graphics card related patches, simply because they do not belong there! I'll explain this a next time.

 

I have a NVIDIA GT9600-512MB video card and I used EFI-Studio to generate the following "device-properties" for: /Library/Preferences/SystemConfiguration/com.apple.Boot.plist:

130400000100000008000000600200000d00000002010c00d041030a000000000101060
000010101060000007fff04000e0000004e00560050004d000000200000000100000000000000000
0
000000000000000000000000000000000000220000005600520041004d002c0074006f0074006100
6
c00730069007a006500000008000000000000201c0000006400650076006900630065005f0074007
9
007000650000000f0000004e5644412c506172656e740e0000006e0061006d00650000000b000000
6
46973706c617922000000400030002c006400650076006900630065005f007400790070006500000
0
0b000000646973706c617922000000400031002c006400650076006900630065005f007400790070
0
0650000000b000000646973706c6179100000006d006f00640065006c0000001a0000006e5669646
9
61204765466f726365203936303020475420000000400031002c0063006f006d0070006100740069
0
062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d00650
0
0000120000004e5644412c446973706c61792d4114000000400031002c006e0061006d0065000000
1
20000004e5644412c446973706c61792d4220000000400030002c0063006f006d007000610074006
9
0062006c00650000000e0000004e5644412c4e564d6163100000004e005600430041005000000018
0
0000004000000000003000c00000000000007000000001e00000072006f006d002d0072006500760
0
6900730069006f006e0000002e0000006e5669646961204765466f7263652039363030204754204f
7
0656e474c20456e67696e65205b4546495d3c0000000100000002010c00d041030a0000000001010
6
00021a7fff0400180000006400650076006900630065002d0069006400000006000000393a3c0000
0
00100000002010c00d041030a0000000001010600001a7fff0400180000006400650076006900630
0
65002d0069006400000006000000373a3c0000000100000002010c00d041030a0000000001010600
0
21d7fff0400180000006400650076006900630065002d0069006400000006000000363a3c0000000
1
00000002010c00d041030a0000000001010600011a7fff0400180000006400650076006900630065
0
02d0069006400000006000000383a3f0000000100000002010c00d041030a0000000001010600051
c
0101060000007fff0400160000006200750069006c0074002d0069006e00000005000000013c0000
0
00100000002010c00d041030a0000000001010600001d7fff0400180000006400650076006900630
0
65002d0069006400000006000000343a3c0000000100000002010c00d041030a0000000001010600
0
11d7fff0400180000006400650076006900630065002d0069006400000006000000353a

Which looks like junk, and thus here's the more human readable variant in XML format:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)</key>
<dict>
	<key>@0,compatible</key>
	<string>NVDA,NVMac</string>
	<key>@0,device_type</key>
	<string>display</string>
	<key>@0,name</key>
	<string>NVDA,Display-A</string>
	<key>@1,compatible</key>
	<string>NVDA,NVMac</string>
	<key>@1,device_type</key>
	<string>display</string>
	<key>@1,name</key>
	<string>NVDA,Display-B</string>
	<key>NVCAP</key>
	<data>
	BAAAAAAAAwAMAAAAAAAABwAAAAA=
	</data>
	<key>NVPM</key>
	<data>
	AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==
	</data>
	<key>VRAM,totalsize</key>
	<string>0x20000000</string>
	<key>device_type</key>
	<string>NVDA,Parent</string>
	<key>model</key>
	<string>nVidia GeForce 9600 GT</string>
	<key>name</key>
	<string>display</string>
	<key>rom-revision</key>
	<string>nVidia GeForce 9600 GT OpenGL Engine</string>
</dict>
</dict>
</plist>

In short: If you need to generate device-properties for your video card, then get going with EFI-Studio.

 

Attached Files

Sorry,I hane no microphone with this drivers.
Link to comment
Share on other sites

since I had been working on this a bit when SL first came out and I was talking with some people over in the '- P5W DH Deluxe - [sUCCESS], ** GUIDE INSIDE <<| .. Some P5K Pro things' thread, I've had no time to think about this; seems like real progress has been made now though. I haven't had a chance to read through this thread too much yet, but I am going to in the next couple of days and try to get my system finished.

 

My one question for right now though is I know I have an older BIOS right now (0806 or something like that); if I update is there any chance that could break my 10.5 install? I had actually gotten pretty close when I was trying last month; booted fine, just had some sound/LAN issues. If newer BIOS could eliminate one potential factor for little things like that I will upgrade, just need to know I have my computer working for work in the mean time.

Link to comment
Share on other sites

Sorry,I hane no microphone with this drivers.

 

try the BlackCH kexts linked on this post http://www.insanelymac.com/forum/index.php...t&p=1281540

 

 

since I had been working on this a bit when SL first came out and I was talking with some people over in the '- P5W DH Deluxe - [sUCCESS], ** GUIDE INSIDE <<| .. Some P5K Pro things' thread, I've had no time to think about this; seems like real progress has been made now though. I haven't had a chance to read through this thread too much yet, but I am going to in the next couple of days and try to get my system finished.

 

My one question for right now though is I know I have an older BIOS right now (0806 or something like that); if I update is there any chance that could break my 10.5 install? I had actually gotten pretty close when I was trying last month; booted fine, just had some sound/LAN issues. If newer BIOS could eliminate one potential factor for little things like that I will upgrade, just need to know I have my computer working for work in the mean time.

 

There will be no problem to update the bios.. as i did it without screwing up anything few times before on this board. This will not fix your problems but you will have same Bios more or less same Dsdt so should be easier for you to fix your issues. As well if you have a problem then we all talk from the same Base if we have same Bios :)

Link to comment
Share on other sites

Hola Chief

 

i'm trying your version 2.2. My experience is that i have to delete those irqs on Device (IPIC) and Device (TIMR) to get clear audio. You don't have problems with that??

 

As well i get the orange HD icons back ... inserting

 

Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x02)
                   {
                       "device-id",
                       Buffer (0x04)
                       {
                           0x81, 0x26, 0x00, 0x00
                       }
                   }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }

 

fixed it but i confused with your new method

 

 // New Method.
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x02)
                       {
                           "io-device-location",
                           Buffer (0x04)
                           {
                               "Bay 1"
                           }
                       }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (PRT1) // Renamed from: CHN1
               {
                   Name (_ADR, One)

                   Method (_GTM, 0, NotSerialized)
                   {
                       ShiftLeft (SSCR, One, Local1)
                       Or (SMCR, Local1, Local0)
                       ShiftLeft (SMAE, 0x02, Local3)
                       ShiftLeft (SM6E, One, Local4)
                       Or (Local3, Local4, Local3)
                       Or (SM3E, Local3, Local1)
                       ShiftLeft (SMPT, 0x04, Local3)
                       Or (Local1, Local3, Local1)
                       ShiftLeft (SSAE, 0x02, Local3)
                       ShiftLeft (SS6E, One, Local4)
                       Or (Local3, Local4, Local3)
                       Or (SS3E, Local3, Local2)
                       ShiftLeft (SSPT, 0x04, Local3)
                       Or (Local2, Local3, Local2)
                       Return (GTM (SMRI, Local1, SMUT, SSRI, Local2, SSUT, Local0))
                   }

                   Method (_STM, 3, NotSerialized)
                   {
                       Store (Arg0, Debug)
                       Store (Arg0, TMD0)
                       ShiftLeft (SMAE, 0x02, Local3)
                       ShiftLeft (SM6E, One, Local4)
                       Or (Local3, Local4, Local3)
                       Or (SM3E, Local3, Local0)
                       ShiftLeft (SMPT, 0x04, Local3)
                       Or (Local0, Local3, Local0)
                       ShiftLeft (SSAE, 0x02, Local3)
                       ShiftLeft (SS6E, One, Local4)
                       Or (Local3, Local4, Local3)
                       Or (SS3E, Local3, Local1)
                       ShiftLeft (SSPT, 0x04, Local3)
                       Or (Local1, Local3, Local1)
                       Store (SMRI, GMPT)
                       Store (Local0, GMUE)
                       Store (SMUT, GMUT)
                       Store (SMCR, GMCR)
                       Store (SSRI, GSPT)
                       Store (Local1, GSUE)
                       Store (SSUT, GSUT)
                       Store (SSCR, GSCR)
                       STM ()
                       Store (GMPT, SMRI)
                       Store (GMUE, Local0)
                       Store (GMUT, SMUT)
                       Store (GMCR, SMCR)
                       Store (GSUE, Local1)
                       Store (GSUT, SSUT)
                       Store (GSCR, SSCR)
                       If (And (Local0, One))
                       {
                           Store (One, SM3E)
                       }
                       Else
                       {
                           Store (Zero, SM3E)
                       }

                       If (And (Local0, 0x02))
                       {
                           Store (One, SM6E)
                       }
                       Else
                       {
                           Store (Zero, SM6E)
                       }

                       If (And (Local0, 0x04))
                       {
                           Store (One, SMAE)
                       }
                       Else
                       {
                           Store (Zero, SMAE)
                       }

                       If (And (Local1, One))
                       {
                           Store (One, SS3E)
                       }
                       Else
                       {
                           Store (Zero, SS3E)
                       }

                       If (And (Local1, 0x02))
                       {
                           Store (One, SS6E)
                       }
                       Else
                       {
                           Store (Zero, SS6E)
                       }

                       If (And (Local1, 0x04))
                       {
                           Store (One, SSAE)
                       }
                       Else
                       {
                           Store (Zero, SSAE)
                       }

                       Store (GTF (Zero, Arg1), ATA2)
                       Store (GTF (One, Arg2), ATA3)
                   }

                   Device (DRV0)
                   {
                       Name (_ADR, Zero)
                       Method (_GTF, 0, NotSerialized)
                       {
                           Return (RATA (ATA2))
                       }
                   }

                   Device (DRV1)
                   {
                       Name (_ADR, One)
                       Method (_GTF, 0, NotSerialized)
                       {
                           Return (RATA (ATA3))
                       }
                   }

                   // New Method.
                   Method (_DSM, 4, NotSerialized)
                   {
                        Store (Package (0x02)
                       {
                           "io-device-location",
                           Buffer (0x06)
                           {
                               "Bay 2"
                           }
                       }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (PRT2) // new Device.
               {
                   Name (_ADR, 0x02)

                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x02)
                       {
                           "io-device-location",
                           Buffer (0x06)
                           {
                               "Bay 3"
                           }
                       }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (PRT3) // new Device.
               {
                   Name (_ADR, 0x03)

                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x02)
                       {
                           "io-device-location",
                           Buffer (0x06)
                           {
                               "Bay 4"
                           }
                       }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (PRT4) // new Device.
               {
                   Name (_ADR, 0x04)

                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x06)
                       {
                           "io-device-location",
                           Buffer (0x06)
                           {
                               "Bay 5"
                           },

                           "location",
                           Buffer (0x0f)
                           {
                               "0 top 1 bottom"
                           },

                           "AHCI-Ejectable",
                           Buffer (One)
                           {
                               One
                           }

                       }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

               Device (PRT5) // new Device.
               {
                   Name (_ADR, 0x05)

                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x02)
                       {
                           "io-device-location",
                           Buffer (0x06)
                           {
                               "Bay 6"
                           }
                       }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

 

do i screw something by mixing??

 

ups and the usb aren't set as internal again.. so no sleep.. well i learned how to fix this :(

 

On boot i get this few new errors

 

06/10/09 20:10:32	kernel	Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleMikeyDriver/AppleMikeyI2C.cpp" at line 197 goto handler

06/10/09 20:10:32	kernel	Sound assertion "mMikeyReceiverFound && 0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleMikeyDriver/AppleMikeyI2C.cpp" at line 247 goto Exit

06/10/09 20:10:32	kernel	Sound assertion "0 != readRegisters ( (UInt8*)&mRegisterCache )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleMikeyDriver/AppleMikeyI2C.cpp" at line 104 goto handler

06/10/09 20:10:34	com.apple.kextd[10]	/System/Library/Extensions/IOSerialFamily.kext/Contents/PlugIns/InternalModemSupport.kext does not declare a kernel dependency; using com.apple.kernel.6.0.

 

"Offtopic

and as read you have logitech wireless so sure your running lcc version 3.10 i get as well this errors

 

06/10/09 20:10:21	kernel	Kernel Extensions in backtrace (with dependencies):
06/10/09 20:10:21	kernel	com.Logitech.Control Center.HID Driver(3.1.0)@0x5d36a000->0x5d390fff
06/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOUSBFamily(3.7.8)@0x5cc39000
06/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOHIDFamily(1.6.0)@0x5c9f5000
06/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOUSBHIDDriver(3.7.5)@0x5d2e2000
06/10/09 20:10:21	kernel	Trying to change a collection in the registry
06/10/09 20:10:21	kernel	Backtrace 0x4ff2a8 0x4fef07 0x5d37f4be 0x5d37bc6f 0x5d37b47a 0x5d37fe17 0x5d37562d

 

mine is Logitech Cordless Keyboard s530 mac, sometimes i have some strange lags.. for example the dock stays static no effect until i unplug and plug the usb transmitter. do you see same behaviour on your system?"

 

Thx for your hard work on getting osx working better and better on generic and specially "p5k pro" boards...

dsdt.zip

Link to comment
Share on other sites

Is there a specific reason this (and most) guides say to install from a USB drive, and not straight from the DVD? The install I had "working" for a while was installed right from the DVD, and while it did have some issues like I mentioned (sound, slow LAN, no sleep) in general it seemed to work.

Link to comment
Share on other sites

Is there a specific reason this (and most) guides say to install from a USB drive, and not straight from the DVD? The install I had "working" for a while was installed right from the DVD, and while it did have some issues like I mentioned (sound, slow LAN, no sleep) in general it seemed to work.

 

the specific reason is that most bootloaders haven't proper atapi dvd drivers for most boards so its easier to install from usb.. you can go for a boot 132cd :D

 

As for your issues they are all fixed in this topic. well, slow lan is new to me.

Link to comment
Share on other sites

the specific reason is that most bootloaders haven't proper atapi dvd drivers for most boards so its easier to install from usb.. you can go for a boot 132cd :D

 

As for your issues they are all fixed in this topic. well, slow lan is new to me.

 

the slow LAN is through a cheapo PCI 10/100 card that I had put in when I installed 10.5 because it worked vanilla and the p5k onboard port didn't. If onboard LAN works now I can ditch the PCI card and it probably won't be an issue (though I don't know why it would work fine in 10.5 and be slow in 10.6)

 

Also, dumb question, Master Chief (or anyone who's doing things pretty close to this guide) I'm assuming all the steps that aren't mentioned explicitly in your guide, like editing apple boot plist and the UUID drive strings etc, are still required. Just making sure since I haven't looked into this since the week 10.6 came out, things could have changed. Is there a specific guide that you would suggest to follow for that stuff.

Link to comment
Share on other sites

Hola Chief

i'm trying your version 2.2. My experience is that i have to delete those irqs on Device (IPIC) and Device (TIMR) to get clear audio. You don't have problems with that??

Hi. No, I don't need to remove the IRQ's no.

 

As well i get the orange HD icons back ... inserting

Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x02)
                   {
                       "device-id",
                       Buffer (0x04)
                       {
                           0x81, 0x26, 0x00, 0x00
                       }
                   }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }

 

That's probably because I use LegacyAppleAHCIPort.kext for it – I don't like to change device id's without first knowing that it really does.

 

fixed it but i confused with your new method

 

 // New Method.
                       Store (Package (0x02)
                       {
                           "io-device-location",
                           Buffer (0x04)
                           {
                               "Bay 1"
                           }
                       }, Local0)

do i screw something by mixing??

Not if you take care of the length Package (0x02) here. And all this does is to add a new property in System Profiler called: "Bay Name:" and in this case that would be set to: "Bay 1". One of the four bays inside a MacPro.

 

ups and the usb aren't set as internal again.. so no sleep.. well i learned how to fix this :)

Are you talking about the: "Host Controller Location:" because these are all set to: "Built-in USB" in System Profiler.

 

On boot i get this few new errors

 

06/10/09 20:10:32	kernel	Sound assertion "0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleMikeyDriver/AppleMikeyI2C.cpp" at line 197 goto handler

06/10/09 20:10:32	kernel	Sound assertion "mMikeyReceiverFound && 0 != result" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleMikeyDriver/AppleMikeyI2C.cpp" at line 247 goto Exit

06/10/09 20:10:32	kernel	Sound assertion "0 != readRegisters ( (UInt8*)&mRegisterCache )" failed in "/SourceCache/AppleHDA/AppleHDA-174.1.1/AppleMikeyDriver/AppleMikeyI2C.cpp" at line 104 goto handler

06/10/09 20:10:34	com.apple.kextd[10]	/System/Library/Extensions/IOSerialFamily.kext/Contents/PlugIns/InternalModemSupport.kext does not declare a kernel dependency; using com.apple.kernel.6.0.

I'm working on it. Well not really at the moment but I hope to fix this soon. I just hate warnings and errors.

 

"Offtopic

and as read you have logitech wireless so sure your running lcc version 3.10 i get as well this errors

06/10/09 20:10:21	kernel	Kernel Extensions in backtrace (with dependencies):
06/10/09 20:10:21	kernel	com.Logitech.Control Center.HID Driver(3.1.0)@0x5d36a000->0x5d390fff
06/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOUSBFamily(3.7.8)@0x5cc39000
06/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOHIDFamily(1.6.0)@0x5c9f5000
06/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOUSBHIDDriver(3.7.5)@0x5d2e2000
06/10/09 20:10:21	kernel	Trying to change a collection in the registry
06/10/09 20:10:21	kernel	Backtrace 0x4ff2a8 0x4fef07 0x5d37f4be 0x5d37bc6f 0x5d37b47a 0x5d37fe17 0x5d37562d

 

mine is Logitech Cordless Keyboard s530 mac, sometimes i have some strange lags.. for example the dock stays static no effect until i unplug and plug the usb transmitter. do you see same behaviour on your system?"

 

I only have a Logitech wireless mouse (V220). My keyboard has changed to Apple USB as of today. I guess that I couldn't get used to PC keyboards. Switching between the two all the time was getting too much of a hassle for me.

 

Thx for your hard work on getting osx working better and better on generic and specially "p5k pro" boards...

Thanks, but it's just for fun of course ;)

Link to comment
Share on other sites

finally i found why your usb fix was never working for me

 

part of your code

 

Device (EHCI) // Renamed from: EUSB
           {
               Name (_ADR, 0x001D0007)
               Method (_PRW, 0, NotSerialized)
               {
                   Return (GPRW (0x0D, 0x04))
               }
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x04)
                       {
                           "AAPL,clock-id", 
                           Buffer (One)
                           {
                               0x01
                           }, 

                           "device-id", 
                           [color="#FF0000"]Buffer (0x04)[/color]
                           {
                               0x3a, 0x3a, 0x00, 0x00
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

 

mine

 

Device (EUSB)
           {
               Name (_ADR, 0x001D0007)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL (), 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Name (_PRW, Package (0x02)
               {
                   0x0D, 
                   0x03
               })
               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package (0x04)
                       {
                           "AAPL,clock-id", 
                           Buffer (One)
                           {
                               0x01
                           }, 

                           "device_type", 
                           Buffer [color="#FF0000"](0x05)[/color]
                           {
                               "EHCI"
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

 

and other example

Device (UHC1) // Renamed from: USB0
           {
               Name (_ADR, 0x001D0000)
               OperationRegion (BAR0, PCI_Config, 0xC4, One)
               Field (BAR0, ByteAcc, NoLock, Preserve)
               {
                   USBW,   2, Offset (0x01)
               }
               Method (_S3D, 0, NotSerialized)
               {
                   If (LOr (LEqual (OSFL (), One), LEqual (OSFL (), 0x02)))
                   {
                       Return (0x02)
                   }
                   Else
                   {
                       Return (0x03)
                   }
               }

               Method (_PSW, 1, NotSerialized)
               {
                   If (Arg0)
                   {
                       Store (0x03, USBW)
                   }
                   Else
                   {
                       Store (Zero, USBW)
                   }
               }

               Method (_PRW, 0, NotSerialized)
               {
                   Return (GPRW (0x03, 0x04))
               }

               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package [color="#FF0000"](0x04)[/color]
                   {
                       "device-id", 
                       Buffer (0x04)
                       {
                           0x34, 0x3a, 0x00, 0x00
                       }
                   }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }
           }

 

mine

 Device (USB0)
           {
               Name (_ADR, 0x001D0000)
               Method (_S3D, 0, NotSerialized)
               {
                   If (LEqual (OSFL (), 0x02))
                   {
                       Return (0x02)
                   }

                   Return (0x03)
               }

               Method (_DSM, 4, NotSerialized)
               {
                   Store (Package [color="#FF0000"](0x02)[/color]
                       {
                           "device-id", 
                           Buffer (0x04)
                           {
                               0x34, 0x3A, 0x00, 0x00
                           }
                       }, Local0)
                   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                   Return (Local0)
               }

               Name (_PRW, Package (0x02)
               {
                   0x03, 
                   0x03
               })
           }

 

so we have different buffer data and thats why it was not working before. now i know how but not why.... mmmhhh why do i have to remove the irq for sound and you not?

 

know i have your file adapted to my system but actually this shows that i should start from scratch with a clean dsdt and inserting all the patches again... as there are more small differences and those could damage the board isn't it?

 

I only have a Logitech wireless mouse (V220). My keyboard has changed to Apple USB as of today. I guess that I couldn't get used to PC keyboards. Switching between the two all the time was getting too much of a hassle for me.

 

mine is a mac keyboard and mouse with special buttons from logitech. so for your v220 i suppose you didn't install lcc310 as there is no need for it ;)

 

 

salu2

dsdt.zip

Link to comment
Share on other sites

The Store (Package (0x04) error is my fault. I simply forgot to adjust the package length – I have a few more fixes in my DSDT, work in progress/patches that I am still working on and thus they are not included/ready for sharing. Thanks for catching the error (I'll update the files tomorrow).

 

The buffer index starts with 0 and not 1 and thus the length for the string: "EHCI" should be [0, 1, 2, 3] + 1 = 4.

Link to comment
Share on other sites

Master Chief - Here is my dsdt any help would be appreciated. I have tried, this stuff is hard.

 

VegasKarma_dsdt.zip

Hi There,

 

I finally got took some time off and looked at your DSDT... to not find a single patch in it (see attachments for the diff. That was a bit of a surprise, as you might understand. Is this the DSDT you got from a Linux dump? If that is the case then please unzip DSDT_V2.3.zip and use that.

 

You might need to change the OperationRegion in each Processor block definition. Here's the one for my CPU0:

[b]Mine:[/b]
Processor (CPU1, 0x01, 0x00000810, 0x06)
{
	OperationRegion (STBL, SystemMemory, [color="#FF0000"]0xCFF8E0D0[/color], 0x01D2)

[b]Yours:[/b]
Processor (CPU1, 0x01, 0x00000810, 0x06)
{
	OperationRegion (STBL, SystemMemory, [color="#006400"]0xBFF8E0D0[/color], 0x01D2)

And thus all you have to do is to change the marked address in red, with the following onces:

 

0xBFF8E0D0

0xBFF8E2B0

0xBFF8E400

0xBFF8E550

 

I don't know why they are different, but presumably due to used BIOS version/revision or BIOS settings. Adding some pictures to your (first) post would have helped me greatly.

 

Now about sound. Have a look at the newly inserted HDEF Device which is what makes things work here. And usually you only need to adjust the "layout-id" to the one you are using/used in your Legacy kext. I used 883 because that was the logical thing to do for our motherboard with the ALC883 on it. It might however not match with some/all of the available legacy kexts.

VegasKarma_diff.txt

Link to comment
Share on other sites

...

Also, dumb question, Master Chief (or anyone who's doing things pretty close to this guide) I'm assuming all the steps that aren't mentioned explicitly in your guide, like editing apple boot plist and the UUID drive strings etc, are still required.

The installation of Chameleon and its requirements are not included, simply because that's already part of the included Chameleon installation instructions/documentation.

 

Just making sure since I haven't looked into this since the week 10.6 came out, things could have changed. Is there a specific guide that you would suggest to follow for that stuff.

Not really. I can't really recommend anything. But the main purpose of Hacks to me is the fun factor. To learn new stuff and get things going, and thus the day that everything works here... then I'll be gone (again). Looking for something new/broken again. It might ultimately be the real reason why I bought a wired Apple USB keyboard, simply because you cannot wake up your computer with it. And I tell you that is about to change one day soon ^_^

 

Hey. Some people play chess... I develop and write software, and do tech stuff. I already have my own Apple/Mac hardware (see sig) and so do my children and thus that's not "it". Nope. But the unknown stuff, like that address change in post #38 intrigues me so much that I will most likely end up restarting my hack many times later today... simply because I have to know what it is. I just can't stop/help it. LOL Sometimes I get sick and tired of it myself. Not to mention the other family members here :angel:

Link to comment
Share on other sites

Hi Master Chief,

 

I need your assistance.

My Mobo is a P5E-Ws-Pro, up to your version 2.1 has i no problems.

However with the integration of new SBUS with version 2.2

 

I have two compilers errors, however i do not find the error. :D

 

Invalid character (0x16), expecting ASL keyword or name

and

syntax error, unexpected $end

 

Please look into my dsdt.dsl

dsdt.dsl.zip

 

Many thanks for your assistance :D

 

parcival

Link to comment
Share on other sites

Hi Master Chief,

 

I need your assistance. My Mobo is a P5E-Ws-Pro, up to your version 2.1 has i no problems.

However with the integration of new SBUS with version 2.2

 

I have two compilers errors, however i do not find the error. ;)

 

Invalid character (0x16), expecting ASL keyword or name and syntax error, unexpected $end

 

Please look into my dsdt.dsl

dsdt.dsl.zip

 

Many thanks for your assistance :D

 

parcival

I am sorry, but I am not going to fix your dsdt.dsl – nor that of anyone else here. Doing this would put me in an awkward position, as you might understand, where I end up fixing other peoples mistakes. Not to mention that you don't have a P5K PRO motherboard. Different kind of soup so to speak. I can however tell you that it can be done:

 

==================================================

Master-Chiefs-Mac:DSDT Chief$ sudo ./iasl parcival39_dsdt.dsl

 

Intel ACPI Component Architecture – Compiled by Master Chief

ASL Optimizing Compiler version 20091006 [Oct 6 2009]

Copyright © 2000 - 2009 Intel Corporation

Supports ACPI Specification Revision 4.0

 

ASL Input: parcival39_dsdt.dsl - 10309 lines, 332782 bytes, 4616 keywords

AML Output: ./dsdt.aml - 37976 bytes, 1062 named objects, 3554 executable opcodes

 

Compilation complete. 0 Errors, 0 Warnings, 0 Remarks, 123 Optimizations

Master-Chiefs-Mac:DSDT Chief$

==================================================

 

Your dsdt.dsl had 14 errors in it, of which 13 were related to invalid characters (0x0d). The last error was caused by a missing } in the last _WAK Method. Why do you have two?

 

Let's use the first compiler error from your dsdt.dsl so that anyone running into this specific problem (Error 4095) can fix it without my help:

 

// Newly added Method for SBUS support.

Error 4095 - ^ Invalid character (0x0D), expecting ASL keyword or name

 

Now search for "// Newly added Method for SBUS support." and this is what you get:

		// Newly added Method for SBUS support.
	Method (DBEN, 0, NotSerialized)
	{
	}

Which looks good doesn't it? How come the compiler barks about 0x0d? Let's find out. Put the cursor after the . and remove everything up until the { and rearrange the layout again. Now re-compile the dsdt.dsl Done.

 

But doing this for the wrong line(s) might not work so you'll have to find the right spot first. Which is equally easy when you add some text (??? in the following example) like this:

		// ??? Newly added Method for SBUS support.
	Method (DBEN, 0, NotSerialized)
	{
	}

I hope this helps you and all the other people that keep running into this problem. Good luck!

Link to comment
Share on other sites

Master Cief,

 

thanks for your hint, problem solved.

Owing to your assistance, i have much learned here ;)

 

thx

 

parcival

That's more like it – it is much more fun to fix things yourself because what if people stop helping or go missing? And yes now you can help other people as well.

Link to comment
Share on other sites

Buenas jefe :(

 

i found this entry in your dsdt.. and i was wondering what this does..

 

 Concatenate (STS0, TEMP, Local2)
               _OSC (Buffer (0x10)
                 [color="#008000"]  {   // GUID for Intel platforms is: 4077A616-290C-47BE-9EBD-D87058713953.[/color]
                       /* 0000 */    0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, 
                       /* 0008 */    0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
                   }, REVS, SIZE, Local2)

 

sure i have to edit with mine uuid.. put what is the purpose of it ??

 

salu2

Link to comment
Share on other sites

Sweet! I cannot believe that I did it this quick, seriously, but I can now wake up my hack from my new Apple HID Keyboard! And goodbye to the device-id changes for EHCI and UHCI.

 

Note: I will update the attachments later today – right after adding some more comments and additional testing.

 

Buenas jefe :)

 

i found this entry in your dsdt.. and i was wondering what this does..

 

 Concatenate (STS0, TEMP, Local2)
               _OSC (Buffer (0x10)
                 [color="#008000"]  {   // GUID for Intel platforms is: 4077A616-290C-47BE-9EBD-D87058713953.[/color]
                       /* 0000 */    0x16, 0xA6, 0x77, 0x40, 0x0C, 0x29, 0xBE, 0x47, 
                       /* 0008 */    0x9E, 0xBD, 0xD8, 0x70, 0x58, 0x71, 0x39, 0x53
                   }, REVS, SIZE, Local2)

 

sure i have to edit with mine uuid.. put what is the purpose of it ??

 

salu2

LOL jefe ;)

 

Anyway this GUID is just there for backward compatibility.

Link to comment
Share on other sites

DSDT V2.4 is now available in post #3 – see attachments.

 

Improvements:

 

1) Wake up from Apple USB Keyboard (this had yet to be solved I'm told).

2) No more device-id setting needed in EHCI/UHCI.

3) Additional comments added.

 

Just two fixes, but this update is pretty important in my book – the less workarounds we use the better.

 

And all this, like I said due to reading of the "Intel I/O Controller Hub 9 (ICH9) Family" specification. That was a real eye opener. I'm also pretty positive about other goodies, because the addition of the SBUS and the two latest fixes here, are only a start... I want sleep after an idle period with a TSST drive, but without a DVD in it. Who said that can't be done?

Link to comment
Share on other sites

 Share

×
×
  • Create New...