Dernière mise au point concernant la procédure pour se faire un kext skylake-usb perso :
Il est nécessaire, tout d'abord, de repérer les ports USB de la machine :
1-a) Utiliser le kext Rehabman USBinjectAll (l'installer avec kext utility qui pour moi va bien : il répare les permissions L/E et S/L/E, met à jour le cache système et bien sûr installe le(s) kext(s))... Veiller à ce que config.plist ait bien en rtvariables : csr-active-config 0x67 = SIP Disabled completely ((désactivation du SIP). Ce kext est utile pour disposer dans un premier temps de ports USB 2 et 3 fonctionnels et , en principe (!!), dans un 2ème temps, à mettre en oeuvre une solution (2) plus pérenne...
1-b) Pour El Capitan 10.11.6, à l'aide de cloverconfigurator (c'est ce que j'utilise pour modifier le config.plist (il y a d'autres moyens)), aller section : Kernel and Kext Patches et "rentrer" :
Name : AppleUSBXHCIPCI, Find : 83BD8CFEFFFF10, Replace : 83BD8CFEFFFF1F, Comment :
Increase 15 port limit to 30 in AppleUSBXHCIPCI
1-c) Pour Sierra (beta publique 7 au 1/09/2016) idem ci dessus mais :
Name : AppleUSBXHCIPCI, Find :
83BD74FFFFFF10, Replace :
83BD74FFFFFF1F, Comment :
10.12 DP5 change 15 port limit to 20 in AppleUSBXHCIPCI
2) Ensuite, à l'aide de IoRegistryExplorer (ou ioJones), repérer les ports physiques de la machine (carte et boitier). Pour cela il faut se positionner sur XHC@14 (ne pas hésiter à descendre assez bas dans les lignes de IoRegistry.. ou iojones). Il y a des indications du style HS01(02,03...), SS01(02,03...) qui, lorsque vous aurez placé votre device USB 2 puis USB 3 successivement dans un des ports , seront respectivement renseignés. Notez quelque part le nom du port repéré, par ex : HS03, et en cliquant dessus, les data du port dans la fenêtre à droite : ici :
Bon, c'est marrant à faire, hein, et ben puisque ça vous a amusé, vous allez le faire pour tous les ports de la machine... Ouarfff !!!
3) Mais là où on a de la chance, c'est que, grâce à
Barijaona et Polyzargone, on dispose maintenant d'un kext tout cuit. Y'a qu'à les télécharger et à les adapter avec pListEditPro
:
Il est ici :
https://www.dropbox.com/s/1niqnoh8lr5qxrv/Z170_Injector_v3.kext.zip?dl=0
* Pour cela on clique droit sur le kext-->afficher le contenu du paquet--->contents-->clic-droit Info.plist et choisir l'appli qui va bien plistedit ou Xcode (avec pour ce dernier la remarque de Barijaona plus haut : "effectivement, on peut utiliser Xcode plutôt que pListEditPro. Il faut juste se souvenir du click droit permettant d'accéder à l'option "Show Row Keys/Values" )
On ouvre un document qui a cette bouille :
On déroule la ligne cochée IOKitPersonalities et ensuite celle cochée : iMac17,1-XHC, ensuite on clique sur la ligne cochée IOProviderMergeProperties. Là on a une ligne port-count : on clique sur le chiffre le plus à droite et on renseigne avec la valeur "data" la plus élevée que l'on aura trouvé en repérant les ports comme indiqué ci-dessus.
En dessous il y a la ligne "ports". On se souvient que l'on a le droit de ne conserver que 15 ports au max (c'est expliqué pourquoi plus haut). c'est là qu'on renseigne les ports que l'on a repérés (les USB 2 en HS--, les USB 3 en SS--) pour chaque port on renseigne sa valeur "Data" (port data 0xxxxxxx) et la caractéristique du port : UsbConnector :
0 et 3 = externes : ceux qu'on trouve sur les connecteurs arrières de la carte mère et ceux du boitier.
• 255 = Internes : ceux qu'on trouve sur les connecteurs internes - les internal USB headers - de la carte mère. (Dans le cas de la Z170X-Gaming 5, il s'agit des F_USB30_1, F_USB30_2, F_USB1 et F_USB2.) (cf rectifications apportées par polyzargone)
Normalement, vous sauvegardez le machin et vous avez un "kext" personnalisé à votre machine.
3) Vous le mettrez dans le clover-->kexts-->qui va (vont) bien : 10.11, 10.12, others...). Vous aurez enlevé, s'il y était, USBinjectAll de partout, : des Clover-->kexts, de S/L/E, de L/E... de la lune etc.
* Et puis vous
configurerez votre config.plist (que j'ouvre avec cloverconfigurator pour ma part) :
On est sur un
SMBIOS iMac 17,1 et il faut suivre les recommandations de
Polyzargone ici :
http://forums.macg.co/threads/hackintosh-skylake-usb-el-capitan-sierra.1284304/#post-13058680
et là :
http://forums.macg.co/threads/hackintosh-skylake-usb-el-capitan-sierra.1284304/#post-13058723
On remarquera qu'un dossier est alors créé sur le bureau, il contient le kext original remplacé. Celui ci sera utile pour être remis dans S/L/E si l'on décide par la suite d'utiliser le patch ci dessous.
On peut en effet aussi essayer, par la suite, ce patch qui devrait éviter de refaire la procédure décrite dans le lien ci dessus à chaque mise à jour du système. :
* Mettre dans Kernel and Kexts Patches :
Name : AppleGraphicsDevicePolicy
Find : 626F6172642D6964
Replace : 626F6172642D6978
Comment : AppleGraphicsDevicePolicy (board-id) Patch (c) Pike R. Alpha
NB de Polyzargone : En ce qui concerne l'injecteur, si pour une raison ou une autre il doit être utilisé avec un SMBios différent de celui d'un iMac17,1, il faudra changer ces valeurs dans l'info.plist du kext :
• IOKitPersonalities > iMac17,1-XHC par "SMBios choisi"-XHC
• IOKitPersonalities > model par "SMios choisi"
Exemple :
• IOKitPersonalities > iMac14,2-XHC
• IOKitPersonalities> model : iMac14,2
Cela étant dit, le SMBios d'un iMac17,1 est le meilleur choix pour une config en Skylake et l'iMac14,2 est généralement le plus adapté pour celles en Haswell.
* Ensuite on vire les Kernel and Kext Patches correspondant aux modifications des limites de ports
genre : "Name : AppleUSBXHCIPCI, Find : xxxxxxxxx, Replace : xxxxxxxxx, Comment : Increase xx port limit to xx in AppleUSBXHCIPCI
" ou autre de ce genre.
* Et pis on fait ça : de
Barijaona :
FACULTATIF (J'l'avais mis, ça marchait, j'l'ai enlevé ça marche aussi )
" Dans l'optique de contourner les éventuels injecteurs spécifiques à l'iMac17,1, il faut mettre un patch Clover dans la rubrique
ACPI > DSDT fixes :
Comment : Rename XHC1 to XHC
Find : 58484331
Replace : 584843 "
* On "save".
Voilà, bon courage !!
PS : ailleurs dans ce topic il y a des pistes pour régler des problèmes de veille, bonne lecture (faut être patient et un "peu" de temps)