Exercício 4 – Identificar problemas com dispositivos USB
Os controladores de host USB só podem desligar depois que todos os dispositivos conectados a eles tiverem entrado em um estado de baixa energia. Isso significa que os dispositivos USB devem dar suporte à suspensão seletiva em dispositivos em espera modernos para garantir que o SoC possa inserir DRIPS enquanto a tela estiver desativada.
Parte 1: Usar um relatório SleepStudy para identificar problemas
Baixe o relatório desleepstudy-report_2.html pré-gerado aqui.
Abra sleepstudy-report_2.html com seu navegador favorito.
- Observe que o sistema é capaz de consumir apenas 120 mW durante o modo de espera (por exemplo, consulte Sessão em espera 6).
Clique em Sessão 10. O sistema consome 2,83 Watts de energia durante 11 minutos e a % de DRIPS é 0.
Olhe para a tabela Dos Principais Infratores .
O controlador de host USB (_SB. PCI0. XHC) está ativo por 99% da duração da sessão.
XHC é o controlador de host USB 3.0.
Quando o controlador de barramento USB está ativo por minutos de cada vez no Modo de Espera Moderno, isso geralmente significa que um dispositivo USB anexado ao barramento não está entrando em suspensão seletiva, possivelmente porque não dá suporte à suspensão seletiva. A próxima etapa lógica é determinar qual dispositivo USB permanecerá em D0 examinando um rastreamento ETL.
Para obter mais informações sobre a suspensão seletiva, consulte o tópico Suspensão Seletiva de USB no MSDN.
Parte 2: Usar um rastreamento ETL para identificar problemas
Para continuar a investigação usb, um rastreamento ETL foi capturado no mesmo sistema em que o SleepStudy foi gerado.
Para investigar problemas de USB, você usará o grafo DState e a tabela.
Baixe o rastreamento USBProblem.etl pré-gerado aqui.
Abra USBProblem.etl com WPA.
Arraste e solte o grafo DRIPS na guia análise .
Examine os motivos que não são de gotejamentos e localize o controlador host xHCI USB como um dispositivo que impede que o sistema insira DRIPS.
Você pode ver que o dispositivo está ativo por 98% do rastreamento (conforme mostrado na coluna % De tempo de motivo ).
Amplie a região em que o controlador de host xHCI USB está ativo.
Selecione o dispositivo na tabela.
Clique com o botão direito do mouse no intervalo azul claro no grafo e selecione zoom.
O % de tempo de motivo agora deve ser de 100%.
Localize o grafo Dstate do Dispositivo na categoria Power da Explorer do Graph.
Arraste e solte o grafo Dstate do Dispositivo na guia análise .
O gráfico DState do Dispositivo mostra os Estados D efetivos dos dispositivos ao longo do tempo. Você pode usar os dados para determinar se um dispositivo específico entra no estado D apropriado enquanto o sistema está em modo de espera moderno.
Tipo poFx: usado para dispositivos gerenciados pelo Windows Power Management Framework.
Tipo não PoFx: usado para dispositivos conectados a USB.
Mova a coluna DState para a direita ao lado da coluna Tipo . Seu visor deve ter esta aparência:
Expanda a categoria Não PoFX .
Expanda a linha Dstate com o valor de 0x0 (estado D0 ou ativo).
Classifique pela coluna Nome e localize os dispositivos USB.
Os dados na tabela de estado D mostram que, enquanto o sistema estava em espera, um dispositivo composto USB ainda estava no estado D0 por 100% do tempo. A ID de hardware do dispositivo composto é USB\VID_0BB4&PID_0BA1\00000015B42EE80F0000000000000000. Esse é o dispositivo que estava impedindo o controlador XHCI de desligar.
Se o dispositivo for gerenciado por um driver criado pela Microsoft, relate o problema à Microsoft. Caso contrário, essas informações devem ser relatadas ao fornecedor de hardware que possui o driver para encontrar uma solução e garantir que o dispositivo entre em suspensão seletiva.