Jump to content

Master Chief's P5K PRO ACPI Warfare


  • Please log in to reply
908 replies to this topic

#21
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male
Version 2.1 now available for download from post #3 – see attachments.

And here's a quick HOWTO to re-enable PS2 devices, because I removed them. First search for:
/* There is no PS2 Keyboard on a Mac
					If (And (OPT3, 0x10))
					{
						Notify (PS2K, 0x02)
					} */
Change that into:
If (And (OPT3, 0x10))
					{
						Notify (PS2K, 0x02)
					}
Then search for:
/*  There is no PS2 Keyboard on a Mac 
				Device (PS2K) {} */

				/* Method (PS2K._PRW, 0, NotSerialized) {} */

				/* There is no PS2 Mouse on a Mac
				Device (PS2M) {} */

				/* Method (PS2M._PRW, 0, NotSerialized) {} */
And replace it with:
Device (PS2K)                {                    Name (_HID, EisaId ("PNP0303"))                    Name (_CID, EisaId ("PNP030B"))                    Method (_STA, 0, NotSerialized)                    {                        ShiftLeft (One, 0x0A, Local0)                        If (And (IOST, Local0))                        {                            Return (0x0F)                        }                        Return (Zero)                    }                    Name (_CRS, ResourceTemplate ()                    {                        IO (Decode16,                            0x0060,             // Range Minimum                            0x0060,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IO (Decode16,                            0x0064,             // Range Minimum                            0x0064,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IRQNoFlags ()                            {1}                    })                }                Method (PS2K._PRW, 0, NotSerialized)                {                    Return (GPRW (0x1F, 0x04))                }                Device (PS2M)                {                    Name (_HID, EisaId ("PNP0F03"))                    Name (_CID, EisaId ("PNP0F13"))                    Method (_STA, 0, NotSerialized)                    {                        ShiftLeft (One, 0x0C, Local0)                        If (And (IOST, Local0))                        {                            Return (0x0F)                        }                        Return (Zero)                    }                    Name (CRS1, ResourceTemplate ()                    {                        IRQNoFlags ()                            {12}                    })                    Name (CRS2, ResourceTemplate ()                    {                        IO (Decode16,                            0x0060,             // Range Minimum                            0x0060,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IO (Decode16,                            0x0064,             // Range Minimum                            0x0064,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IRQNoFlags ()                            {12}                    })                    Method (_CRS, 0, NotSerialized)                    {                        ShiftLeft (One, 0x0A, Local0)                        If (And (IOST, Local0))                        {                            Return (CRS1)                        }                        Else                        {                            Return (CRS2)                        }                    }                }                Method (PS2M._PRW, 0, NotSerialized)                {                    Return (GPRW (0x1D, 0x04))                }
And you are done! But here's an important note: Do NOT copy it from this forum, but use your own dsdt.dsl file or you'll end up with hidden characters (0x0d) that will prevent it from compiling!

You can see what I've done by entering the following command in a terminal window: diff -uw old.dsl new.dsl. No mysteries here :D

#22
VegasKarma

VegasKarma

    InsanelyMac Protégé

  • Members
  • Pip
  • 23 posts

Please attach your dsdt.dsl file. Not some text copy because I can't do jack with text files!


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

Attached File  VegasKarma_dsdt.zip   14.29KB   16 downloads

#23
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male

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

Attached File  VegasKarma_dsdt.zip   14.29KB   16 downloads

Okay, but what exactly is it that you want me to do with it?

#24
VegasKarma

VegasKarma

    InsanelyMac Protégé

  • Members
  • Pip
  • 23 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.

#25
spanakorizo

spanakorizo

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 747 posts

Version 2.1 now available for download (see attachments in post #3).

And here's a quick HOWTO to re-enable PS2 devices, because I removed them. First search for:

/* There is no PS2 Keyboard on a Mac
					If (And (OPT3, 0x10))
					{
						Notify (PS2K, 0x02)
					} */
Change that into:
If (And (OPT3, 0x10))
					{
						Notify (PS2K, 0x02)
					}
Then search for:
/*  There is no PS2 Keyboard on a Mac 
				Device (PS2K) {} */

				/* Method (PS2K._PRW, 0, NotSerialized) {} */

				/* There is no PS2 Mouse on a Mac
				Device (PS2M) {} */

				/* Method (PS2M._PRW, 0, NotSerialized) {} */
And replace it with:
Device (PS2K)                {                    Name (_HID, EisaId ("PNP0303"))                    Name (_CID, EisaId ("PNP030B"))                    Method (_STA, 0, NotSerialized)                    {                        ShiftLeft (One, 0x0A, Local0)                        If (And (IOST, Local0))                        {                            Return (0x0F)                        }                        Return (Zero)                    }                    Name (_CRS, ResourceTemplate ()                    {                        IO (Decode16,                            0x0060,             // Range Minimum                            0x0060,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IO (Decode16,                            0x0064,             // Range Minimum                            0x0064,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IRQNoFlags ()                            {1}                    })                }                Method (PS2K._PRW, 0, NotSerialized)                {                    Return (GPRW (0x1F, 0x04))                }                Device (PS2M)                {                    Name (_HID, EisaId ("PNP0F03"))                    Name (_CID, EisaId ("PNP0F13"))                    Method (_STA, 0, NotSerialized)                    {                        ShiftLeft (One, 0x0C, Local0)                        If (And (IOST, Local0))                        {                            Return (0x0F)                        }                        Return (Zero)                    }                    Name (CRS1, ResourceTemplate ()                    {                        IRQNoFlags ()                            {12}                    })                    Name (CRS2, ResourceTemplate ()                    {                        IO (Decode16,                            0x0060,             // Range Minimum                            0x0060,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IO (Decode16,                            0x0064,             // Range Minimum                            0x0064,             // Range Maximum                            0x00,               // Alignment                            0x01,               // Length                            )                        IRQNoFlags ()                            {12}                    })                    Method (_CRS, 0, NotSerialized)                    {                        ShiftLeft (One, 0x0A, Local0)                        If (And (IOST, Local0))                        {                            Return (CRS1)                        }                        Else                        {                            Return (CRS2)                        }                    }                }                Method (PS2M._PRW, 0, NotSerialized)                {                    Return (GPRW (0x1D, 0x04))                }

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.insanelym...p...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? (

#26
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male

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.insanelym...p...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 :)

#27
julia24

julia24

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts

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:
130400000100000008000000600200000d00000002010c00d041030a000000000101060000010101060000007fff04000e0000004e00560050004d0000002000000001000000000000000000000000000000000000000000000000000000220000005600520041004d002c0074006f00740061006c00730069007a006500000008000000000000201c0000006400650076006900630065005f00740079007000650000000f0000004e5644412c506172656e740e0000006e0061006d00650000000b000000646973706c617922000000400030002c006400650076006900630065005f00740079007000650000000b000000646973706c617922000000400031002c006400650076006900630065005f00740079007000650000000b000000646973706c6179100000006d006f00640065006c0000001a0000006e5669646961204765466f726365203936303020475420000000400031002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d616314000000400030002c006e0061006d0065000000120000004e5644412c446973706c61792d4114000000400031002c006e0061006d0065000000120000004e5644412c446973706c61792d4220000000400030002c0063006f006d00700061007400690062006c00650000000e0000004e5644412c4e564d6163100000004e00560043004100500000001800000004000000000003000c00000000000007000000001e00000072006f006d002d007200650076006900730069006f006e0000002e0000006e5669646961204765466f7263652039363030204754204f70656e474c20456e67696e65205b4546495d3c0000000100000002010c00d041030a0000000001010600021a7fff0400180000006400650076006900630065002d0069006400000006000000393a3c0000000100000002010c00d041030a0000000001010600001a7fff0400180000006400650076006900630065002d0069006400000006000000373a3c0000000100000002010c00d041030a0000000001010600021d7fff0400180000006400650076006900630065002d0069006400000006000000363a3c0000000100000002010c00d041030a0000000001010600011a7fff0400180000006400650076006900630065002d0069006400000006000000383a3f0000000100000002010c00d041030a0000000001010600051c0101060000007fff0400160000006200750069006c0074002d0069006e00000005000000013c0000000100000002010c00d041030a0000000001010600001d7fff0400180000006400650076006900630065002d0069006400000006000000343a3c0000000100000002010c00d041030a0000000001010600011d7fff0400180000006400650076006900630065002d0069006400000006000000353a
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.

#28
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male
The latest edition – DSDT V2.2 is now available for download from post #3 – see attachments.

1) It now includes a SBUS Device.

You can see the before/after changes by looking at the included diff.out file (open with TextEdit).

Have fun!

#29
farski

farski

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
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.

#30
OsXsO

OsXsO

    InsanelyMac Protégé

  • Members
  • PipPip
  • 84 posts
  • Location:Spain

Sorry,I hane no microphone with this drivers.


try the BlackCH kexts linked on this post http://www.insanelym...p...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 :)

#31
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male

try the BlackCH kexts linked on this post http://www.insanelym...p...t&p=1281540

Thanks man.

@Julia24: I'm confused. Not about your post... but I thought to have replied to you before dinner. Apparently not. Sorry!

#32
OsXsO

OsXsO

    InsanelyMac Protégé

  • Members
  • PipPip
  • 84 posts
  • Location:Spain
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

[codebox]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)
}
[/codebox]

fixed it but i confused with your new method

[codebox] // 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)
}
}
[/codebox]

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

[codebox]
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.[/codebox]

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

[codebox]
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[/codebox]

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...

Attached Files

  • Attached File  dsdt.zip   32.08KB   13 downloads


#33
farski

farski

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts
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.

#34
OsXsO

OsXsO

    InsanelyMac Protégé

  • Members
  • PipPip
  • 84 posts
  • Location:Spain

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.

#35
farski

farski

    InsanelyMac Protégé

  • Members
  • PipPip
  • 61 posts

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.

#36
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male

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 handler06/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 Exit06/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 handler06/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->0x5d390fff06/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOUSBFamily(3.7.8)@0x5cc3900006/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOHIDFamily(1.6.0)@0x5c9f500006/10/09 20:10:21	kernel	dependency: com.apple.iokit.IOUSBHIDDriver(3.7.5)@0x5d2e200006/10/09 20:10:21	kernel	Trying to change a collection in the registry06/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 ;)

#37
OsXsO

OsXsO

    InsanelyMac Protégé

  • Members
  • PipPip
  • 84 posts
  • Location:Spain
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",                             Buffer (0x04)                            {                                0x3a, 0x3a, 0x00, 0x00                            }                        }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }            }

mine

(0x05)
{
"EHCI"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
} _linenums:0'>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 (0x05) { "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 (0x04)                    {                        "device-id",                         Buffer (0x04)                        {                            0x34, 0x3a, 0x00, 0x00                        }                    }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }            }

mine
(0x02)
{
"device-id",
Buffer (0x04)
{
0x34, 0x3A, 0x00, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}

Name (_PRW, Package (0x02)
{
0x03,
0x03
})
} _linenums:0'>Device (USB0) { Name (_ADR, 0x001D0000) Method (_S3D, 0, NotSerialized) { If (LEqual (OSFL (), 0x02)) { Return (0x02) } Return (0x03) } Method (_DSM, 4, NotSerialized) { Store (Package (0x02) { "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

Attached Files

  • Attached File  dsdt.zip   32.08KB   8 downloads


#38
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male
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.

#39
Master Chief

Master Chief

    Just Chief

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,176 posts
  • Gender:Male

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

Attached File  VegasKarma_dsdt.zip   14.29KB   16 downloads

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:
Mine _linenums:0'><strong class='bbc'>Mine:</strong>	Processor (CPU1, 0x01, 0x00000810, 0x06)	{		OperationRegion (STBL, SystemMemory, 0xCFF8E0D0, 0x01D2)<strong class='bbc'>Yours:</strong>	Processor (CPU1, 0x01, 0x00000810, 0x06)	{		OperationRegion (STBL, SystemMemory, 0xBFF8E0D0, 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.

Attached Files



#40
parcival39

parcival39

    InsanelyMac Protégé

  • Members
  • PipPip
  • 58 posts
Hi, many thanks for this super Thread here.

Abbout kernel Sound assertion.
The same error had i also. I use this additional kext,
thus work my ACL888. It must be changed for other HDA device accordingly.

Attached File  LegacyAppleHDAHardwareConfigDriver.kext.zip   1.23KB   22 downloads

parcival





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2015 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy