coucou
Aug 30 2009, 07:43 AM
DSDT, Comment créer le votre ... facilement
Tuto pour pour leopard 10.5.8, à vos risques et périls
UPDATE : DSDT SE mis à jour en Anglais (news Phoenix73) => A TESTER donc.
(Pour SL il doit fonctionner mais je n'ai pas testé, de plus je préfère attendre les versions 10.6.2 ou 3 pour laisser Apple corriger ses propres gros bugs ...lol voir
ICI )
AVANT DE COMMENCER VOS MANIP : SAUVEGARDE, SAUVEGARDE .. et SAUVEGARDE des données.
Ce tutoriel va vous permettre de finaliser une installation RETAIL, que votre PC soit destiné à être un Léopard client ou serveur (Léopard OS X).
Pour cela nous utiliserons la technique du DSDT : qui consiste à se fabriquer son propre fichier dsdt.aml en fonction de sa carte mére.
En gros nous allons faire apprendre à OS X votre cartographie matériel en s'appuyant sur votre BIOS puis en stockant ses infos dans un fichier : dsdt.aml.
En fait une fois votre système os x installé sur votre PC vous allez devoir garnir l'arborescence comme suit afin de disposer d'un hack 100% opérationnel sans le moindre ajout de pilote de carte graphique, réseau etc. Tout au plus un kext pour le son.
Rappel : avec l'installation du bootloader Chameleon RC2 tout le hack est localisé sous /Extra (ou dans les 200Mo FAT32 de la partition EFI crée sur le volume de boot)

<Merci proxy32s>
L'installation de Chameleon RC2 fournit tout les fichiers ci-dessus hormis :
- dsdt.aml (qui est propre à votre carte mère)
- LegacyHDA.kext (le son)
- smbios.plist (affichage des infos de votre matériel pour mac os )
Nous allons donc voir comment créer ce fichier dsdt.aml
Il existe, à ma connaissance, les outils graphiques suivants :
... et les outils textes suivants :
- iasl
- vi, smultron, TextEdit ...
J'ai aperçu plusieurs méthodes pour fabriquer un dsdt.aml. Je vais vous expliquer mon choix et celle qui me parait la plus robuste à l'heure actuelle.
Pour la théorie sur le DSDT je vous invite à lire, par la suite, ces trois articles :
je me suis aperçu que fabriquer un dsdt.aml sous os x peut être sujet à plusieurs erreurs due à :
- l'influence des IOReg (cartographie du matériel sous OS X, une sorte de base de registre du matériel à la Apple)
- la présence ou non de hack précédents (suivant comment vous avez installé votre os x avec lequel vous créerez votre dsdt)
- la méconnaissance du débutant en voulant se lancer dans le patching DSDT (je sais de quoi je cause la ;-) )
Pour cela j'ai écarté les méthodes sous OS X et je me suis dit que la plus fiable, car non influencé par os x et sa découverte du matos, serait de travailler directement sur le BIOS du fabricant : chose possible et conseillé avec le patcher de koalala.
Pour ce faire munissez vous :
- du fichier BIOS de votre carte mère (celui qui est dans la ROM de votre carte mère bien sure) car nous fabriquerons notre dsdt.aml directement à partir de lui sans la moindre influence de OS X ou WINDOWS
- du logiciel de koalala OSX DSDT Patcher ou ACPI Patcher(by koalala)
- Lancer Windows et lancer ACPIPAtcher.exe
- TODO : manipulation sous WINDOWS => en attendant lisez ce tuto ou celui ci
- TODO : ou pourrais-je trouver l'explication de toutes les options de l'outils de koalala ?
- ............. TO BE CONTINUED SOON
Note importante : A aucun moment nous flasherons le bios de votre carte mère !!! (heureusement d'ailleurs ..... ;-) )
Avec l'expérience et la connaissance des DSDT il est vrai que faire son "dsdt.aml" en mode texte, notamment au niveau de la maîtrise de l'édition du code, est beaucoup plus propre et pédagogique qu'avec un outil graphique dont on ne sait pas ou et comment il modifie le code .... c'est une évidence. (les codeurs ne me contredirons pas)
Mais pour un débutant ou personne qui veut juste un résultat ... rapide, OSX DSDT Patcher ou ACPI Patcher de koalala EST LA SOLUTION.
MAINTENANT ...
VOUS POUVEZ PLACER VOTRE dsdt.aml sous
/Volumes/<Disque_cible>/Extra/Note : Pour vérifier et uniquement pour la vérification que votre dsdt.aml est opérationnel vous pouvez virer le
Disabler.kext de /Volumes/<Disque_cible>/Extra/Extensions.
Vous pouvez REBOOTER, en ayant préalablement pris soin de cloner votre installation d' OS X précédente (fonctionnelle donc) avec un Carbon Copy Cloner afin de pouvoir rebooter sur ce backup en cas de problème avec votre dsdt.aml (ou tout autres soucis)
Guide avancé (mode TEXTE):
Maintenant si vous voulez exactement maîtriser le contenu de votre fichier dsdt.aml.
Télécharger les outils nécessaires
iciEt ouvrez un terminal, puis :
- Vous obtiendrez votre dsdt.dat avec :
CODE
getDSDT.sh
(une extraction pure de votre IOReg os x, à faire sans dstd.aml présent au boot bien sure) - Puis vous le dé-compilerez en dsdt.dsl avec :
CODE
iasl -d
- Puis vous pourrez utiliser un des éditeurs de textes cités ci-dessus pour modifier votre dsdt.dsl et ajoutés les "fix" et "hack" (ici : http://www.infinitemac.com/f84/various-dsdt-mods-t1960/)
- Enfin vous recompilerez votre dsdt.dsl avec :
CODE
iasl -ta
pour obtenir votre dsdt.aml
Pour vous aider en mode texte lisez ces deux tutos :
INSTALLATION OS X RETAIL (de base)-->>
=======================================================================
Maintenant vous pouvez commencez une installation typique de Léopard (contrib. proxs32) :
Note : Pour plus de détail sur cette partie il y a des tuto partout :
- Installez Leopard (avec un vieux kalyway ou autre) même si le réseau, le son, ou le gfx ne fonctionne pas sur un disque
dur dédié pour votre installation (ou utilisez utilisez un ordinateur faisant déja tourné os X ) - Munissez vous de votre dsdt.aml créé ci-dessus.
- Mettez le dvd Mac OS X RETAIL dans le lecteur et Installez sur un(e) autre disque/partition avec la commande :
CODE
open /Volumes/Mac\ OS\ X\ Install\ DVD/System/Installation/Packages/OSInstall.mpkg
- On suit l'assistant du disque et on installe sur le disque cible
- Une fois l'installation sur le disque terminé, appliquez la dernière combo update (téléchargeable chez Apple) sur le disque cible
- Installez Chameleon 2.0 RC2 sur le disque/partition cible avec les "options" cochées, le reste par défaut.
- Ensuite on rajoute les bons kext dans /Volumes/<Disque_cible>/Extra/Extensions
En principe sur du chipset P35/P45 avec vos disques SATA en mode AHCI (voir config du BIOS) il faut seulement :
- dsmos.kext ou fakesmc(décrypteur)
- openHaltRestart (corrige els problèmes d'arrêt/redémarrage/veille
- JMicronATAInjector (facultatif)
- ATAPortInjector (facultatif)
- AHCIPortInjector (facultatif)
- IOAHCIBlockStorageInjector (corrige les icones oranges)
- Création d'un nouveau "Extensions.mkext" dans /Volumes/<Disque_cible>/Extra/ avec
CODE
sudo chown -R 0:0 /Volumes/<Disque_cible>/Extra/
sudo chmod -R 755 /Volumes/<Disque_cible>/Extra/
sudo kextcache -a i386 -m /Volumes/<Disque_cible>/Extra/Extensions.mkext /Volumes/<Disque_cible>/Extra/Extensions
Crédits : Ce tuto est issue du boulot de toute l'équipe trauma, sabrina13, proxys32, darwinx86.org et bien sure les dev. osx86 qui fournissent le code et le temps
coucou
Aug 30 2009, 10:18 AM
merci proxy32s,
serveur ou pas le hack est idem, en fait la version rajoute quelques package et c tout (6 ou 7 au plus )
Mon ce qui me pése c ce foutu DSDT, je veux faire celuide ma GA-EP35-DS3R BIOS F4.
Le problème c que je ne sais pas du tout de quoi partir . je m'explique.
sur ce PC je n'ai aucune installation de windows donc ... pour l'outil de kooaalla c grillé.
Par contre j'ai bien compris le concept : je doit extraire mes tables ACPI via iasl et faire des modifications "savantes" ca aucun soucis MAIS
d'ou dois-je les extraire ?
- en bootant sur un live cd linux (ubuntu ? en 32 bits 64 bits ?) puis en faisant le cat /proc etc ......
- à partir de mon cd de boot DFE 123 qui me permet de booter sur mon retail os server 10.5.0 (sachant qu'avec ce boot , j'ai la video nickel , le reseau apparement bien .... )
- à partir d'un boot via chameleon RC2 sous os x server 10.5.8 MAIS qui n'a pas le gfx , le reseau bancale .... ok etc ....
Enfin bref c ultra la jungle.
le problème c'est qu'on ne sait pas exactement à partir de quel état on doit importer ses tables ACPI ..... (DSDT)
leur modification semble aussi assez savantes ....
Autre truc chez moi le fait d'installer chameleon avec les enablers GFX (je coche l'option) ne change rien ..... a quel endroit cela joue ?
voila mon dossier de hack :
http://www.mediafire.com/?sharekey=9338b16...be6ba49b5870170Pareil je ne sais pas comment activer ma carte graphique avec le DSDT ....
j'ai cru comprendre qu'il y a un rapport étroit entre ioreg ... qui liste le matos et le fichier DSDT ....
proxys32
Aug 30 2009, 12:45 PM
QUOTE
- à partir d'un boot via chameleon RC2 sous os x server 10.5.8 MAIS qui n'a pas le gfx , le reseau bancale .... ok etc ....
Peu importe si le reseau ou la gfx ne fonctionne pas tu peux le modifier manuellement a posteriori.
J'ai fais mon premier dsdt à partir d'une installation de kalyway 10.5.2.
Je suis en train de regarder ton dsdt. Dedans il n'y a effectivement ni l'audio, ni l'ethernet ni la carte graphique.
Ton dsdt de p35ds3 est d'ailleurs très similaire au mien.
As tu généré ton dsdt à partir de mac os x et avec la dernière version de dsdt patcher gui ? ?
QUOTE (coucou @ Aug 30 2009, 01:20 PM)

Je suis en train de synthétiser toutes les infos pour fournir une aide détaillée pour tous, visiblement il faut balancer ces portions de codes
http://www.infinitemac.com/f84/various-dsdt-mods-t1960/ dans le DSDT decompiler (mode texte)
Oui c'est comme cela que ca fonctionne
Par exemple pour injecter ta carte graphique il juste copier
CODE
Device (PEGP)
{
Name (_ADR, 0x00010000)
Device (GFX0)
{
Name (_ADR, Zero)
Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x16)
{
"@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, 0x03, 0x00,
/* 0008 */ 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
/* 0010 */ 0x00, 0x00, 0x00, 0x00
},
"VRAM,totalsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x10
},
"device_type",
Buffer (0x0D)
{
"NVDA,GeForce"
},
"model",
Buffer (0x17)
{
"nVidia GeForce 7300 GT"
},
"rom-revision",
Buffer (0x25)
{
"nVidia GeForce 7300 GT OpenGL Engine"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
}
Après pour savoir ou le placer il faut utiliser ioregistry explorer
proxys32
Aug 30 2009, 07:02 PM
L'outil le plus important pour ton dsdt c'est iaslme. Tu drag and drop ton fichier dsdt.dsl ou dsdt.aml directment sur l'icone de l'app pour passer de la version texte à la version compilée et inversement.
Après il faut savoir quoi mettre pour l'éthernet c'est :
CODE
Device (LAN)
{
Name (_ADR, Zero)
Name (_PRW, Package (0x02)
{
0x0B,
0x04
})
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x04)
{
"built-in",
Buffer (One)
{
0x01
},
"device_type",
Buffer (0x09)
{
"ethernet"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
Donc tu le mets soit dans la section PEX4 soit PEX5 selon les cartes mères.
Toi c'est une carte ethernet pci donc la carte n'est pas référencé au même endroit donc en théorie (je dis bien en théorie parce que franchement ca m'étonnerais que cela soit aussi simple) tu devrais mettre l'extrait de code directement dans la section que t'indique ton ioreg.
M'enfin le plus simple je pense c'est de réactiver ta carte réseau intégré et d'essayer le dsdt avec le LAN en PEX4 (le deuxième que j'ai modifié.
Refait un ioreg avec ta carte réseau intégré pour voir où elle est placée.
EDIT / AH oui précision importante les infos viennent de là
->
http://www.insanelymac.com/forum/index.php?showtopic=140941Dernier outil pratique pour modifier un dsdt.dsl "diffmerge" disponible sur macupdate qui te permettra de comparer ligne par lignes deux fichier dsdt.
coucou
Aug 30 2009, 08:01 PM
j'ai fait comme tu as dit plus haut.
j'ai viré ma ga311 puis activé la onboard.
j'ai booté sur mon xserve de secours (partition XServe-secours, créer en 1 clic un dsdt.aml avec DSDT gui (1.0e) sous os x donc ...
j'ai formaté ma partition XServe (partition XServe)
installé leopard server avec le .mpkg
plaquer le combo update server 10.5.8 via .mpkg
installé chameleon rc2 avec aucune option particuliere hormis de le mettre sous la partition XServe.
posé le kext Disabler.kext (au cas ou) et le openHaltRestart.kext
le reseau est actif mais pas bonjour, le serveur n'est pa vu dans le reseau .... depuis mon imac
et j'ai l'erreur UUID 35
EDIT : la carte onboard est en 100base T et ca c pas bon du tout .... ca veut dire 12Mo/s maxi ..... via le reseau
Par contre j'ai la GFX , pourquoi je n'ai rien mis dans le dsdt.aml !!!!!
j'ai du simili reseau ?...... je n'ai rien mis de plus dans mon dsdt.aml ....
plein de question
.......
QUOTE (thiathias @ Aug 30 2009, 09:51 PM)

J'ai une info et une question :
info : pour éditer les dsdt il y a un logiciel qui s'appelle DSDT Simple Editor (DSE) fait par des espagnols qui peut d'après ce que j'ai compris : extraire le DSDT, le modifier comme on veut ( il y a même des aides incluses pour savoir quoi modifier et comment) , et le recompiler pour obtenir un DSDT.aml
Le seul soucis (de taille) c'est que c'est en espagnol, j'ai beau eu faire 5ans d'espagnol LV2 tout n'est pas clair pour utiliser ce logiciel.
question : tu as l'air de dire proxys32 que il suffit de copier coller un code de carte ethernet pour le foutre la où il faut dans le DSDT? mais ce même code marche donc pour tous les adaptateurs réseaux et toutes les cartes mère ? ou y a-t-il une version précise pour telle carte etc...? Et pour la carte graphique pareil ? parce que d'après ce que j'ai compris dans DSE, la partie du code graphique est à modifier selon sa VRAM, son NVCAP etc...( trop compliqué pour moi donc j'utilise les strings tout fait )
hum je l'ai vu celui la aussi ...il parait tout simplement ... puissant ....
mais faut parler le julio iglesias ??? et moi no comprendo loqué dicé !!!
proxys32
Aug 31 2009, 06:35 AM
QUOTE
je viens de tester encor si je vire le Disabler.kext : plantage ====> ERREUR DE MA PART, sous dsdt gui 1.0.e je n'avais pas cochée l'option HPET ....
Je m'en doutais, tu avais un passage bizarre dans ton dsdt parce que tu n'avais pas appliqué le patch HPET
CODE
If (LGreaterEqual (OSFX, 0x03))
{
If (HPTF)
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Else
{
Return (Zero)
}
}
Method (_CRS, 0, NotSerialized)
{
If (LGreaterEqual (OSFX, 0x03))
{
If (HPTF)
{
Return (ATT3)
}
Else
{
Return (ATT4)
}
}
Else
{
Return (ATT4)
}
}
}
Je t'avais bien dis pourtant de cocher l'option.
Bon si tu arrives à faire fonctionner l'outil de koalala c'est déjà çà ca te fera gagner du temps.
Que le gfx fonctionne avec ton nouveau dsdt généré avec dsdt patcher gui et l'option HPET cochée c'est normal puisque le patcher est "influencé" par ton injection actuelle. Donc si tu as déjà un dsdt et que tu utilises dsdt patcher gui par dessus tu auras une copie conforme de ton dsdt actuel.
Par contre avec l'outil de Koalala il faut malgré tout modifier ton dsdt à la main pour injecter l'audio car le champ pinconfiguration n'est pas bon.
Pour l'éthernet en principe en utilisant l'ethernet intégré et en mettant ton LAN en PEX4 cela devrait fonctionner.
coucou
Aug 31 2009, 09:32 AM
ce matin j'ai commencé mes modif A LA MAIN avec vim (vi).
-getDSDT.sh
-puis decompiler mon DSDT.dat
-iasl -d dsdt.dat
-appliquer les modif de base au dsdt.dsl : _WAK et retour a zero (la ca me cause mieux come ca) avec vi (vim)
- recompiler le fichier dsdt.dsl : iasl -ta dsdt.dsl
=> sans warning ou erreur en fait cela semble plus sain, beaucoup plus sain.
PAR contre :
j'ai encore de gros gros doute sur le getDSDT.sh : d'ou recupere t'il les tables ACPI (DSDT) ?????? et comment !!
- Si c par ioreg c'est foireux car ce dernier est deja patché par un hack précedent , donc on ne sait pas du tout d'ou on part.
- Si il tape directement dans le bios ca semble bon ....
Alors comment etre sur d'ou provient le premier DSDT ????
merci proxy32s.
QUOTE (phoenix73 @ Aug 31 2009, 10:33 AM)

ACPI patcher j'avais oublié le tool de Koala. Il lui faut par contre l'image de la ROM BIOS non ?
moi je suis en train de passer en mode texte car les gui .... bof bof .... on ne voit rien : voire c'est croire !!!!!! lol
NOte :
- pour comprendre la manip et finalité DSDT j'ai utilisé ca :
http://aserebln.blogspot.com/2009/07/20.html - pour comprendre les hardware path / ioreg j'ai lu ca :
http://www.darwinx86.org/applications/util...koalala?start=1 (si vous utilisez koalala patcher , chez moi ilplante ..... beta5-0.2)
- un autre tuto qui n'est pas trop mal (mais quand on a bien compris le premier ... en fait) :
http://www.darwinx86.org/guides/installer-.../164-bases-dsdtA ce sujet, trauma, je ne comprends pas la méthode DGPT : c quoi ce truc un plus d'une édition normale dans le dsdt.dsl ? (On se servirait d'une methode (fonction) pour injecter des parametres ? A quoi sert t-elle si deja le dsdt le fait nativement ?
pecos
Aug 31 2009, 11:32 AM
De mon côté j'ai un dsdt.aml créé avec la méthode de Dr.Hurt (voir sujet n°143340) principalement en vue de résoudre totalement les problèmes d'artefacts graphiques rencontrés avec leopard sur une carte mère à video intégrée à base de GMA950.
De ce point de vue, ça marche à 100% !!
Mais s'il y a un spécialiste dans la salle, je me demandais si ça ne serait pas possible aussi d'y ajouter un peu de code pour me passer de la version patchée de appleHDA.kext et d'HDAenabler.kext dont j'ai besoin pour avoir du son en entrée/sortie sur ma mobo ?
C'est en fait une puce ALC662 (et pas ALC883 comme ça devrait...) sur cette carte ASUS P5_GCMX 1333.
En gros, concrètement, faudrait faire quoi pour ajouter du code qui ferait reconnaître la puce à un appleHDA.kext non patché ?
QUOTE (coucou @ Aug 31 2009, 11:21 AM)

(...)car en fonction de ce qui vient de passer avant la recuperation du dsdt on a jamais :
1 - le meme DSDT avec le meme matos ... zzzzzzz
2 - le meme DSDT en fonction de la methode utilisé pour installer OS X (sur un disque cible ou en natif ....)
(...)
Curieux, avec le soft que j'ai utilisé (
patcher en ligne de commande) j'obtiens vraiment toujours le même dsdt.aml, à l'octet près (pourvu que je n'ai pas changé un paramètre hardware entre temps)
Par contre il est impératif de démarrer SANS dsdt.aml avant de lancer le patcher, sinon, il se contente de recopier l'existant : celui qui est chargé !
Trauma!
Aug 31 2009, 02:52 PM
QUOTE
Pour moi le dsdt c'est pratique mais dès la sortie de chameleon 3 je vire la partie graphique et l'éthernet de mon dsdt et je laisse chameleon s'en occuper... ( et puis sait on jamais, peut être que le ALC889A sera supporté nativement par chameleon 3)
En ce qui concerne l'injection graphique et ethernet tu n'as pas tord, quand on ajoute ce genre de chose au DSDT ça tiens plus du "hack" que du "fix" : la tables DSDT c'est du code ACPI donc c'est fait pour gérer la veille / l'énergie etc... et pas pour coller des bout de code a injecter dans registre. Bon, après ça fonctionne bien on peut pas dire le contraire, et ça permet de regrouper pas mal de "fix" au meme endroit.
Sur un vrai mac les device-properties sont aussi utilisée, et pour la même chose en plus. Sauf qu'au lieu d'etre issues d'un string injecté par le bootloader, elle sont issues de la couche EFI.
En ce qui concerne ta carte son et chameleon, ne rêve pas trop... Par contre que HDAEnabler sois intègré a chameleon c'est tout à fais en envisageable a mon avis. Et c'est quand même 50% du boulot de fais pour avoir le son.
En ce qui concerne l'extraction du DSDT : je l'ai déjà dit et je le répètes (en plus développé certes) la table DSDT de votre ACPI est stockée dans le registre. Elle est lue dans le bios par le driver ACPI (AppleACPIPlatform.kext) puis stocké dans le registre pour être utilisée par d'autre drivers.
Donc si vous n'avez pas démarrer avec un DSDT.aml vous dumprez un DSDT vierge. iasl existe en versions Win32 et linux, si vous dumpez sous linux ou windows vous obtiendrez exactement la même chose.
A+
phoenix73
Sep 1 2009, 01:06 PM
J'ai joué avec ACPI Patcher de Koala et quelques doutes :
- j'utilise Export DSDT pour extraire le DSDT.dsl
- je passe ensuite le compilateur iASL via D/C DSDT pour produire un .aml depuis mon .dsl
- et pour finir je décompile le .aml pour avoir un 2eme .dsl
Quand je compare les 2 .dsl, celui extrait de la ROM et celui produit via compilation/décompilation, je vois des différences.
Je peux comprendre la différence entre les compilateurs mais le cartouche déjà :
ROM :
* Original Table Header:
* Signature "DSDT"
* Length 0x00008B31 (35633)
* Revision 0x01 **** ACPI 1.0, no 64-bit math support
* Checksum 0x16
* OEM ID "A0916"
* OEM Table ID "A0916041"
* OEM Revision 0x00000041 (65)
* Compiler ID "INTL"
* Compiler Version 0x20060113 (537264403)
---
COMPIL/DECOMPIL
* Original Table Header:
* Signature "DSDT"
* Length 0x00008AE0 (35552)
* Revision 0x01 **** ACPI 1.0, no 64-bit math support
* Checksum 0xA1
* OEM ID "A0916"
* OEM Table ID "A0916041"
* OEM Revision 0x00000041 (65)
* Compiler ID "INTL"
* Compiler Version 0x20081204 (537399812)
Sinon dans le code même (produit avec diff -Nru) :
@@ -2,19 +2,19 @@
* Intel ACPI Component Architecture
* AML Disassembler version 20081204
*
- * Disassembly of dsdt.xtr, Tue Sep 01 14:42:26 2009
+ * Disassembly of dsdt.xtr, Tue Sep 01 14:55:59 2009
*
*
* Original Table Header:
* Signature "DSDT"
- * Length 0x00008B31 (35633)
+ * Length 0x00008AE0 (35552)
* Revision 0x01 **** ACPI 1.0, no 64-bit math support
- * Checksum 0x16
+ * Checksum 0xA1
* OEM ID "A0916"
* OEM Table ID "A0916041"
* OEM Revision 0x00000041 (65)
* Compiler ID "INTL"
- * Compiler Version 0x20060113 (537264403)
+ * Compiler Version 0x20081204 (537399812)
*/
DefinitionBlock ("dsdt.aml", "DSDT", 1, "A0916", "A0916041", 0x00000041)
{
@@ -1909,8 +1909,6 @@
0x00, // Alignment
0x02, // Length
)
- IRQNoFlags ()
- {8}
})
}
@@ -3080,48 +3078,28 @@
Device (HPET)
{
Name (_HID, EisaId ("PNP0103"))
- Name (CRS, ResourceTemplate ()
+ Name (ATT3, ResourceTemplate ()
{
- Memory32Fixed (ReadOnly,
+ IRQNoFlags ()
+ {0}
+ IRQNoFlags ()
+ {8}
+ Memory32Fixed (ReadWrite,
0xFED00000, // Address Base
0x00000400, // Address Length
- _Y09)
+ )
})
- OperationRegion (^LPCR, SystemMemory, 0xFED1F404, 0x04)
- Field (LPCR, AnyAcc, NoLock, Preserve)
+ Name (ATT4, ResourceTemplate ()
{
- HPTS, 2,
- , 5,
- HPTE, 1,
- Offset (0x04)
- }
-
+ })
Method (_STA, 0, NotSerialized)
{
- If (LEqual (OSFL (), Zero))
- {
- If (HPTE)
- {
- Return (0x0F)
- }
- }
- Else
- {
- If (HPTE)
- {
- Return (0x0B)
- }
- }
-
- Return (Zero)
+ Return (0x0F)
}
Method (_CRS, 0, NotSerialized)
{
- CreateDWordField (CRS, \_SB.PCI0.SBRG.HPET._Y09._BAS, HPT)
- Multiply (HPTS, 0x1000, Local0)
- Add (Local0, 0xFED00000, HPT)
- Return (CRS)
+ Return (ATT3)
}
}
@@ -3265,12 +3243,12 @@
Memory32Fixed (ReadOnly,
0xE0000000, // Address Base
0x10000000, // Address Length
- _Y0A)
+ _Y09)
})
Method (_CRS, 0, NotSerialized)
{
- CreateDWordField (CRS, \_SB.PCI0.PCIE._Y0A._BAS, BAS1)
- CreateDWordField (CRS, \_SB.PCI0.PCIE._Y0A._LEN, LEN1)
+ CreateDWordField (CRS, \_SB.PCI0.PCIE._Y09._BAS, BAS1)
+ CreateDWordField (CRS, \_SB.PCI0.PCIE._Y09._LEN, LEN1)
Store (PCIB, BAS1)
Store (PCIL, LEN1)
Return (CRS)
@@ -3418,20 +3396,20 @@
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
- _Y0B)
+ _Y0A)
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
- _Y0C)
+ _Y0B)
})
Method (_CRS, 0, NotSerialized)
{
If (APIC)
{
- CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0B._LEN, ML01)
- CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0B._BAS, MB01)
- CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0C._LEN, ML02)
- CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0C._BAS, MB02)
+ CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0A._LEN, ML01)
+ CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0A._BAS, MB01)
+ CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0B._LEN, ML02)
+ CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0B._BAS, MB02)
Store (0xFEC00000, MB01)
Store (0x1000, ML01)
Store (0xFEE00000, MB02)
@@ -3455,29 +3433,29 @@
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
- _Y0D)
+ _Y0C)
Memory32Fixed (ReadOnly,
0x000E0000, // Address Base
0x00020000, // Address Length
- _Y0E)
+ _Y0D)
Memory32Fixed (ReadWrite,
0x00100000, // Address Base
0x00000000, // Address Length
- _Y0F)
+ _Y0E)
Memory32Fixed (ReadOnly,
0x00000000, // Address Base
0x00000000, // Address Length
- _Y10)
+ _Y0F)
})
Method (_CRS, 0, NotSerialized)
{
- CreateDWordField (CRS, \_SB.RMEM._Y0D._BAS, BAS1)
- CreateDWordField (CRS, \_SB.RMEM._Y0D._LEN, LEN1)
- CreateDWordField (CRS, \_SB.RMEM._Y0E._BAS, BAS2)
- CreateDWordField (CRS, \_SB.RMEM._Y0E._LEN, LEN2)
- CreateDWordField (CRS, \_SB.RMEM._Y0F._LEN, LEN3)
- CreateDWordField (CRS, \_SB.RMEM._Y10._BAS, BAS4)
- CreateDWordField (CRS, \_SB.RMEM._Y10._LEN, LEN4)
+ CreateDWordField (CRS, \_SB.RMEM._Y0C._BAS, BAS1)
+ CreateDWordField (CRS, \_SB.RMEM._Y0C._LEN, LEN1)
+ CreateDWordField (CRS, \_SB.RMEM._Y0D._BAS, BAS2)
+ CreateDWordField (CRS, \_SB.RMEM._Y0D._LEN, LEN2)
+ CreateDWordField (CRS, \_SB.RMEM._Y0E._LEN, LEN3)
+ CreateDWordField (CRS, \_SB.RMEM._Y0F._BAS, BAS4)
+ CreateDWordField (CRS, \_SB.RMEM._Y0F._LEN, LEN4)
If (OSFL ()) {}
Else
{
@@ -9278,21 +9256,21 @@
0x000DFFFF, // Range Maximum
0x00000000, // Translation Offset
0x00020000, // Length
- ,, _Y11, AddressRangeMemory, TypeStatic)
+ ,, _Y10, AddressRangeMemory, TypeStatic)
DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
0x00000000, // Granularity
0x00000000, // Range Minimum
0x00000000, // Range Maximum
0x00000000, // Translation Offset
0x00000000, // Length
- ,, _Y12, AddressRangeMemory, TypeStatic)
+ ,, _Y11, AddressRangeMemory, TypeStatic)
})
- CreateDWordField (CRS, \_SB.PCI0._Y11._MIN, MIN5)
- CreateDWordField (CRS, \_SB.PCI0._Y11._MAX, MAX5)
- CreateDWordField (CRS, \_SB.PCI0._Y11._LEN, LEN5)
- CreateDWordField (CRS, \_SB.PCI0._Y12._MIN, MIN6)
- CreateDWordField (CRS, \_SB.PCI0._Y12._MAX, MAX6)
- CreateDWordField (CRS, \_SB.PCI0._Y12._LEN, LEN6)
+ CreateDWordField (CRS, \_SB.PCI0._Y10._MIN, MIN5)
+ CreateDWordField (CRS, \_SB.PCI0._Y10._MAX, MAX5)
+ CreateDWordField (CRS, \_SB.PCI0._Y10._LEN, LEN5)
+ CreateDWordField (CRS, \_SB.PCI0._Y11._MIN, MIN6)
+ CreateDWordField (CRS, \_SB.PCI0._Y11._MAX, MAX6)
+ CreateDWordField (CRS, \_SB.PCI0._Y11._LEN, LEN6)
Method (_CRS, 0, NotSerialized)
{
Store (MG1L, Local0)