Méthode
Vous devez avoir à votre disposition:Gxfutils
Osx86Tools Utility
Un bootloader compatible GFX Strings
Si vous possédez déjà un fichier de GFX Strings, il suffira de mettre les nouvelles valeures à la suite de celles déjà intégrées. Vous pouvez sauter l'étape 1 pour les cartes déjà gérées par vos GFX.
1. Trouver ses cartes PCI
- Lancez une session Terminal et tapez:
ioreg
- Avec la fonction recherche ( pomme + F), recherchez les entrées nommées IOPCI2PCIBridge
- Sous chaque ligne commençant par IOPCI2PCIBridge vous allez trouver une ligne qui débute de cette manière:
+-o display@0 Retenez uniquement le texte qui se trouve avant l' @. Dans l'exemple ci-dessus, il s'agit de la carte graphique, donc ne retenez que "display"
- Placez GFXUtils sur le bureau puis, dans le terminal, entrez:
cd ~/desktop
./gfxutil -f display
- Vous allez obtenir une ligne qui se présente comme ceci:PciRoot(0x1)/Pci(0xe,0x0)/Pci(0x0,0x0)
- Répétez l'opération pour toutes les entrées que vous trouvez. Vous pouvez également ajouter votre carte son, en recherchant l'entrée AZAL ou HDEF.
2. Créer le fichier XML
- Si votre carte graphique, son et ethernet sont déjà intégrées à un fichier XML (.plist), ajoutez uniquement les entrées suivantes juste en dessous de PciRoot(0x1)/Pci(0xe,0x0)/Pci(0x0,0x0):
<key>AAPL, slot-name</key>
<string>Nom du slot</string>
<key>model</key>
<string>nom du model</string>
<key>device-type</key>
<string>type de périphérique</string>
<key>name</key>
<string>nom de la carte</string>
Le nom du slot reste à votre discrétion. Généralement on utilise "Build-In" pour les ordinateurs portables, et Slot-1, Slot-2... etc pour les tours.
Attention: la seconde entrée, à savoir
<key>name</key>
<string>nom de la carte</string>
ne doit pas être ajoutée pour la carte graphique, au risque de faire planter le système au prochain reboot
- Pour les autres cartes, vous devez créer des entrées complêtes. Voici un exemple générique:
PciRoot(0x1)/Pci(0x1c,0x4)/Pci(0x0,0x0)
<dict>
<key>AAPL, slot-name</key>
<string>Nom du slot</string>
<key>model</key>
<string>nom du model</string>
<key>device-type</key>
<string>type de périphérique</string>
<key>name</key>
<string>nom de la carte</string>
Remplissez les valeures par celle trouvées grâce à GFXUtils. Une fois que vous avez tout rempli, convertissez le fichier XML en hex avec GFXUtils.
- Pour ce faire, copier le fichier XML sur le bureau en le renommant in.plist
- Puis vous lancez la conversion:
cd ~/desktop
./gfxutil -i xml -o hex ./in.plist ./out.hex
- Un fichier out.hex apparait sur le bureau, il ne reste plus qu'à en copier le contenu et l'ajouter à com.apple.boot.plist avec Osx86Tools ("add efi strings / boot flag")
- Pour ce faire, copier le fichier XML sur le bureau en le renommant in.plist
- Puis vous lancez la conversion:
cd ~/desktop
./gfxutil -i xml -o hex ./in.plist ./out.hex
- Un fichier out.hex apparait sur le bureau, il ne reste plus qu'à en copier le contenu et l'ajouter à com.apple.boot.plist avec Osx86Tools ("add efi strings / boot flag")
3. Retrouver le nom de ses périphériques
Il se peut que vous ne saviez pas à quelles cartes correspondent les entrées trouvées dans ioreg.
Pour les retrouver, il suffit de suivre les indications au dessus, mais en supprimant la clé
<key>name</key>- Une fois les strings ajoutés au boot, rebootez et ouvrez les Informations Système, et allez à Cartes PCI.
<string>nom de la carte</string>
- A la ligne "Name", vous allez voir un valeure qui se présente de cette manière: pci1180,8...
- Ouvrez Osx86Tools Utility puis lancez "view PCI Devices / Vendor ID"
- Vous trouverez alors les périphériques correspondants aux valeurs qui s'affichent dans les informations système.
- Vous n'avez plus qu'à ajouter la clé ci-dessus dans votre fichier XML et recréer un nouveau fichier HEX dont le contenu sera copié une nouvelle fois avec Osx86Tools Utility à la place de l'ancien.
Fichier XML exemple
| Personnaliser la reconnaissance de son écran | Configuration de secours |
|---|



Commentaires
Thanks
Kind regards,
Simon
If you have 2 video cards, you can see two display@??.
Example:
1st Path tree : PCI0@0 --> P0P1@1 --> display@1,6
2nd Path tree : PCI0@0 --> P0P1@12,1 --> display@3
Meaning:
1st card : DevicePath = PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x1,0x6)
2nd card : DevicePath = PciRoot(0x0)/Pci(0x12,0x1)/Pci(0x3,0x0)
Another method is to plug only one video card into your computer so that there'll be only one display@?? and gfxutil will be able to find it correctly.
I don't understand why the author of gfxutil did not thought about that...