5 votos

2012 MacBook Air - hardware USB acabó el dispositivo ranuras?

Tengo un 2012 11" i7 MBA. Este es un pequeño gran máquina, pero una cosa ha sido la conducción de ser absolutamente loca... Los puertos USB funcionan bien para la mayor parte, pero inevitablemente voy a conectar un dispositivo USB (puede ser cualquier cosa. Unidad de disco usb, puerto serie USB, cable JTAG, USB2 o USB3 dispositivo, no importa) y se encenderá (LEDs parpadean, etc.) pero el dispositivo no es reconocido por el Mac.

Mirando dmesg, veo esto:

USBF:    126826.226    AppleUSBXHCI[0xffffff80d5636000]::WaitForCMD (Enable Slot Command) - Command failed: -1009 (num interrupts: 93582187, num primary: 46791094, inactive:0, unavailable:0, is controller available:1)
USBF:    126826.226    AppleUSBXHCI[0xffffff80d5636000]::PrintInterrupter WaitForCMD IRQ:0 - IMAN: 00000002 IMOD: 000700a0 ERDP: 002043d0
USBF:    126826.226    AppleUSBXHCI[0xffffff80d5636000]::UIMCreateControlEndpoint 2 - Run out of device slots, returning: e0004045
USBF:    126826.226    AppleUSBHubPort[0xffffff8015ddce00]::DoConfigureDeviceZero  Port 1 of hub at 0x14000000.  Cannot create USB device (kIOUSBDeviceCountExceeded)
The USB stack is not able to enumerate the device at Port 1 of hub at 0x14000000 because the USB hardware ran out of device slots

En este punto, el puerto USB está kaput. Unpugging/enchufar de nuevo el mismo dispositivo o en otro se mostrará mensajes similares. La única solución parece ser un reinicio. Poner la Mac a dormir no ayuda.

Yo tengo el USB de registro de controlador instalado, trate de ayudar a diagnosticar el problema, pero no estoy viendo nada de lo que yo podría llamar una pistola humeante, y tratando de volver a cargar el USB kexts no ayuda tampoco.

Este problema se presente en mi antiguo 2011 MBA así, y el problema ha persistido desde 10.7 10.9. Ambos puertos eventualmente hacer esto, lo que me hace creer que no es un puerto físico cuestión desde un puerto es independiente placa de e/S y el otro en la placa lógica. He probado a conectar el dispositivo a través de un externo USB2 y USB3 hub (tratado de ambos) y el problema que eventualmente se producen en estas situaciones.

Estoy bastante avanzadas, pero no necesariamente lo mejor de mi en OSX. Puedo reunir más información si alguien me ayuda a determinar qué datos es apropiado para ayudar a depurar el problema. También he hecho la costumbre de la NVRAM/SMC restablece, revisión de permisos, etc... no ayuda.

Ha nadie en este? Qué información podría proporcionar para ayudar a diagnosticar el problema? ¿Alguien sabe de una forma de restablecer completamente la XHCI controlador en esta situación para intentar recuperar sin necesidad de reiniciar el ordenador?

Editar 20140217

La adición de la recompensa, sin duda tengo esta pregunta la atención que yo sentía que necesitaba! Gracias por todas las respuestas hasta ahora, pero creo que hay algunas ideas erróneas que me gustaría dirección:

  1. Yo no migrar mi cuenta desde el antiguo MacBook Air. Nueva marca de instalar
  2. El problema se produce con casi cualquier dispositivo. Las llaves USB (sin necesidad de cables aquí!), Adaptador JTAG, USB3 unidades
  3. El problema se produce con o sin USB2 o USB3 centros
  4. Si el problema se produce con un dispositivo en un concentrador, desconectar el switch y conectar el dispositivo directamente en el Mac no ayuda
  5. Si el problema se produce sin un concentrador, conectar el dispositivo en un puerto USB2 o USB3 hub no ayuda
  6. Una vez que el problema se produce, cerrar sesión / cambiar a otro (nuevo) el usuario no hace desaparecer el problema para el nuevo usuario o el usuario anterior.

Puedo desarrollar electrónicos de hardware y software para la vida, incluyendo los dispositivos USB 3.0. Estoy familiarizado con USB puerto root de los conductores, pero no del todo familiarizado con bajo nivel (kernel) de desarrollo en OSX.

Estoy bastante seguro de que este es un controlador de dispositivo de problema, simplemente debido a la naturaleza de cómo se manifiesta. Desde un inicio limpio, las cosas funcionan de maravilla. Desenchufe/nos enchufamos y quizás todavía un gran trabajo. Desenchufe/replug eventualmente causar el problema, y en ese momento CUALQUIER dispositivo USB en el puerto que no va a funcionar. Reinicio y cosas de un gran trabajo de nuevo.

4voto

Baarn Puntos 4579

Buenas noticias: usted no tiene ningún problema con el hardware. O software, permisos, etc.

La cuestión es, lo creas o no, exactamente lo que dice el mensaje de error:

the USB hardware ran out of device slots

Probablemente estás bajo la impresión de que algo como 127 dispositivos USB puede ser utilizado con un solo controlador, ya que es lo que todo el material de marketing, dice. Pero que en realidad sólo es cierto en un solo muy específicos y, probablemente, principalmente teóricos de configuración. USB dispositivos de apoyo, en un máximo de cinco conexiones en una diferenciación de estrellas de la jerarquía. Los bujes son de no atravesar los dispositivos, por lo que cuentan en contra de este número, al igual que cualquiera de los componentes internos que utilizan el bus USB y todos los dispositivos que utilizan más de un perfil de dispositivo (incluso si es sólo una sola físico de conexión).

¿Cómo podría yo saber que usted no tiene un problema con el hardware, aunque?
Por qué, porque yo tengo la misma máquina, y yo era capaz de reproducir el error!

screenshot


Si el problema parece ser esporádica probablemente esté ejecutando en un par de cuestiones:

  • Mierda, incompatible chipsets en los centros, dado que la norma no tiene aplicación.

  • Alimentación insuficiente: más rápido USB velocidades requieren más energía que la más lenta.
    Si un dispositivo tiene la capacidad para volver a caer a una velocidad más lenta (en lugar de error debido a la insuficiencia de poder), lo hará, de tomar algo en el mismo bus con él.

Si usted no desea ver este error de nuevo:

  • Deseche cualquier concentradores USB y los cables que está utilizando actualmente. Muertos graves.
  • Caída de los $40-$80 para dos a cuatro de estos, más sin embargo muchos de estos que usted necesita.
    La mayoría de los USB 3 cables deben estar bien.
  • Especialmente teniendo en cuenta todos los dispositivos que se mencionan son de alta velocidad y no muy tolera errores, usted debe nunca confiar en el bus de alimentación y asegúrese de que el (Yep, una verruga de la pared para cada uno de los concentradores y dispositivo. Excepciones: teclados, ratones, etc.

  • Este último punto es especialmente cierto en el 11' MBA, que se suministra con un mísero 45W adaptador de alimentación y el equipo básicamente las necesidades de todos de que incluso con sólo una moderada carga de la CPU. Si usted tiene ese dinero, considere la compra de un 60W o 85W adaptador.

  • En la práctica max, dispositivos/hub conectado en un solo centro es de 2 + otro concentrador.
  • Utilice siempre de 4 puertos hubs, no 7-puerto. 7-concentradores de puertos, y son sólo dos de los controladores en una cadena.
    Pero usted no sabe que puertos se conectan a la primera concentrador o el segundo!
    (Sin mirar en el perfil de Sistema.)

  • En caso de duda, prefiero el puerto USB de la placa lógica (a la derecha). Hay una posibilidad remota de que no hay interferencia en el I/O board. Por suerte, que no es una pieza cara.

Siga los pasos y yo, básicamente, la garantía de este problema desaparecerá.


Edit: el hardware/núcleo punto de vista del desarrollo

Para responder a la aclaración de que este es un desarrollador pregunta.

Por lo tanto: El registro fragmento publicado hace indicar lo que se ha explicado más arriba: demasiados dispositivos USB 3.0 conectado a la root XHCI hub.

(El qs77 chipset soporta 4, y hay 2 en uso dentro de la máquina.)

Para "restablecer el XHCI controlador" (técnicamente es un kernel, no controladora, problema):

sudo kextunload -b com.apple.driver.AppleUSBXHCI
sudo kextload -b com.apple.driver.AppleUSBXHCI

sin embargo, eso no va a hacer nada si esto está ocurriendo con dispositivos USB 2 así, en el que caso de que su:

sudo kextunload -b com.apple.driver.AppleUSBEHCI
sudo kextload -b com.apple.driver.AppleUSBEHCI

y si ambos, bien, ninguno de esos.

Cuando digo que puede reproducir el problema, me refiero a que si yo sobrecarga de la XHCI de autobuses como en el registro de fragmento, me sale el mismo mensaje de error. Y yo no estaba suponiendo necesariamente se utiliza un mal hub - de la misma manera que usted puede ser que necesite para obtener una buena, porque el concentrador root tiene demasiadas conexiones.

Más allá de eso, sin embargo, creo que estamos entrando en el reino de una wiki pregunta para el efecto de:

¿Cómo puedo depurar el núcleo y los controladores de dispositivo en Mac OS X?

Como eso es más que el tema, nada que ver con el MacBook Air de por sí, o incluso necesariamente USB.

Yo podría probar mi mano en la escritura de uno (no es mi experiencia, pero yo lo he hecho un par de veces), Pero probablemente va a ser un par de días para que. Mientras tanto, echa un vistazo a:

man 8 kext_logging y sudo sysctl -w debug.kextlog=0xlogspec

kextstat | grep USB

El IOUSBFamily de origen.


1voto

Tony Williams Puntos 4903

Sería seguro asumir que migrar el sistema operativo de su vieja Mac en la nueva MBA y que se ha actualizado el sistema operativo en lugar de hacer una instalación limpia? O tal vez migrados los usuarios o aplicaciones.

Sospecho que un nivel extremadamente bajo OS problema. Si usted tiene un disco duro externo, a continuación, poner una marca nuevo sistema operativo instalar en él y arrancar desde el que durante unos días y ver si el problema desaparece. Si lo hace, a continuación, hacer una instalación limpia en el MBA y migrar nada, copia de sus datos, y sólo instalar su mayoría necesaria aplicaciones de instalar los medios de comunicación en lugar de su antiguo sistema operativo. Bien podría ser que tenga algo de desagradable o roto aplicación que está causando el problema, por lo agregue de nuevo lentamente y siempre de nuevo instalar los archivos.

1voto

Macmaniman Puntos 1258

definitivamente software.

solución fácil sería:

hacer una máquina del tiempo de copia de seguridad, a continuación, el formato de su unidad de disco duro y, a continuación, volver a instalar su sistema operativo.

cuando esto se hace para crear una nueva cuenta

cuando la cuenta está configurada, inicie la herramienta de migración y seleccione la carpeta de inicio, y tratar de omitir algo sin importancia

hecho, esta casi seguro solucionar su problema de forma permanente

(diskmaker) x) de una gran utilidad para crear un disco de arranque de los mavericks de unidad, de modo que usted no tiene que descargar mountain lion primero! si vas con este enfoque el uso de alt en lugar de cmd+R

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