nvflash Posted August 19, 2014 Posted August 19, 2014 My IGPU reads like this: Device (IXVE) { Name (_ADR, 0x00100000) Device (IGPU) { Name (_ADR, Zero) Scope (^^^PCI0) { OperationRegion (HDCP, SystemMemory, AMEM, 0x0600) Field (HDCP, AnyAcc, NoLock, Preserve) { SIGN, 48, CHKS, 8, RESR, 8, GLOB, 4800 } } Name (ERR0, Buffer (0x04) { 0x00, 0x00, 0x00, 0x00 }) Name (ERR1, Buffer (0x04) { 0x01, 0x00, 0x00, 0x80 }) Name (VER1, Buffer (0x04) { 0x01, 0x00, 0x00, 0x00 }) Method (NVIF, 3, NotSerialized) { Store (ERR1, Local0) If (LEqual (Arg0, One)) { Concatenate (ERR0, VER1, Local0) } Else { If (LEqual (Arg0, 0x0C)) { If (LEqual (Arg1, Zero)) { Store (ERR0, Local0) } Else { If (LEqual (Arg1, One)) { Store (GLOB, Local1) Concatenate (ERR0, Local1, Local0) } } } Else { If (LEqual (Arg0, 0x0D)) { If (LEqual (Arg1, Zero)) { Store (ERR0, Local0) } Else { If (LEqual (Arg1, 0x02)) { Store (NVF2 (), Local0) } } } } } Return (Local0) } And I'm trying to add a _DSM Method that looks like this: Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) } Return (Package() { "@0,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 }, "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 }, "@2,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 }, "@3,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 }, "hda-gfx", Buffer() { "onboard-1" }, }) } Everything I try comes back errors, could someone show me how this can be done, please?
artur-pt Posted August 19, 2014 Posted August 19, 2014 hello u post all patch .. that u post no make any sense and usually is insert after gfx0 device good hack PB Easy Note TM 86 - i5 430 M - H55M - Ram - 6 GB - Alc272 - Radeon HD 5470 512 QE/CI Lenovo G500 - i5 3230m - HM77 - Ram - 8 GB - Conexant audio - HD 4000 My OS X Files
nvflash Posted August 19, 2014 Author Posted August 19, 2014 The patch is for the _DSM with the parent_adr 0x00100000. As you can see Device (IXVE) has a _ADR of 0x00100000. It doesn't matter if I rename IGPU to GFX0 and I don't need the HDAU device. I only need the "connector-type" properties and the "hda-gfx" to show up in the device tree in the IOReg. # 4. Insert device GFX0 and device HDAU (Nvidia/AMD HDMI audio) into method label _DSM parent_adr 0x00100000 remove_entry; into device name_adr 0x00010000 insert begin Device (GFX0)\n {\n Name (_ADR, Zero)\n Name (_SUN, One)\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n Return (Package()\n {\n "@0,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@2,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@3,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "hda-gfx", Buffer() { "onboard-2" },\n })\n }\n }\n Device (HDAU)\n {\n Name (_ADR, One)\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n Return (Package()\n {\n "hda-gfx", Buffer() { "onboard-2" },\n })\n }\n }\n end; Here's how I'm doing it now: Device (PEGP) { Name (_ADR, 0x00100000) Name (_PRW, Package (0x02) { 0x09, 0x05 }) Device (GFX0) { Name (_ADR, Zero) Name (_SUN, One) Method (_DSM, 4, NotSerialized) { Store (Package (0x22) { "AAPL,slot-name", "PCI x16", "@0,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@0,connector-type", Buffer (0x04) { 0x00, 0x08, 0x00, 0x00 }, "@0,device_type", Buffer (0x08) { "display" }, "@0,name", Buffer (0x0F) { "NVDA,Display-A" }, "@1,compatible", Buffer (0x0B) { "NVDA,NVMac" }, "@1,audio-codec-index", Buffer (0x04) { 0x03, 0x00, 0x00, 0x00 }, "@1,av-signal-type", Buffer (0x04) { 0x08, 0x00, 0x00, 0x00 }, "@1,connector-type", Buffer (0x04) { 0x00, 0x08, 0x00, 0x00 }, "@1,device_type", Buffer (0x08) { "display" }, "@1,name", Buffer (0x0F) { "NVDA,Display-B" }, "NVCAP", Buffer (0x18) { /* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, /* 0008 */ 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, /* 0010 */ 0x00, 0x00, 0x00, 0x00 }, "VRAM,totalsize", Buffer (0x04) { 0x00, 0x00, 0x00, 0x40 }, "device_type", Buffer (0x0C) { "NVDA,Parent" }, "model", Buffer (0x14) { "nNidia GeForce 9300" }, "rom-revision", Buffer (0x0F) { "70.08.29.00.30" }, "hda-gfx", Buffer (0x0A) { "onboard-1" } }, Local0) DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0)) Return (Local0) } } } But this gives me two Devices with the same _ADR (PEGP) and (IXVE) in my DSDT.
pernacabeluda Posted August 19, 2014 Posted August 19, 2014 Attach your DSDT and ioreg dump. -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
pernacabeluda Posted August 20, 2014 Posted August 20, 2014 Please attach the files before applying the patch. I don't know what is original and what you inserted. -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
nvflash Posted August 20, 2014 Author Posted August 20, 2014 Sorry, ok try this, I used the oldest Modded DSDT I had, then I booted without one and use the bios DSDT. Hope that helps. It's too big for one post so here's the Mod. MOD_DSDT.zip
nvflash Posted August 20, 2014 Author Posted August 20, 2014 ....And here's the original. Original_DSDT.zip
pernacabeluda Posted August 20, 2014 Posted August 20, 2014 For what I understand you should replace original method _DSM in IGPU and add device HDAU, don't add devices PEGP and GFX0. The correct patch would be into method label _DSM parent_label IGPU remove_entry; into device label IGPU parent_adr 0x00100000 insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n Return (Package()\n {\n "@0,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@2,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@3,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "hda-gfx", Buffer() { "onboard-2" },\n })\n }\n end; into device name_adr 0x00100000 insert begin Device (HDAU)\n {\n Name (_ADR, One)\n Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n Return (Package()\n {\n "hda-gfx", Buffer() { "onboard-2" },\n })\n }\n }\n end; DSDT.aml.zip -Guides and Tutorials HERE -Hackintosh Tutorial Database - HERE -The largest EFI folder collection for Hackintosh HERE -Support Olarila Vanilla Hackintosh by making a donation HERE -Professional Consulting for macOS Hackintosh since 2006 HERE
nvflash Posted August 20, 2014 Author Posted August 20, 2014 Thanks. I only needed this part of the patch: into method label _DSM parent_label IGPU remove_entry; into device label IGPU parent_adr 0x00100000 insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n Return (Package()\n {\n "@0,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@2,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@3,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "hda-gfx", Buffer() { "onboard-2" },\n })\n }\n end; It worked, somewhat, but for some reason the Drivers did not load the "Audio-Codec-Info" so I didn't get any codec loaded for my 10de,0007 HDMI Device, but your patch did show me where to insert my code, that I was using before, so now I only have one Device at _ADR 0x00100000, and that was the point. Thanks so much.
nvflash Posted August 20, 2014 Author Posted August 20, 2014 I fooled with it a little more and came up with this: into method label _DSM parent_label IGPU remove_entry; into device label IGPU parent_adr 0x00100000 insert begin Method (_DSM, 4, NotSerialized)\n {\n If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n Return (Package()\n {\n "@0,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@1,connector-type", Buffer() { 0x00, 0x08, 0x00, 0x00 },\n "@1,audio-codec-index", Buffer() { 0x03, 0x00, 0x00, 0x00 },\n "@1,av-signal-type", Buffer() { 0x08, 0x00, 0x00, 0x00 },\n "hda-gfx", Buffer() { "onboard-1" },\n })\n }\n end; That patch works with GraphicsEnabler=Yes. Thanks for all the help.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now