fc bayern Posted October 21, 2009 Share Posted October 21, 2009 Don Quijote My dsdtl is from my leopard instalation, on My SL i did'n use dsdtl Does it make any difference.(i think is has all the nessesary hardware information). My question was : can I use this dsdtl on the SL thanks Link to comment Share on other sites More sharing options...
MrHanky Posted October 21, 2009 Share Posted October 21, 2009 Thank you very much, Don Quijote. But I was wondering, your posted DSDT.aml is different compared to mine. My sound and the powerbutton fix didn't work - but never mind. The UHCI-Fix and EHCI-Fix work, but I can't wake the system by USB-mouse or keyboard. Any tipps or questions? Link to comment Share on other sites More sharing options...
BuXb Posted October 21, 2009 Share Posted October 21, 2009 A quick question: my PCMCIA stopped working in Snow Leo. I use the IOPCMCIAFamily.kext for 10.5.6 from ~Eureka's aka Chun-Nan's repertoire which is the only IOPCCardFamily/ IOPCIFamily combo known to also work in Snow. It successfully enables LAN & WLAN, but for PCMCIA I now get IOPCCard notice: Bad bridge mapping at 0xd2100000! IOPCCard info: no bridges found. IOPCCardBridge::start faile Yes, I deleted the existing IOPCIFamily.kext from S/L/E, and I also tried a couple of different IOPCCardFamily.kexts (beta 1.6.4 rev8 was the IOPCCardFamily/ IOPCIFamily combo working for me in Leo). I wonder if that is s.th. that can be addressed in the DSDT at all? Unfortunately Chun Nan's only IOPCIFamily.kext which corrected the buggy PCI bridge mapping and gave me PCMCIA in Leo causes a KP in Snow .. I attached current DSDT + lspci -v from Kantotix. Can this be addressed in the DSDT? DSDT___lspci__v.zip Link to comment Share on other sites More sharing options...
gengstapo Posted October 21, 2009 Share Posted October 21, 2009 Hella Is it possible to solve USB Wifi adapter in SL using DSDT/ modified the Apple plist? My adapter was G-122 rev.C1 & WUSB54G v4. Thanks Link to comment Share on other sites More sharing options...
Don Quijote Posted October 22, 2009 Share Posted October 22, 2009 Thank you very much, Don Quijote. But I was wondering, your posted DSDT.aml is different compared to mine. My sound and the powerbutton fix didn't work - but never mind. The UHCI-Fix and EHCI-Fix work, but I can't wake the system by USB-mouse or keyboard. Any tipps or questions? I'm not an expert in dsdt, but i think that the power button can bring the menu only when running on a laptop. Glad it worked the fix. I've also changed AZAL with HDEF in you dsdt (purelly cosmetic) and fixed some warnings. Hella Is it possible to solve USB Wifi adapter in SL using DSDT/ modified the Apple plist? My adapter was G-122 rev.C1 & WUSB54G v4. Thanks Maybe modifing the plist can help you. In dsdt you can only define onboard devices. But that's another discussion, out of the current topic. Please open a new one or write in the corresponding one about your problem. Link to comment Share on other sites More sharing options...
MrHanky Posted October 22, 2009 Share Posted October 22, 2009 I'm not an expert in dsdt, but i think that the power button can bring the menu only when running on a laptop. Glad it worked the fix. I've also changed AZAL with HDEF in you dsdt (purelly cosmetic) and fixed some warnings. No, it also works on normal computers. But that was my fault, wrong settings in BIOS for the power button. Anyways, thanks for your help. Link to comment Share on other sites More sharing options...
nissefar Posted October 27, 2009 Share Posted October 27, 2009 I have an IP35-e board, and I now have sleep almost working after applying the EHCI and UHCI fix. The system will completely power down and shut off all fans. However, when I try to wake up the system, it won't really wake up. The fan will just be going max speed, and the screen will be blank. Anyone know what the last thing is I'm missing? Thanks a lot, this thread rules. Link to comment Share on other sites More sharing options...
ApexDE Posted October 28, 2009 Share Posted October 28, 2009 Regarding wake-by-ehci Keyboard: I found out that some PCI Register entries aren't set correctly, but trying to write to them doesn't work (it should work) 17.1.25PWAKE_CAP—Port Wake Capability Register (USB EHCI—D29:F7, D26:F7) Address Offset: Default Value: Function Level Reset: 62–63h Attribute: R/W 01FFh Size: 16 bits No This register is in the suspend power well. The intended use of this register is to establish a policy about which ports are to be used for wake events. Bit positions 1– 8(D29) or 1–6(D26) in the mask correspond to a physical port implemented on the current EHCI controller. A 1 in a bit position indicates that a device connected below the port can be enabled as a wake-up device and the port may be enabled for disconnect/ connect or overcurrent events as wake-up events. This is an information-only mask register. The bits in this register do not affect the actual operation of the EHCI host controller. The system-specific policy can be established by BIOS initializing this register to a system-specific value. System software uses the information in this register when enabling devices and ports for remote wake-up. These bits are not reset by a D3-to-D0 warm rest or a core well reset. For me, i have 00 at Offset 63h. So writing FF to Offset 63h should enable all EHCI Devices to wake the System. You can view the registers with lspci -xxx. If there is anything other than FF at Offset 63 you can try to write the register with sudo setpci -s 00:1d.7 63.b=ff (for EHCI2) and sudo setpci -s 00:1a.7 63.b=ff (for EHCI1) But on my GA-EP45 i have strangely no write access to that registers, bug i suppose Link to comment Share on other sites More sharing options...
byally Posted November 8, 2009 Share Posted November 8, 2009 Hi guys! Just installed SL - everything works but sound and sleep. My MoBo is Asus P5E Deluxe. Can you please help me patch this dsdt file please. I got stuck with it! Many thanks! dsdt.aml.zip Link to comment Share on other sites More sharing options...
kizwan Posted November 8, 2009 Share Posted November 8, 2009 Hi guys! Just installed SL - everything works but sound and sleep. My MoBo is Asus P5E Deluxe. Can you please help me patch this dsdt file please. I got stuck with it! Many thanks! Find an application called DSDTSE at kexts dot com. Link to comment Share on other sites More sharing options...
oldnapalm Posted November 9, 2009 Share Posted November 9, 2009 Hi guys! Just installed SL - everything works but sound and sleep. My MoBo is Asus P5E Deluxe. Can you please help me patch this dsdt file please. I got stuck with it! Many thanks! Take a look at my dsdt.aml, it has fixes for audio (kext included), SpeedStep, sleep and AHCI SATA. My MoBo is an Asus P5E (not deluxe). dsdt.zip Link to comment Share on other sites More sharing options...
byally Posted November 9, 2009 Share Posted November 9, 2009 Take a look at my dsdt.aml, it has fixes for audio (kext included), SpeedStep, sleep and AHCI SATA.My MoBo is an Asus P5E (not deluxe). dsdt.zip Thank you. Well, I replaced my dsdt with your - and no boot. Then I realized that maybe I should just use some parts of code from it. Though I don't know what are these parts. Can you give me some hint? Link to comment Share on other sites More sharing options...
oldnapalm Posted November 9, 2009 Share Posted November 9, 2009 Thank you.Well, I replaced my dsdt with your - and no boot. Then I realized that maybe I should just use some parts of code from it. Though I don't know what are these parts. Can you give me some hint? Right, it won't boot if you just copy my DSDT, you have to copy only the additions in my file. To visualize it better, I suggest that you do a diff between my DSDT and yours, and open it in TextMate. In terminal: diff yourDSDT.dsl myDSDT.dsl > DSDT.diff dsdt.diff.zip Then you will copy only the parts that were added (without the ">" at the beggining), for example: 20a21,53 > Method (DTGP, 5, NotSerialized) > { > If (LEqual (Arg0, Buffer (0x10) > { > /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, > /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B > })) > { > If (LEqual (Arg1, One)) > { > If (LEqual (Arg2, Zero)) > { > Store (Buffer (One) > { > 0x03 > }, Arg4) > Return (One) > } > > If (LEqual (Arg2, One)) > { > Return (One) > } > } > } > > Store (Buffer (One) > { > 0x00 > }, Arg4) > Return (Zero) > } > and do nothing with the changed parts, you'll keep as it is in your file, for example: 25c58 < OperationRegion (STBL, SystemMemory, 0xCFF8E0D0, 0x01D2) --- > OperationRegion (STBL, SystemMemory, 0x7FF8E0D0, 0x01D2) also you won't remove de deleted parts, keep them in your file, example: 1238,1305d1413 < Name (PR05, Package (0x04) < { < Package (0x04) < { < 0xFFFF, < Zero, < LNKB, < Zero < }, < < Package (0x04) < { < 0xFFFF, < One, < LNKC, < Zero < }, < < Package (0x04) < { < 0xFFFF, < 0x02, < LNKD, < Zero < }, < < Package (0x04) < { < 0xFFFF, < 0x03, < LNKA, < Zero < } < }) < Name (AR05, Package (0x04) < { < Package (0x04) < { < 0xFFFF, < Zero, < Zero, < 0x11 < }, < < Package (0x04) < { < 0xFFFF, < One, < Zero, < 0x12 < }, < < Package (0x04) < { < 0xFFFF, < 0x02, < Zero, < 0x13 < }, < < Package (0x04) < { < 0xFFFF, < 0x03, < Zero, < 0x10 < } < }) except by these two, you will have to remove those IRQs if you have problems with sound 2049,2050d2156 < IRQNoFlags () < {2} 2111,2112d2216 < IRQNoFlags () < {0} With patching done, you will have to remove NullCPUPowerManagement.kext in order for sleep to work, because you need AppleIntelCPUPowerManagement.kext running. The SpeedStep patch should take care of the overheating issue. Use VoodooMonitor to check if it's working. Edit: try this P5E_Deluxe.zip remove NullCPUPowerManagement.kext and add AD1988b.kext to /Extra/Extensions Link to comment Share on other sites More sharing options...
MacKonsti Posted November 9, 2009 Share Posted November 9, 2009 you can fix those errors just adding this code to the scope _pr , and if you want to enable speedstep just change your mac model to macpro3,1 or mod the acpi_smc_platformplugin to match your smbios injection, of course EIST and C1E must be enable in bios External (PDC0) External (CFGD) Scope (_PR) { Processor (CPU0, 0x00, 0x00000410, 0x06) { Method (_CST, 0, NotSerialized) { If (LAnd (And (CFGD, 0x01000000), LNot (And (PDC0, 0x10 )))) { Return (Package (0x02) { One, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x00, // Bit Width 0x00, // Bit Offset 0x0000000000000000, // Address ,) }, One, 0x9D, 0x03E8 } }) } If (And (PDC0, 0x0300)) { If (And (CFGD, 0x20)) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address ,) }, One, One, 0x03E8 }, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000010, // Address ,) }, 0x02, One, 0x01F4 } }) } } If (And (CFGD, 0x20)) { Return (Package (0x03) { 0x02, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address ,) }, One, One, 0x03E8 }, Package (0x04) { ResourceTemplate () { Register (SystemIO, 0x08, // Bit Width 0x00, // Bit Offset 0x000000000000000C, // Address ,) }, 0x02, One, 0x01F4 } }) } Return (Package (0x02) { One, Package (0x04) { ResourceTemplate () { Register (FFixedHW, 0x01, // Bit Width 0x02, // Bit Offset 0x0000000000000000, // Address ,) }, One, One, 0x03E8 } }) } } Processor (CPU1, 0x01, 0x00000410, 0x06) { Method (_CST, 0, NotSerialized) { Return (^^CPU0._CST ()) } } Processor (CPU2, 0x02, 0x00000000, 0x00) { Method (_CST, 0, NotSerialized) { Return (^^CPU0._CST ()) } } Processor (CPU3, 0x03, 0x00000410, 0x06) { Method (_CST, 0, NotSerialized) { Return (^^CPU0._CST ()) } } } Dear roisoft, I just need to solve the "_CST evaluation failed" error when booting Snow Leopard 10.6.1 (and soon 10.6.2). Is it safe to just add the code suggested by you earlier? Is it generic, just to trick the error? Is it safe and will NOT damage the CPU/mainboard? Does this code contain cpu-model-specific values? Personally, I am not insterested in SpeedStepping and SSDTs since they require a lot of reading on time that I don't have free, anymore Plus, I don't overclock the mobo... Thank you in advance for your time. Link to comment Share on other sites More sharing options...
byally Posted November 10, 2009 Share Posted November 10, 2009 Right, it won't boot if you just copy my DSDT, you have to copy only the additions in my file. To visualize it better, I suggest that you do a diff between my DSDT and yours, and open it in TextMate. In terminal: diff yourDSDT.dsl myDSDT.dsl > DSDT.diff dsdt.diff.zip Then you will copy only the parts that were added (without the ">" at the beggining), for example: 20a21,53 > Method (DTGP, 5, NotSerialized) > { > If (LEqual (Arg0, Buffer (0x10) > { > /* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44, > /* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B > })) > { > If (LEqual (Arg1, One)) > { > If (LEqual (Arg2, Zero)) > { > Store (Buffer (One) > { > 0x03 > }, Arg4) > Return (One) > } > > If (LEqual (Arg2, One)) > { > Return (One) > } > } > } > > Store (Buffer (One) > { > 0x00 > }, Arg4) > Return (Zero) > } > and do nothing with the changed parts, you'll keep as it is in your file, for example: 25c58 < OperationRegion (STBL, SystemMemory, 0xCFF8E0D0, 0x01D2) --- > OperationRegion (STBL, SystemMemory, 0x7FF8E0D0, 0x01D2) also you won't remove de deleted parts, keep them in your file, example: 1238,1305d1413 < Name (PR05, Package (0x04) < { < Package (0x04) < { < 0xFFFF, < Zero, < LNKB, < Zero < }, < < Package (0x04) < { < 0xFFFF, < One, < LNKC, < Zero < }, < < Package (0x04) < { < 0xFFFF, < 0x02, < LNKD, < Zero < }, < < Package (0x04) < { < 0xFFFF, < 0x03, < LNKA, < Zero < } < }) < Name (AR05, Package (0x04) < { < Package (0x04) < { < 0xFFFF, < Zero, < Zero, < 0x11 < }, < < Package (0x04) < { < 0xFFFF, < One, < Zero, < 0x12 < }, < < Package (0x04) < { < 0xFFFF, < 0x02, < Zero, < 0x13 < }, < < Package (0x04) < { < 0xFFFF, < 0x03, < Zero, < 0x10 < } < }) except by these two, you will have to remove those IRQs if you have problems with sound 2049,2050d2156 < IRQNoFlags () < {2} 2111,2112d2216 < IRQNoFlags () < {0} With patching done, you will have to remove NullCPUPowerManagement.kext in order for sleep to work, because you need AppleIntelCPUPowerManagement.kext running. The SpeedStep patch should take care of the overheating issue. Use VoodooMonitor to check if it's working. Edit: try this P5E_Deluxe.zip remove NullCPUPowerManagement.kext and add AD1988b.kext to /Extra/Extensions Hey! Oldnapalm! Many Thanks! It WORKS! Thank you very much! Sleep and audio - working. And small question - how can I check that SpeedStep is working? And also is it possible to enable deepsleep in SnowLeo? Link to comment Share on other sites More sharing options...
oldnapalm Posted November 10, 2009 Share Posted November 10, 2009 Hey! Oldnapalm! Many Thanks!It WORKS! Thank you very much! Sleep and audio - working. And small question - how can I check that SpeedStep is working? And also is it possible to enable deepsleep in SnowLeo? You're welcome. Use VoodooMonitor to check SpeedStep. Sorry, I don't know about deepsleep. Link to comment Share on other sites More sharing options...
Bruce Wang Posted November 18, 2009 Share Posted November 18, 2009 UHCI 1: 1D 2934UHCI 2: 1D,1 2935 UHCI 3: 1D,2 2936 UHCI 4: 1A 2937 UHCI 5: 1A,1 2938 UHCI 6: 1A,2 2939 Mine is ICH9M, instead of above configuration, I have UHCI 1: 1D 2934 UHCI 2: 1D,1 2935 UHCI 3: 1D,2 2936 UHCI 4: 1A 2937 UHCI 5: 1A,1 2938 UHCI 6: 1D,3 2939 After applied the trick, 5 out of 6 worked, UHCI6 still remained as "Expansion Slot". I think the problem is "1D,3", anyone knows how to fix it? UHCIreset or USBBusFix in Chameleon doesn't work. To sleep, the only option I can have now is the patched IOUSBFamily.kext from Slice. DSDT.dsl.zip Link to comment Share on other sites More sharing options...
MacKonsti Posted November 19, 2009 Share Posted November 19, 2009 Guys, I have two simple questions that I request your attention to... (1) I have added the following code in my DSDT within Device (IDE1) in order for my mobo (Shuttle SG31G2 with ICH7) to display the SATA channels properly in "System Profiler" but upon rebooting, I get kernel panics in both 32 and 64 bit... So my question is, what is the code/ID for ICH7? Without any hack, I get a blank controller line with my SATA SDD and DVD-R... (...) FAS0, 2, FAS1, 2 } Method (_DSM, 4, NotSerialized) // Added for ICH7 SATA controller detection { Store (Package (0x02) { "device-id", Buffer (0x04) { 0x81, 0x26, 0x00, 0x00 // 0x22, 0x3A, 0x00, 0x00 // Or is it this? } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } Device (PRIM) { (...) (2) Secondly, with only two modifications in my DSDT (adding the DTGP method and doing a code-fix for the USBE device to be detected as EHCI) my sleep works well. The mobo wakes up via the USB keyboard and I don't have any USB devices lost upon wake (I admit I don't sleep and wake too many times in a row). So what is the benefit of adding the code in USB0 to USB3 of my DSDT? Device (USB0) { Name (_ADR, 0x001D0000) Method (_S3D, 0, NotSerialized) { If (LEqual (OSFL, 0x02)) { Return (0x02) } Return (0x03) } Method (_DSM, 4, NotSerialized) // Added method for UHCI identification { 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 // Value was 0x01 }) } When I run the DSDT SE tool and then IORegExplorer, when I search for either "UHCI" or "USB" I get the same results, nothing really has changed. So adding the Method (_DSM, 4, NotSerialized) above, what does it really serve? Many thanks. Link to comment Share on other sites More sharing options...
MacKonsti Posted November 25, 2009 Share Posted November 25, 2009 Guys, I would really appreciate your help on this one... I have a Shuttle XPC SG31G2 with ICH7 chipset and Snow 10.6.2. In System Profiler, there's no indication of the SATA controller on which I've attached the SATA drive and DVD-ROM, despite the devices being shown OK. So I added this code in my DSDT (within device IDE1 and before PRIM) where, according to lspci, the SATA controller is at address 0x001F0002: Device (IDE1) // Intel Corporation 82801GB/GR/GH (ICH7 Family) SATA IDE Controller { Name (_ADR, [b]0x001F0002[/b]) <--- the address of SATA according to [b]lspci[/b] [blah blah] [b]Method (_DSM, 4, NotSerialized) // Added method for AppleIntelPIIXATA.kext detection[/b] { Store (Package (0x02) { "device-id", Buffer (0x04) { 0xC0, 0x27, 0x00, 0x00 // Needed device ID is [27C0] } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } Device (PRIM) { [code continues] I checked inside AppleIntelPIIXATA.kext's Info.plist that ICH7 must have device-id 0x27C08086 to be detected. This kext loads (confirmed via kextstat) Profiler doesn't seem to display the controller string. Am I doing something wrong, here? Should I enter the whole 0x27C08086 id in the DSDT code? Thanks in advance....! Link to comment Share on other sites More sharing options...
Goron Posted November 25, 2009 Share Posted November 25, 2009 Thanks for sharing this great guide!!! Now even sleep works perfectly in Snow. Cheers Goron Link to comment Share on other sites More sharing options...
Datoshing Posted November 25, 2009 Share Posted November 25, 2009 Hello there, I install SL and everything works fine except sleep (I fixed my audio using dsdt patch). I have the infamous problem where the computer won't fully go to sleep. I tried your dsdt patching and it didn't work, but since I don't understand what is really going on I might have made some mistakes. Would anyone please take a look at my dsdt file and tell me what I did wrong? Thanks in advance dsdt.aml.zip Link to comment Share on other sites More sharing options...
Goron Posted November 26, 2009 Share Posted November 26, 2009 @Datoshing: Just tried to compile your DSDT-> ASL Input: /Library/DSDT/DSDTFiles/dsdt.dsl - 10880 lines, 358842 bytes, 5429 keywords AML Output: /Library/DSDT/DSDTFiles/./dsdt.aml - 41678 bytes, 1132 named objects, 4297 executable opcodes Compilation complete. 0 Errors, 6 Warnings, 0 Remarks, 53 Optimizations Have you tried fixing the warnings? Also i can´t find: OperationRegion (BAR0, PCI_Config, 0xC4, One) Field (BAR0, ByteAcc, NoLock, Preserve) in my DSDT USB sections, so i can´t tell if there persists a problem, too. Goron Link to comment Share on other sites More sharing options...
YoMuS Posted November 27, 2009 Share Posted November 27, 2009 Hello! I have a quick question... I know that this "00:1b.0 Audio device" corresponds to "Name (_ADR, 0x001B0000)", but, which _ADR might these be? 01:09.0 FireWire (IEEE 1394) 01:0a.0 Network controller 02:00.0 Ethernet controller 04:00.0 VGA compatible controller Also... under IORegistryExplorer, my wifi card and my firewire card appear under P0P3@1E device tree, so if I wanted to hack something under DSDT, I should put the Device(FRWR) inside the Device (P0P3) with their correct _ADR, shouldn't I? Thanks in advance Link to comment Share on other sites More sharing options...
Datoshing Posted November 28, 2009 Share Posted November 28, 2009 For all you guys who have problem with automatic sleep: Get this software called PleaseSleep: http://www.dragonone.com/products/macosx/pleasesleep/ Now automatic sleep works too Link to comment Share on other sites More sharing options...
kidamnesiac Posted December 1, 2009 Share Posted December 1, 2009 Hi all, first thanks for this amazing dsdt device id injection thing now the question: i'm on a laptop with ich9-M intel chipset [8086:2929] currently using AHCIPortInjector.kext IOAHCIBlockStorageInjector.kext I'm planning to inject 2929 through SAT0 device with DSDT but my point is i've got an external serial ata port in which i'd like the hot plug capability to work (orange icon) is this even possible? removing the blockstorage kext just puts all drives on "orange icons" instead i'd like to have only the e-sata plugged drives with that icon thank you kind regards kidA addendum tried to add my ich9-m device id 2929 through dsdt in the Device (SAT0) section, all works without AHCIPortInjector.kext but now system profiler reports Unknown AHCI Standard Controller how do i fix that, is this a bad sign? thank you all Link to comment Share on other sites More sharing options...
Recommended Posts