Conectei um hub onboard ao meu microprocessador. O hub onboard é USB2514B e o microprocessador é um STM32MP1.
Posso especificar a conexão com o hub integrado usando OHCI (Open Host Controller Interface), mas então recebo mensagens de erro.
usb 1-1.4: device descriptor read/64, error -62
usb 1-1-port4: unable to enumerate USB device
Isso significa que o OHCI (USB 1.1) não pode se comunicar com o USB2514B, que requer a especificação USB 2.0.
Mas se eu conectar meu hub integrado usando EHCI (Enhanced Host Controller Interface), que é USB 2.0.
Então no Linux não terei erros sobre nenhuma descrição de dispositivo. O meu lsusb
fica assim:
>> lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Pergunta:
Isso significa que este 1d6b:0002
é o hub USB2514B ou que é o USB interno do processador?
Estou procurando uma maneira de confirmar se tenho conexão com meu USB2514B ou se lsusb
só mostra minha conexão USB interna do processador.
NOTA: Este hub USB integrado não requer nenhuma interface de comunicação externa, como SMDbus, I2C ou outra. Apenas conexão USB simples + configuração de árvore de dispositivos Linux.
&usbh_ehci{
status = "okay";
/* USER CODE BEGIN usbh_ehci */
phys = <&usbphyc_port1>;
#address-cells = <1>;
#size-cells = <0>;
/* onboard HUB */
hub@1 {
compatible = "usb424,2514";
reg = <1>;
vdd-supply = <&v3v3>;
};
/* USER CODE END usbh_ehci */
};
&usbh_ohci{
status = "disabled";
};
Fontes úteis:
Um hub é um hub e não fornece nenhuma informação sobre se é interno ou externo.
Um controlador de host é um controlador de host, e não um hub. Não confunda essas duas coisas!
Bem, você tem um controlador de host, com um hub raiz, e um hub extra. Como você não pode ver seu hub sem conectá-lo ao hub raiz, e você só vê uma entrada, você já sabe sua resposta. Seu hub IC não está funcionando corretamente ou não está conectado corretamente ao seu hub raiz.
Bem, aqui você vê que algo conectado à quarta porta do seu hub raiz (que é o primeiro barramento USB, dispositivo 1, então esse é o que
1-1
está lá, e o.4
é para a quarta porta) não está reagindo eletricamente. Isso não é uma coisa USB 1.1 vs USB 2.0; a descoberta ainda funcionaria. Então, você não conectou o hub IC corretamente, ou ele não está ligado, ou não está inicializando corretamente, possivelmente devido a uma configuração incorreta ou algo assim. Não podemos dizer a você - este é um problema em um nível completamente separado do seu sistema operacional. É um problema de hardware.