il existe 3 methode pour remedier a cela:
Les strings EFI
c'est la méthode la plus simple bien qu'elle ne fonctionne pas sur toutes les configurations, elle permet sur certaines machines de corriger ce bug.
pour ça il suffit de ce procurer EFIStudio ou OSX Tool Utility et d'appliquer la string réseau correspondant a votre carte au fichier com.apple.Boot.plist

Le fichier NetworkInterfaces.plist
le fichier NetworkInterfaces.plist est un fichier de préférence système, ce trouvant dans le dossier /Library/Preferences/SystemConfiguration/.
Ce fichier a pour but de configurer le nom BSD des interfaces réseaux, il suffira donc de l'éditer et de redémarrer pour que cela prenne effet (attention parfois cette méthode peut non plus ne pas suffire ) .
Tout d'abord, faites un sauvegarde de ce fameux fichier, dans le terminal tapez:
CODE
sudo cp -Rfp /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist Library/Preferences/SystemConfiguration/NetworkInterfaces.plist.bak
vous aurez besoins d'un mot de passe administrateur
ensuite, telechargez un éditeur de .plist (je vous conseil vivement PlistEdit Pro) et ouvrez le fichier /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist:

vous constatez dans l'Array: Interfaces, qu'il en existe plusieurs, le but est que la votre soit reconnue comme en0 et pour cela vous devez connaître quelle est votre interface réseau,
dans le terminal tapez:
CODE
system_profiler | grep -e "BSD Device Name: en"
cette commande r�pondra par une ou deux ligne(s) identique(s) : BSD Device Name: en* ( * etant le numero de votre interface )
retournez dans l'éditeur PlistEdit Pro, ouvrez la ligne correspondant au numéro de votre interface, et changer la cl� BSDName de en* a en0 et la cl� IOInterfaceUnit de * en 0,
pour finir effacer l'interface 0 existante, et sauvegardez le fichier,

maintenant il vous suffit de red�marrer, si la maneouvre a �t� faite correctement, votre interface sera maintenant en0.
Les DSDT : merci a B166ER (Krazubu) pour cette méthode
pour cette methode on considerera que vous utilisiez deja un bootloader qui inclue le DSDT overide et que vous ayez deja en votre possesion un fichier dump DSDT.dsl
c'est la methode la plus conmpliqué, et elle demande un minimum de connaissances techniques,
tout d'abord dans le terminal
CODE
ioreg -lw0 | grep Ethernet
le resultat vous donnera une ligne qui ressemble a ca : "acpi-path" = "IOACPIPlane:/_SB/PCI0@0/PEX4@1c0004/Ethernet@0"
ici ce qui nous interresse c'est ce qui est en bleue, c'est a dire PEX4 (ou toute autre valeur)
ensuite ouvrez votre fichier DSDT.dsl avec un éditeur de texte, puis faites un recherche de PEX4 (ou votre valeur) dans le fichier dsdt, et ajouter ceci (a la fin da la section en question):
CODE
Device (GIGE)
{
Name (_ADR, 0x00)
Name (_PRW, Package (0x02)
{
0x09,
0x03
})
Method (EWOL, 1, NotSerialized)
{
If (LEqual (Arg0, 0x01))
{
Or (GP9, 0x01, GP9)
}
Else
{
And (GP9, 0x00, GP9)
}
If (LEqual (Arg0, GP9))
{
Return (0x00)
}
Else
{
Return (0x01)
}
}
}
{
Name (_ADR, 0x00)
Name (_PRW, Package (0x02)
{
0x09,
0x03
})
Method (EWOL, 1, NotSerialized)
{
If (LEqual (Arg0, 0x01))
{
Or (GP9, 0x01, GP9)
}
Else
{
And (GP9, 0x00, GP9)
}
If (LEqual (Arg0, GP9))
{
Return (0x00)
}
Else
{
Return (0x01)
}
}
}
Maintenant faite un recherche du terme GPIO dans le fichier, et ajout� une entrée "GP9, 1" comme suit:
avant:
CODE
OperationRegion (GPIO, SystemIO, 0x0800, 0x3c)
Field (GPIO, ByteAcc, NoLock, Preserve)
{
GO01, 8,
GO02, 8,
GO03, 8,
GO04, 8,
GO05, 8,
Offset(0xc),
,4,
GP4_, 1
}
Field (GPIO, ByteAcc, NoLock, Preserve)
{
GO01, 8,
GO02, 8,
GO03, 8,
GO04, 8,
GO05, 8,
Offset(0xc),
,4,
GP4_, 1
}
apres:
CODE
OperationRegion (GPIO, SystemIO, 0x0800, 0x3c)
Field (GPIO, ByteAcc, NoLock, Preserve)
{
GO01, 8,
GO02, 8,
GO03, 8,
GO04, 8,
GO05, 8,
Offset(0xc),
,4,
GP4_, 1,
GP9, 1
}
Field (GPIO, ByteAcc, NoLock, Preserve)
{
GO01, 8,
GO02, 8,
GO03, 8,
GO04, 8,
GO05, 8,
Offset(0xc),
,4,
GP4_, 1,
GP9, 1
}
il vous suffit ensuite de recompiler le fichier dsdt.dsl avec la commande iasl -ta dsdt.dsl, de placer le nouveau fichier dsdt.aml a la racine du disque et de redamarrer
This post has been edited by cparm: May 23 2009, 02:15 AM





Apr 18 2009, 07:12 PM

