Jump to content
5 posts in this topic

Recommended Posts

Hi. First of all, you need to understand how this works.

 

The point of start is from IORegistryExplorer, which is your best friend, because it is a Map or tree of devices:

Captura de pantalla 2013-09-20 a la(s) 13.22.39.png

Then, go to your DSDT, and add all the code injection in the right place (the main reference is the Address = _ADR):

Captura de pantalla 2013-09-20 a la(s) 13.21.21.png

Good Luck.

hi Juanerson,

could you do me a practical example?
I have to put this code? from where to where? What should I replace?

 

Device (GFX0) /**  for Nvidia Fermi Graphics Cards  **/
{
Name (_ADR, Zero)
Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x1E)
{
“AAPL,slot-name”,
“PCI x16″,
“@0,compatible”,
Buffer (0x0B)
{
“NVDA,NVMac”
},
“@0,connector-type”,
Buffer (0×04)
{
0×00, 0×08, 0×00, 0×00
},
“@0,device_type”,
Buffer (0×08)
{
“display”
},
“@0,name”,
Buffer (0x0F)
{
“NVDA,Display-A”
},
“@1,compatible”,
Buffer (0x0B)
{
“NVDA,NVMac”
},
“@1,connector-type”,
Buffer (0×04)
{
0×00, 0×08, 0×00, 0×00
},
“@1,device_type”,
Buffer (0×08)
{
“display”
},
“@1,name”,
Buffer (0x0F)
{
“NVDA,Display-B”
},
“NVCAP”,
Buffer (0×18)
{
/* 0000 */   0×04, 0×00, 0×00, 0×00, 0×00, 0×00, 0×03, 0×00,
/* 0008 */   0x0C, 0×00, 0×00, 0×00, 0×00, 0×00, 0×00, 0x0A,
/* 0010 */   0×00, 0×00, 0×00, 0×00
},
“VRAM,totalsize”,
Buffer (0×04)
{
0×00, 0×00, 0×00, 0xc0
},
“device_type”,
Buffer (0x0C)
{
“NVDA,Parent”
},
“model”,
Buffer (0×10)
{
“GeForce GTX 580″
},
“rom-revision”,
Buffer (0x1D)
{
“nVidia GTX 580 OpenGL Engine”
},
“hda-gfx”,
Buffer (0x0A)
{
“onboard-1″
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
Device (HDAU)
{
Name (_ADR, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0×02)
{
“hda-gfx”,
Buffer (0x0A)
{
“onboard-1″
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}

OK, I did some work to your DSDT for better compatibility, fixed the factory errors, renamed the graphic device to GFX0 and all his declarations, etc. Now is clean. The right place for the graphic injection is there.

 

The injection code is for to work. Just find the correct code for your Graphic card, make the changes, and compile the file.

 
This dsdt.dsl is the base for future editions, your own changes, because have more information and commentaries.
 All you need to start is there.. Good Luck.

fixed dsdt for to work.zip

×
×
  • Create New...