Help - Search - Members - Calendar
Full Version: Natit, Chameleon et DSDT
InsanelyMac Forum > OSx86 Project > Your Language > Français
phoenix73
Salut à tous,

J'ai une configuration 10.5.8 fonctionnelle sur un D630 et j'avais utilisé le kext Natit pour avoir le support du chip graphique Nvidia NVS135M.

Le problème est que Natit empêche le fonctionnement correct du restart/shutdown et ce avec ou sans le kext OpenHaltRestart.

Comme j'ai mis le GraphicEnabled dans le com.apple...plist via Chameleon, j'ai fait un essai en retirant Natit et plus de soucis de restart/shutdownmais une résolution en 1024*768 (au lieu de 1400*900) et sans support d'accélération.

Est-ce qu'il faut en passer par le DSDT ou par d'autres techniques ?

Merci d'avance de vos conseils avisés
coucou
oui, et ensuite tu vires les natit et autre trucs

voir mon post DSDt
phoenix73
J'ai déjà un DSDT.aml mais produit depuis OS/X (car mon D630 ne me permet pas d'avoir un BIOS ROM ;()

Il faut que j'en extrais un depuis Linux et sa table ACPI pour vérifier smile.gif
coucou
c un essai qui pourrai nous aider à comparer avec un DSDT fait sous OS X ayant booté SANS le dsdt.aml

sur os x tu doit créer (modifier) le DSDT (Patcher gui 1.0.e) sans avoir chargé ton DSDT.aml sinon tu influences celui que tu es en train de créer
phoenix73
Je viens de vérifier et pour mon Dell D630, le DSDT est identique qu'il soit pris depuis OS/X ou Ubuntu Live.
Je vérifierais sur ma P5K
coucou
genial , c une bonne info. (ca regle ton soucis de bios non fourni)

et dans quelle condition a tu extrait le dsdt.dat sous OS X ?
phoenix73
QUOTE (coucou @ Sep 4 2009, 12:34 PM) *
genial , c une bonne info. (ca regle ton soucis de bios non fourni)

et dans quelle condition a tu extrait le dsdt.dat sous OS X ?


Avec le script getDSDT des DSDT Tools.

Je suis en train de regardert DSDTSimple 1.2.1 (qui vient de sortir) et j'essaie de voir pour ma carte.

Dans le DSL je vois :

Device (AGP)
{
Name (_ADR, 0x00010000)
Device (VID)
{
Name (_ADR, Zero)
Method (_DOS, 1, NotSerialized)
{
Store (Arg0, MIS4)
SMI (0x9E, MIS4)
}

Method (_DOD, 0, NotSerialized)
{
Store (SMI (0x6D, Zero), Local0)
If (LEqual (Local0, One))
{
Return (Package (0x04)
{
0x00010100,
0x00010200,
0x00010110,
0x00010210
})
}
Else
{
Return (Package (0x04)
{
0x00010100,
0x00010200,
0x00010118,
0x00010120
})
}
}


Dans le patch LAPTOP on parle de mettre :
Device (AGP)
{
Name (_ADR, 0x00010000)
Device (GFX0) /* <-------------------------- Hack Begins */
{
Name (_ADR, Zero)
Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x1A)
{
"@0,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},

"@0,device_type",
Buffer (0x08)
{
"display"
},

"@0,name",
Buffer (0x0F)
{
"NVDA,Display-A"
},

"@1,compatible",
Buffer (0x0B)
{
"NVDA,NVMac"
},

"@1,device_type",
Buffer (0x08)
{
"display"
},

"@1,name",
Buffer (0x0F)
{
"NVDA,Display-B"
},

"NVCAP",
Buffer (0x18)
{
/* 0000 */ 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00,
/* 0008 */ 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},

"NVPM",
Buffer (0x20)
{
/* 0000 */ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0018 */ 0x00, 0x00, 0x00, 0x00
},

"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x20 /*<----------- Ram Amount: 0x40 = 1024mb, 0x20= 512mb, 0x10= 256mb */
},

"device_type",
Buffer (0x0D)
{
"NVDA,GeForce"
},

"model",
Buffer ()
{
"Nvidia GeForce 8600M GS 256 MB"
},

"rom-revision",
Buffer (0x20)
{
"DSDT ROM v.1a #irc.osx86.es ©"
},

"reg",
Buffer (0x78)
{
/* 0000 */ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0008 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0010 */ 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x01, 0x02,
/* 0018 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0020 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
/* 0028 */ 0x14, 0x00, 0x01, 0x42, 0x00, 0x00, 0x00, 0x00,
/* 0030 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0038 */ 0x00, 0x00, 0x00, 0x10, 0x1C, 0x00, 0x01, 0x02,
/* 0040 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0048 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02,
/* 0050 */ 0x24, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
/* 0058 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0060 */ 0x80, 0x00, 0x00, 0x00, 0x30, 0x00, 0x01, 0x02,
/* 0068 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
/* 0070 */ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}

Question :

On insère donc un Device GFX juste devant le VID ?

Et il faut aussi avant inscrire la fonction DTGP non ?

(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)
}

Merci de vos conseils
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.