2 votos

Macbook pro atascado en el arranque - "AppleUSBHostPort::interruptOccurred: overcurrent detected"

Estoy intentando reinstalar OSX en un MacBook Pro Mid-2009 pero se cuelga al iniciar.
He utilizado varios discos pero ahora al ejecutarlo en modo verbose veo que se cuelga en "AppleUSBHostPort::interruptOccurred: overcurrent detected"
y bucles aquí.

Imagen de los mensajes durante el arranque:

enter image description here

1voto

Tienes un problema de hardware con tus puertos USB y es físico. Intenta deshabilitar los puertos USB pero no puede por lo que lanza este error.

Está relacionado con el hardware, no puedes hacer nada.

1voto

gdm Puntos 394

Cuando mi Macbook Air se cayó al suelo mientras estaba conectada una memoria USB, el conector USB del lado derecho se dañó. El puerto dejó de funcionar y desde entonces aparentemente tiene un pequeño cortocircuito. En efecto, la zona cercana a él se calienta y la batería del portátil se agota en una hora. Una reparación de hardware probablemente requeriría la sustitución de la placa lógica principal, ya que, por desgracia, este conector USB forma parte de esa placa. Una pieza de repuesto costaría 300 dólares y unas 2 horas de trabajo para un HW gugy experimentado, así que decidí que esto no me merece la pena.

No encontré ningún problema de software hasta que actualicé mi sistema de Mac OS X 10.8.6 Mountain Lion a 10.12.6 Sierra. Más tarde me enteré de que con 10.11 El Capitan la forma de incluir los puertos USB ha cambiado .

Cuando el sistema (cualquier Mac OS X 10.11 o posterior) arranca, tarda entre 2 y 3 veces más de lo habitual mientras emite constantemente dmesg mensajes como los siguientes:

XHC1@14000000: AppleUSBXHCI::hardwareException: kUSBCommandReset did not clear
XHC1@14000000: AppleUSBHostController::setPowerStateGated: going to state 2 failed with 0xe00002e9

Después de la corrección mencionada a continuación, sigue dando ocasionalmente el siguiente mensaje, que es soportable y una buena indicación de la causa root:

AppleUSBHostPort::interruptOccurred: overcurrent detected with port status 0x4000, localSimulatedInterrupts = 0x0

Desde entonces, he estado luchando para encontrar una manera de desactivar ese puerto USB de manera que el arranque del sistema no se detenga y que el otro puerto USB del lado izquierdo siga siendo utilizable (al menos en el modo USB 2.0 de alta velocidad). Finalmente lo he conseguido, y comparto mi solución aquí para otros que puedan enfrentarse a un problema similar:

cd /System/Library/Extensions/IOUSBHostFamily.kext/Contents/PlugIns

Editar AppleUSBEHCIPCI.kext/Contents/Info.plist para eliminar o comentar (utilizando el inicio de comentarios XML <!-- y terminar --> ) la entrada de AppleUSBXHCIPPT :

            <!--<key>AppleUSBXHCIPPT</key>
            <dict>
                    <key>CFBundleIdentifier</key>
                    <string>com.apple.driver.usb.AppleUSBXHCIPCI</string>
                    <key>IOClass</key>
                    <string>AppleUSBXHCIPPT</string>
                    <key>IOPCIPauseCompatible</key>
                    <true/>
                    <key>IOPCIPrimaryMatch</key>
                    <string>0x1e318086</string>
                    <key>IOPCITunnelCompatible</key>
                    <true/>
                    <key>IOProbeScore</key>
                    <integer>1000</integer>
                    <key>IOProviderClass</key>
                    <string>IOPCIDevice</string>
            </dict>-->

Como alternativa, y de forma más sencilla, desactive AppleUSBXHCIPCI en conjunto:

sudo mv AppleUSBXHCIPCI.kext{,.disabled}

En ambos casos, finalmente

sudo touch /System/Library/Extensions && sudo kextcache -u /

y reiniciar.

Tenga en cuenta que la desactivación del controlador sobre la marcha:

kextunload -b com.apple.driver.usb.AppleUSBXHCIPCI

no funciona porque está en uso por alguna otra extensión del kernel.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X