PCI.EXE: A powerful sniffing utility: Difference between revisions

From OS2World.Com Wiki
Jump to navigation Jump to search
No edit summary
Line 335: Line 335:


As you can see, even more technical information is displayed. Since this article only serves to inform about the basic pci.exe routines in the prospect of os2warp.be Technical Support, we shan't discuss these additional lines.
As you can see, even more technical information is displayed. Since this article only serves to inform about the basic pci.exe routines in the prospect of os2warp.be Technical Support, we shan't discuss these additional lines.
[[Category:Software Reviews]]

Revision as of 03:22, 13 June 2014

By OS2Warp.be


PCI.EXE, also know as Merlin's PCI Hardware Sniffer, is a utility that basically produces a report of the AGP and PCI devices that are present in a PC, including the system chipsets, and besides that a whole range of other valuable information is reported such as system resource usage (IRQs, Memory ranges, etc), capabilities (busmastering, caching), and much much more. A text-file PCIDEVS.TXT lists thousands of known vendors, devices and subsystems, which PCI.EXE will refer to and display the info from. PCI.EXE covers all PCI device derivitives, including PCI 64-bit and 66MHz options, AGP (all speeds), CompactPCI, CardBus and PCI-X. The reason os2warp.be is so fond of the PCI.EXE utility for the purpose of Support Services is because it gives us a clear look at how your computer is configured (IRQs, configuration, devices, chipsets etc.). Most of the time, PCI.EXE allows us to find out which chipsets are embedded on devices in your computer, making use of only two numerical hexadecimal values: vendor and device ID. The former is a four-digit number that specifies the manufacturer of the device. The latter specifies the chipset itself. Based on all this overwhelming amount of information pci.exe offers, we can have a clear view of the state your computer is currently in.

You can download pci.exe from os2warp.be at this url: http://www.os2warp.be/os2/hardware/pci048vk.zip.

You can launch pci.exe with several switches. For a complete list of all switches available, launch pci.exe with the switch /?. In what follows, we will talk about the two pci.exe commands that are of importance for os2warp.be Technical Support:

1. PCI.EXE /S

The screenshots below illustrate what this command displays on the screen. The /S switch is short for Summary Mode. When posting support requests at http://www.os2warp.be/support/, you must include the output of this command in the field provided for it. For each record in the output, you will be able to distinguish one or more lines containing vital information about your computer:

  1. The first line displays the hexadecimal Vendor ID, followed by the name of the Manufacturer;
  2. The second line displays the hexadecimal Device ID, followed by the official name of the device, if the device is included in the PCIDEVS.TXT file. If a particular device is not included, pci.exe will only display the Device ID and/or guess the name of a device. If a guess is made, pci.exe will report this clearly;
  3. Third and fourth line display additional ID information, which is only of interest for Technical Support, and not for the regular OS/2 user;
  4. And finally, the fifth line displays the system (OS/2) IRQ, followed by the hardware IRQ.

And completely at the end of the PCI.EXE report, you can see the IRQ usage. This is very interesting to resolve any possible IRQ conflicts to to sharing them. The pci.exe IRQ reporting is far superior over the classic OS/2 command rmview /irq, since, the latter sometimes fails to report multiple devices using the same IRQ. For each device, pci.exe shows both software and hardware IRQs. However, in the list at the end of the pci.exe output, only the software IRQs are displayed.

2. PCI.EXE

And this is the pci.exe output in full mode (produced by command pci.exe from an OS/2 Command Prompt):

   Craig Hart's PCI+AGP bus sniffer, version 0.48vk, freeware made in 1996-2003.
   PCI BIOS Version 2.10 found!
   Number of PCI Busses : 3
   PCI Characteristics : Config Mechanism 1 Special Cycle Mechanism 1
   Searching for PCI Devices using the OEMHLP$ driver
   Vendor 8086h Intel Corporation
   Device 1A30h 82845MP Brookdale Host-Hub Interface Bridge (B0-step)
   Command 0006h (Memory Access, BusMaster)
   Status 2090h (Has Capabilities List, Supports Back-To-Back Trans., Received Master Abort, Fast Timing)
   Revision 04h, Header Type 00h, Bus Latency 00h
   Self test 00h (Self test not supported)
   PCI Class Bridge, type PCI to HOST
   Subsystem ID 1A308086h Unknown (Generic ID)
   Subsystem Vendor 8086h Intel Corporation
   Address 0 is a Memory Address (anywhere in 0-4Gb, Prefetchable) : E8000000h
   New Capabilities List Present:
   Vendor-Dependant Capability
   AGP Capability, Version 2.0 (AGP 4x and below support)
   AGP Speed(s) Supported : 1x 2x 4x
   FW Transfers Supported : Yes
   >4Gb Address Space Supported : No
   Sideband Addressing Supported : Yes
   Maximum Command Queue Length : 32 bytes
   AGP Speed Selected : 4x
   FW Transfers Enabled : Yes
   >4Gb Address Space Enabled : No
   AGP Enabled : Yes
   Sideband Addressing Enabled : No
   Current Command Queue Length : 1 byte
   Vendor 8086h Intel Corporation
   Device 1A31h 82845 Brookdale Host-AGP Bridge (B0-step)
   Command 0107h (I/O Access, Memory Access, BusMaster, System Errors)
   Status 00A0h (Supports 66MHz, Supports Back-To-Back Trans., Fast Timing)
   Revision 04h, Header Type 01h, Bus Latency 40h
   Self test 00h (Self test not supported)
   PCI Class Bridge, type PCI to PCI
   PCI Bridge Information:
   Primary Bus Number 0, Secondary Bus Number 1, Subordinate bus number 1
   Secondary Bus Command 000Eh (ISA mapping, VGA mapping)
   Secondary Bus Status 22A0h (Supports 66MHz, Supports Back-To-Back Trans., Received Master Abort, Medium Timing)
   Secondary Bus Latency 20h
   I/O Port Range Passed to Secondary Bus : None
   Memory Range Passed to Secondary Bus : EC000000h to EDFFFFFFh
   Prefectchable Memory Range Passed to Secondary Bus : E0000000h to E7FFFFFFh
   Vendor 8086h Intel Corporation
   Device 244Eh 82801BA Hub Interface to PCI Bridge (ICH2 B5 step)
   Command 0107h (I/O Access, Memory Access, BusMaster, System Errors)
   Status 0080h (Supports Back-To-Back Trans., Fast Timing)
   Revision 05h, Header Type 01h, Bus Latency 00h
   Self test 00h (Self test not supported)
   PCI Class Bridge, type PCI to PCI
   PCI Bridge Information:
   Primary Bus Number 0, Secondary Bus Number 2, Subordinate bus number 2
   Secondary Bus Command 0006h (ISA mapping)
   Secondary Bus Status 2280h (Supports Back-To-Back Trans., Received Master Abort, Medium Timing)
   Secondary Bus Latency 20h
   I/O Port Range Passed to Secondary Bus : 9000h to AFFFh (16-bit)
   Memory Range Passed to Secondary Bus : EE000000h to EFFFFFFFh
   Vendor 8086h Intel Corporation
   Device 2440h 82801BA LPC Interface (ICH2 B5 step)
   Command 000Fh (I/O Access, Memory Access, BusMaster, Special Cycles)
   Status 0280h (Supports Back-To-Back Trans., Medium Timing)
   Revision 05h, Header Type 80h, Bus Latency 00h
   Self test 00h (Self test not supported)
   PCI Class Bridge, type PCI to ISA
   Vendor 8086h Intel Corporation
   Device 244Bh 82801BA UltraATA/100 IDE Controller (ICH2 B5 step)
   Command 0005h (I/O Access, BusMaster)
   Status 0280h (Supports Back-To-Back Trans., Medium Timing)
   Revision 05h, Header Type 00h, Bus Latency 00h
   Self test 00h (Self test not supported)
   PCI Class Storage, type IDE
   PCI EIDE Controller Features :
   BusMaster EIDE is supported
   Primary Channel is at I/O Port 01F0h and IRQ 14
   Secondary Channel is at I/O Port 0170h and IRQ 15
   Subsystem ID 24428086h 82801BA (ICH2) UltraDMA/100 IDE Controller (Guess Only!)
   Subsystem Vendor 8086h Intel Corporation
   Address 4 is an I/O Port : 0000F000h
   Vendor 8086h Intel Corporation
   Device 2442h 82801BA/BAM USB Controller #1 (ICH2/ICH2-M B5 step)
   Command 0005h (I/O Access, BusMaster)
   Status 0280h (Supports Back-To-Back Trans., Medium Timing)
   Revision 05h, Header Type 00h, Bus Latency 00h
   Self test 00h (Self test not supported)
   PCI Class Serial, type USB (UHCI)
   Subsystem ID 24428086h 82801BA/BAM (ICH2) USB Universal Host Controller (Guess Only!) (Generic ID)
   Subsystem Vendor 8086h Intel Corporation
   Address 4 is an I/O Port : 0000B000h
   System IRQ 9, INT# D
   Vendor 8086h Intel Corporation
   Device 2443h 82801BA/BAM SMBus Controller (ICH2/ICH2-M B5 step)
   Command 0001h (I/O Access)
   Status 0280h (Supports Back-To-Back Trans., Medium Timing)
   Revision 05h, Header Type 00h, Bus Latency 00h
   Self test 00h (Self test not supported)
   PCI Class Serial, type SMBus Controller
   Subsystem ID 24428086h Unknown
   Subsystem Vendor 8086h Intel Corporation
   Address 4 is an I/O Port : 00000500h
   System IRQ 10, INT# B
   Vendor 8086h Intel Corporation
   Device 2444h 82801BA/BAM USB Controller #2 (ICH2/ICH2-M B5 step)
   Command 0005h (I/O Access, BusMaster)
   Status 0280h (Supports Back-To-Back Trans., Medium Timing)
   Revision 05h, Header Type 00h, Bus Latency 00h
   Self test 00h (Self test not supported)
   PCI Class Serial, type USB (UHCI)
   Subsystem ID 24428086h 82801BA/BAM (ICH2) USB Universal Host Controller (Guess Only!)
   Subsystem Vendor 8086h Intel Corporation
   Address 4 is an I/O Port : 0000B800h
   System IRQ 3, INT# C
   Vendor 10DEh Nvidia Corp
   Device 0110h GeForce2 MX/MX 400 [NV11]
   Command 0007h (I/O Access, Memory Access, BusMaster)
   Status 02B0h (Has Capabilities List, Supports 66MHz, Supports Back-To-Back Trans., Medium Timing)
   Revision B2h, Header Type 00h, Bus Latency 20h
   Self test 00h (Self test not supported)
   PCI Class Display, type VGA
   Address 0 is a Memory Address (anywhere in 0-4Gb) : EC000000h
   Address 1 is a Memory Address (anywhere in 0-4Gb, Prefetchable) : E0000000h
   System IRQ 5, INT# A
   Expansion ROM of 64Kb decoded by this card
   New Capabilities List Present:
   Power Management Capability
   Supports power state D1
   Current Power State : D0 (Device operational, no power saving)
   AGP Capability, Version 2.0 (AGP 4x and below support)
   AGP Speed(s) Supported : 1x 2x 4x
   FW Transfers Supported : Yes
   >4Gb Address Space Supported : No
   Sideband Addressing Supported : No
   Maximum Command Queue Length : 32 bytes
   AGP Speed Selected : 4x
   FW Transfers Enabled : Yes
   >4Gb Address Space Enabled : No
   AGP Enabled : Yes
   Sideband Addressing Enabled : No
   Current Command Queue Length : 1 byte
   Vendor 9004h Adaptec Inc
   Device 6178h AIC-7861 AHA-2940AU PCI SCSI Controller
   Command 0007h (I/O Access, Memory Access, BusMaster)
   Status 0290h (Has Capabilities List, Supports Back-To-Back Trans., Medium Timing)
   Revision 03h, Header Type 00h, Bus Latency 20h
   Self test 00h (Self test not supported)
   Cache line size 32 Bytes (8 DWords)
   PCI Class Storage, type SCSI
   Subsystem ID 78619004h AHA-2940AU Single
   Subsystem Vendor 9004h Adaptec Inc
   Address 0 is an I/O Port : 00009000h
   Address 1 is a Memory Address (anywhere in 0-4Gb) : EF000000h
   System IRQ 10, INT# A
   Expansion ROM of 64Kb decoded by this card
   New Capabilities List Present:
   Power Management Capability
   Current Power State : D0 (Device operational, no power saving)
   Vendor 10ECh Realtek Semiconductor
   Device 8139h RT8139 (A/B/C/8130) Fast Ethernet Adapter
   Command 0007h (I/O Access, Memory Access, BusMaster)
   Status 0290h (Has Capabilities List, Supports Back-To-Back Trans., Medium Timing)
   Revision 10h, Header Type 00h, Bus Latency 20h
   Self test 00h (Self test not supported)
   PCI Class Network, type Ethernet
   Subsystem ID 813910ECh RT8139 (A/B/C/8130) Fast Ethernet Adapter (Generic ID)
   Subsystem Vendor 10ECh Realtek Semiconductor
   Address 0 is an I/O Port : 00009400h
   Address 1 is a Memory Address (anywhere in 0-4Gb) : EF001000h
   System IRQ 5, INT# A
   New Capabilities List Present:
   Power Management Capability
   Supports power state D1
   Current Power State : D0 (Device operational, no power saving)
   Vendor 1102h Creative Labs
   Device 0002h EMU10K1 Audio Chipset (SB Live!)
   Command 0005h (I/O Access, BusMaster)
   Status 0290h (Has Capabilities List, Supports Back-To-Back Trans., Medium Timing)
   Revision 07h, Header Type 80h, Bus Latency 20h
   Self test 00h (Self test not supported)
   PCI Class Multimedia, type Audio
   Subsystem ID 80641102h SB0102 SBLive! 5.1
   Subsystem Vendor 1102h Creative Labs
   Address 0 is an I/O Port : 00009800h
   System IRQ 11, INT# A
   New Capabilities List Present:
   Power Management Capability
   Current Power State : D0 (Device operational, no power saving)
   Vendor 1102h Creative Labs
   Device 7002h PCI Gameport
   Command 0005h (I/O Access, BusMaster)
   Status 0290h (Has Capabilities List, Supports Back-To-Back Trans., Medium Timing)
   Revision 07h, Header Type 80h, Bus Latency 20h
   Self test 00h (Self test not supported)
   PCI Class Input, type Other
   Subsystem ID 00201102h PCI Gameport
   Subsystem Vendor 1102h Creative Labs
   Address 0 is an I/O Port : 00009C00h
   New Capabilities List Present:
   Power Management Capability
   Current Power State : D0 (Device operational, no power saving)
   Vendor 1106h VIA Technologies Inc
   Device 3038h VT6202 USB Controller
   Command 0007h (I/O Access, Memory Access, BusMaster)
   Status 0210h (Has Capabilities List, Medium Timing)
   Revision 50h, Header Type 80h, Bus Latency 20h
   Self test 00h (Self test not supported)
   Cache line size 32 Bytes (8 DWords)
   PCI Class Serial, type USB (UHCI)
   Subsystem ID 12340925h VIA USB Controller
   Subsystem Vendor 0925h Known Bad Subsystem ID - no Vendor ID Available
   Address 4 is an I/O Port : 0000A000h
   System IRQ 4, INT# A
   New Capabilities List Present:
   Power Management Capability
   Supports power state D1
   Current Power State : D0 (Device operational, no power saving)
   Vendor 1106h VIA Technologies Inc
   Device 3038h VT6202 USB Controller
   Command 0007h (I/O Access, Memory Access, BusMaster)
   Status 0210h (Has Capabilities List, Medium Timing)
   Revision 50h, Header Type 80h, Bus Latency 20h
   Self test 00h (Self test not supported)
   Cache line size 32 Bytes (8 DWords)
   PCI Class Serial, type USB (UHCI)
   Subsystem ID 12340925h VIA USB Controller
   Subsystem Vendor 0925h Known Bad Subsystem ID - no Vendor ID Available
   Address 4 is an I/O Port : 0000A400h
   System IRQ 3, INT# B
   New Capabilities List Present:
   Power Management Capability
   Supports power state D1
   Current Power State : D0 (Device operational, no power saving)
   Vendor 1106h VIA Technologies Inc
   Device 3104h VT6202 USB 2.0 Enhanced Host Controller
   Command 0007h (I/O Access, Memory Access, BusMaster)
   Status 0210h (Has Capabilities List, Medium Timing)
   Revision 51h, Header Type 80h, Bus Latency 20h
   Self test 00h (Self test not supported)
   Cache line size 32 Bytes (8 DWords)
   PCI Class Serial, type USB (EHCI)
   Subsystem ID 12340925h VT6202 USB 2.0 Enhanced Host Controller
   Subsystem Vendor 0925h Known Bad Subsystem ID - no Vendor ID Available
   Address 0 is a Memory Address (anywhere in 0-4Gb) : EF002000h
   System IRQ 11, INT# C
   New Capabilities List Present:
   Power Management Capability
   Supports power state D1
   Current Power State : D0 (Device operational, no power saving)
   Vendor 10B7h 3COM Corp, Networking Division
   Device 9200h 3C905C-TX Fast Etherlink for PC Management NIC
   Command 0007h (I/O Access, Memory Access, BusMaster)
   Status 0210h (Has Capabilities List, Medium Timing)
   Revision 74h, Header Type 00h, Bus Latency 20h
   Self test 00h (Self test not supported)
   Cache line size 32 Bytes (8 DWords)
   PCI Class Network, type Ethernet
   Subsystem ID 100010B7h 3C905C-TX Fast Etherlink for PC Management NIC
   Subsystem Vendor 10B7h 3COM Corp, Networking Division
   Address 0 is an I/O Port : 0000A800h
   Address 1 is a Memory Address (anywhere in 0-4Gb) : EF003000h
   System IRQ 3, INT# A
   Expansion ROM of 128Kb decoded by this card
   New Capabilities List Present:
   Power Management Capability
   Supports power state D1
   Current Power State : D0 (Device operational, no power saving)
   ROM PCI IRQ routing table Windows 9x Compatibility Tests....
   ROM IRQ routing table found at F000h:DEA0h
   Table Version 1.0 - OK
   Table size 224 bytes - OK
   Table Checksum 9Ah - OK
   IRQ's dedicated to PCI : 3,4,5,9,10,11
   The ROM PCI IRQ routing table appears to be OK.
   IRQ Summary: IRQs 3,4,5,9,10,11,14,15 are used by PCI devices
   Shared IRQs: IRQ 3 is shared by 3 PCI Devices
   IRQ 5 is shared by 2 PCI Devices
   IRQ 10 is shared by 2 PCI Devices
   IRQ 11 is shared by 2 PCI Devices

As you can see, even more technical information is displayed. Since this article only serves to inform about the basic pci.exe routines in the prospect of os2warp.be Technical Support, we shan't discuss these additional lines.