Partilhar via


!pci

A extensão !pci exibe o status atual dos barramentos PCI (Interconexão de Componente Periférico), bem como todos os dispositivos conectados a esses barramentos.

!pci [Flags [Segment] [Bus [Device [Function [MinAddress MaxAddress]]]]]

Parâmetros

Sinalizadores
Especifica o nível de saída. Pode ser qualquer combinação dos bits a seguir:

Bit 0 (0x1)
Causa uma exibição detalhada.

Bit 1 (0x2)
Faz com que a exibição inclua todos os barramentos no intervalo do barramento 0 (zero) até o barramento especificado.

Bit 2 (0x4)
Faz com que a exibição inclua informações no formato de byte bruto. Se MinAddress, MaxAddress ou bit de sinalizador 0x8 estiver definido, esse bit também será definido automaticamente.

Bit 3 (0x8)
Faz com que a exibição inclua informações no formato DWORD bruto.

Bit 4 (0x10)
Faz com que a exibição inclua números de dispositivo inválidos. Se Dispositivo for definido, esse sinalizador será ignorado.

Bit 5 (0x20)
Faz com que a exibição inclua números de função inválidos.

Bit 6 (0x40)
Faz com que a exibição inclua recursos.

Bit 7 (0x80)
Faz com que a exibição inclua informações específicas do dispositivo Intel 8086.

Bit 8 (0x100)
Faz com que a exibição inclua o espaço de configuração PCI.

Bit 9 (0x200)
Faz com que a exibição inclua informações de segmento. Quando esse bit é incluído, o parâmetro Segmento deve ser incluído.

Bit 10 (0x400)
Faz com que a exibição inclua todos os segmentos válidos no intervalo do segmento 0 até o segmento especificado. Quando esse bit é incluído, o parâmetro Segmento deve ser incluído.

Segmento
Especifica o número do segmento que será exibido. Os números de segmento variam de 0 a 0xFFFF. Se Segmento for omitido, serão exibidas as informações sobre o segmento principal (segmento 0). Se Sinalizadores incluir o bit 10 (0x400), o Segmento especificará o segmento válido mais alto que será exibido.

Autocarro
Especifica o barramento que será exibido. O Barramento pode variar de 0 a 0xFF. Se for omitido, serão exibidas as informações sobre o barramento primário (barramento 0). Se Sinalizadores incluir o bit 1 (0x2), o Barramento especificará o número de barramento mais alto que será exibido.

Dispositivo
Especifica o número do dispositivo de slot para o dispositivo. Se for omitido, serão impressas as informações sobre todos os dispositivos.

Função
Especifica o número da função de slot para o dispositivo. Se for omitido, serão impressas todas as informações sobre todas as funções do dispositivo.

Endereço mínimo
Especifica o primeiro endereço a partir do qual bytes brutos ou DWORDs serão exibidos. Precisa estar entre 0 e 0xFF.

Endereço máximo
Especifica o último endereço a partir do qual bytes brutos ou DWORDs serão exibidos. Precisa estar entre 0 e 0xFF, e não pode ser menor que MinAddress.

DLL

Kext.dll

Esse comando de extensão só pode ser usado com um computador de destino baseado em x86.

Informações Adicionais

Consulte Depuração Plug and Play para ver aplicativos desse comando de extensão e alguns outros exemplos. Para ver informações sobre barramentos PCI, consulte a documentação do Kit de Driver do Windows (WDK).

Comentários

Para editar o espaço de configuração PCI, use !ecb, !ecd ou !ecw.

O exemplo a seguir exibe uma lista de todos os barramentos e seus dispositivos. Levará muito tempo para executar esse comando. Você verá um contador em movimento na parte inferior da tela enquanto o depurador verifica o sistema de destino em busca de barramentos PCI:

kd> !pci 2 ff
PCI Bus 0
00:0  8086:1237.02  Cmd[0106:.mb..s]  Sts[2280:.....]  Device  Host bridge
0d:0  8086:7000.01  Cmd[0007:imb...]  Sts[0280:.....]  Device  ISA bridge
0d:1  8086:7010.00  Cmd[0005:i.b...]  Sts[0280:.....]  Device  IDE controller
0e:0  1011:0021.02  Cmd[0107:imb..s]  Sts[0280:.....]  PciBridge 0->1-1  PCI-PCI bridge
10:0  102b:0519.01  Cmd[0083:im....]  Sts[0280:.....]  Device  VGA compatible controller
PCI Bus 1
08:0  10b7:9050.00  Cmd[0107:imb..s]  Sts[0200:.....]  Device  Ethernet
09:0  9004:8178.00  Cmd[0117:imb..s]  Sts[0280:.....]  Device  SCSI controller

Este exemplo exibe informações detalhadas sobre os dispositivos no barramento primário. O número de dois dígitos no início de cada linha é o número do dispositivo. O número de dígito único que vem depois dele é o número da função:

kd> !pci 1 0
PCI Bus 0
00:0  8086:1237.02  Cmd[0106:.mb..s]  Sts[2280:.....]  Device  Host bridge
      cf8:80000000  IntPin:0  IntLine:0  Rom:0  cis:0  cap:0

0d:0  8086:7000.01  Cmd[0007:imb...]  Sts[0280:.....]  Device  ISA bridge
      cf8:80006800  IntPin:0  IntLine:0  Rom:0  cis:0  cap:0

0d:1  8086:7010.00  Cmd[0005:i.b...]  Sts[0280:.....]  Device  IDE controller
      cf8:80006900  IntPin:0  IntLine:0  Rom:0  cis:0  cap:0
      IO[4]:fff1       

0e:0  1011:0021.02  Cmd[0107:imb..s]  Sts[0280:.....]  PciBridge 0->1-1  PCI-PCI bridge
      cf8:80007000  IntPin:0  IntLine:0  Rom:0  cap:0  2sts:2280  BCtrl:6 ISA
      IO:f000-ffff  Mem:fc000000-fdffffff  PMem:fff00000-fffff

10:0  102b:0519.01  Cmd[0083:im....]  Sts[0280:.....]  Device  VGA compatible controller
      cf8:80008000  IntPin:1  IntLine:9  Rom:80000000  cis:0  cap:0
      MEM[0]:fe800000  MPF[1]:fe000008  

Este exemplo mostra informações ainda mais detalhadas sobre o barramento 0 (zero), o dispositivo 0x0D e a função 0x1, incluindo o DWORDS bruto de endereços entre 0x00 e 0x3F:

kd> !pci f 0 d 1 0 3f
PCI Bus 0
0d:1  8086:7010.00  Cmd[0005:i.b...]  Sts[0280:.....]  Device  IDE controller
      cf8:80006900  IntPin:0  IntLine:0  Rom:0  cis:0  cap:0
      IO[4]:fff1       
      00000000:  70108086 02800005 01018000 00002000
      00000010:  00000000 00000000 00000000 00000000
      00000020:  0000fff1 00000000 00000000 00000000
      00000030:  00000000 00000000 00000000 00000000

Este exemplo exibe o espaço de configuração do segmento 1, barramento 0 e dispositivo 1:

0: kd> !pci 301 1 0 1

PCI Configuration Space (Segment:0001 Bus:00 Device:01 Function:00)
Common Header:
    00: VendorID       14e4 Broadcom Corporation
    02: DeviceID       16c7
    04: Command        0146 MemSpaceEn BusInitiate PERREn SERREn
    06: Status         02b0 CapList 66MHzCapable FB2BCapable DEVSELTiming:1
.
.
.
    5a: MsgCtrl        64BitCapable MultipleMsgEnable:0 (0x1) MultipleMsgCapable:3 (0x8)
    5c: MsgAddr        2d4bff00
    60: MsgAddrHi      1ae09097
    64: MsData         9891

Para exibir todos os dispositivos e barramentos em segmentos válidos, execute o comando !pci 602 ffff ff:

0: kd> !pci 602 ffff ff
Scanning the following PCI segments: 0 0x1
PCI Segment 0 Bus 0
01:0  14e4:16c7.10  Cmd[0146:.mb.ps]  Sts[02b0:c6...]  Ethernet Controller  SubID:103c:1321
02:0  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
02:1  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
03:0  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
03:1  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
PCI Segment 0 Bus 0x38
01:0  14e4:1644.12  Cmd[0146:.mb.ps]  Sts[02b0:c6...]  Ethernet Controller  SubID:10b7:1000
PCI Segment 0 Bus 0x54
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0x54->0x55-0x55
PCI Segment 0 Bus 0x70
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0x70->0x71-0x71
PCI Segment 0 Bus 0xa9
01:0  8086:b154.00  Cmd[0147:imb.ps]  Sts[0ab0:c6.A.]  Intel PCI-PCI Bridge 0xa9->0xaa-0xaa
PCI Segment 0 Bus 0xaa
04:0  1033:0035.41  Cmd[0146:.mb.ps]  Sts[0210:c....]  NEC USB Controller  SubID:103c:1293
04:1  1033:0035.41  Cmd[0146:.mb.ps]  Sts[0210:c....]  NEC USB Controller  SubID:103c:aa55
04:2  1033:00e0.02  Cmd[0146:.mb.ps]  Sts[0210:c....]  NEC USB2 Controller  SubID:103c:aa55
05:0  1002:5159.00  Cmd[0187:imb..s]  Sts[0290:c....]  ATI VGA Compatible Controller  SubID:103c:1292
PCI Segment 0 Bus 0xc6
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0xc6->0xc7-0xc7
PCI Segment 0 Bus 0xe3
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0xe3->0xe4-0xe4
PCI Segment 0x1 Bus 0
01:0  14e4:16c7.10  Cmd[0146:.mb.ps]  Sts[02b0:c6...]  Ethernet Controller  SubID:103c:1321
02:0  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
02:1  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
03:0  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
03:1  1000:0030.08  Cmd[0147:imb.ps]  Sts[0230:c6...]  LSI SCSI Controller  SubID:103c:1323
PCI Segment 0x1 Bus 0x54
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0x54->0x55-0x55
PCI Segment 0x1 Bus 0x55
00:0  8086:10b9.06  Cmd[0147:imb.ps]  Sts[0010:c....]  Intel Ethernet Controller  SubID:8086:1083
PCI Segment 0x1 Bus 0x70
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0x70->0x71-0x71
PCI Segment 0x1 Bus 0xc6
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0xc6->0xc7-0xc7
PCI Segment 0x1 Bus 0xe3
00:0  103c:403b.00  Cmd[0547:imb.ps]  Sts[0010:c....]  HP PCI-PCI Bridge 0xe3->0xe4-0xe4