X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=pcilib.man;h=79a1b146e5956e7c07938eeaa415e70a53c86387;hb=c76c7b8811598e8e62500e6b2c06e9fc64a14a23;hp=7f5ac693d8bb4c2996d40988c811804f557826ce;hpb=9bd5b1cfd64cac0949dcb30b43192dfac1bf7f94;p=pciutils.git diff --git a/pcilib.man b/pcilib.man index 7f5ac69..79a1b14 100644 --- a/pcilib.man +++ b/pcilib.man @@ -1,5 +1,4 @@ .TH pcilib 7 "@TODAY@" "@VERSION@" "The PCI Utilities" -.IX pcilib .SH NAME pcilib \- a library for accessing PCI devices @@ -22,7 +21,8 @@ The .B /sys filesystem on Linux 2.6 and newer. The standard header of the config space is available to all users, the rest only to root. Supports extended configuration space, PCI domains, -VPD (from Linux 2.6.26) and information on attached kernel drivers. +VPD (from Linux 2.6.26), physical slots (also since Linux 2.6.26) and information on attached +kernel drivers. .TP .B linux-proc The @@ -32,14 +32,48 @@ to all users, the rest only to root. .TP .B intel-conf1 Direct hardware access via Intel configuration mechanism 1. Available on i386 and compatibles -on Linux, Solaris/x86, GNU Hurd and Windows. Requires root privileges. +on Linux, Solaris/x86, GNU Hurd, Windows, BeOS and Haiku. Requires root privileges. .TP .B intel-conf2 Direct hardware access via Intel configuration mechanism 2. Available on i386 and compatibles -on Linux, Solaris/x86, GNU Hurd and Windows. Requires root privileges. Warning: This method +on Linux, Solaris/x86, GNU Hurd, Windows, BeOS and Haiku. Requires root privileges. Warning: This method is able to address only the first 16 devices on any bus and it seems to be very unreliable in many cases. .TP +.B mmio-conf1 +Direct hardware access via Intel configuration mechanism 1 via memory-mapped I/O. +Mostly used on non-i386 platforms. Requires root privileges. Warning: This method +needs to be properly configured via the +.B mmio-conf1.addrs +parameter. +.TP +.B mmio-conf1-ext +Direct hardware access via Extended PCIe Intel configuration mechanism 1 via memory-mapped I/O. +Mostly used on non-i386 platforms. Requires root privileges. Warning: This method +needs to be properly configured via the +.B mmio-conf1-ext.addrs +parameter. +.TP +.B ecam +Direct hardware access via PCIe ECAM (Enhanced Configuration Access Mechanism). +Available on all PCIe-compliant hardware. Requires root privileges and access +to physical memory (on Linux systems disabled CONFIG_STRICT_DEVMEM option). On +ACPI compatible systems is ECAM mapping read from the MCFG table specified by the +.B ecam.acpimcfg +parameter. On EFI compatible systems, ACPI MCFG table can be located in physical +memory via EFI system table specified by the +.B ecam.efisystab +parameter. On FreeBSD/NetBSD systems, physical address of ACPI MCFG table can be +located by kenv or sysctl interface when the +.B ecam.bsd +parameter is not disabled. On x86 BIOS compatible systems, ACPI MCFG table can +be located in physical memory by scanning x86 BIOS memory when the +.B ecam.x86bios +parameter is not disabled. Alternatively ECAM mappings can be specified by the +.B ecam.addrs +parameter which takes precedence over ACPI MCFG table. This option is required +on systems without ACPI and also on systems without EFI or x86 BIOS. +.TP .B fbsd-device The .B /dev/pci @@ -62,6 +96,59 @@ device on OpenBSD. Requires root privileges. Read the contents of configuration registers from a file specified in the .B dump.name parameter. The format corresponds to the output of \fIlspci\fP \fB-x\fP. +.TP +.B darwin +Access method used on Mac OS X / Darwin. Must be run as root and the system +must have been booted with debug=0x144. +.TP +.B win32-cfgmgr32 +Device listing on Windows systems using the Windows Configuration Manager +via cfgmgr32.dll system library. This method does not require any special +Administrator rights or privileges. Configuration Manager provides only basic +information about devices, assigned resources and device tree structure. There +is no access to the PCI configuration space but libpci either tries to use +other access method to access configuration space or it provides read-only +virtual emulation based on information from Configuration Manager. Other +access method can be chosen by the +.B win32.cfgmethod +parameter. By default the first working one is selected (if any). Starting +with Windows 8 (NT 6.2) it is not possible to retrieve resources from 32-bit +application or library on 64-bit system. +.TP +.B win32-sysdbg +Access to the PCI configuration space via NT SysDbg interface on Windows +systems. Process needs to have Debug privilege, which local Administrators +have by default. Not available on 64-bit systems and neither on recent 32-bit +systems. Only devices from the first domain are accessible and only first +256 bytes of the PCI configuration space is accessible via this method. +.TP +.B win32-kldbg +Access to the PCI configuration space via Kernel Local Debugging Driver +kldbgdrv.sys. This driver is not part of the Windows system but is part of +the Microsoft WinDbg tool. It is required to have kldbgdrv.sys driver installed +in the system32 directory or to have windbg.exe or kd.exe binary in PATH. +kldbgdrv.sys driver has some restrictions. Process needs to have Debug privilege +and Windows system has to be booted with Debugging option. Debugging option can +be enabled by calling (takes effect after next boot): +.B bcdedit /debug on +.IP +Download links for WinDbg 6.12.2.633 standalone installer from Microsoft Windows +SDK for Windows 7 and .NET Framework 4: +.br +amd64: https://download.microsoft.com/download/A/6/A/A6AC035D-DA3F-4F0C-ADA4-37C8E5D34E3D/setup/WinSDKDebuggingTools_amd64/dbg_amd64.msi +.br +ia64: https://download.microsoft.com/download/A/6/A/A6AC035D-DA3F-4F0C-ADA4-37C8E5D34E3D/setup/WinSDKDebuggingTools_ia64/dbg_ia64.msi +.br +x86: https://download.microsoft.com/download/A/6/A/A6AC035D-DA3F-4F0C-ADA4-37C8E5D34E3D/setup/WinSDKDebuggingTools/dbg_x86.msi +.IP +Archived download links of previous WinDbg versions: +.br +https://web.archive.org/web/20110221133326/https://www.microsoft.com/whdc/devtools/debugging/installx86.mspx +.br +https://web.archive.org/web/20110214012715/https://www.microsoft.com/whdc/devtools/debugging/install64bit.mspx +.TP +.B aos-expansion +Access method used on PowerPC Amiga running OS4+. Access is made through Expansion.library. It offers read and write access to configuration space. .SH PARAMETERS @@ -90,6 +177,59 @@ Path to the procfs bus tree. .TP .B sysfs.path Path to the sysfs device tree. +.TP +.B devmem.path +Path to the /dev/mem device. +.TP +.B mmio-conf1.addrs +Physical addresses of memory-mapped I/O ports for Intel configuration mechanism 1. +CF8 (address) and CFC (data) I/O port addresses are separated by slash and +multiple addresses for different PCI domains are separated by commas. +Format: 0xaddr1/0xdata1,0xaddr2/0xdata2,... +.TP +.B mmio-conf1-ext.addrs +Physical addresses of memory-mapped I/O ports for Extended PCIe Intel configuration mechanism 1. +It has same format as +.B mmio-conf1.addrs +parameter. +.TP +.B ecam.addrs +Physical addresses of PCIe ECAM mappings. Each mapping must contains first PCI +bus number and physical address where mapping starts. And then it may contain +the length of the mapping, the last PCI bus number and PCI domain number. When +the last PCI bus number is not provided then it is calculated from the length +of the mapping or it is assumed 0xff. When length of the mapping is provided +then it is calculated from the last PCI bus number. And when PCI domain is not +provided then 0x0 is assumed. All numbers must be supplied in hexadecimal form +(leading prefix 0x is not required). Multiple mappings are separated by commas. +Format: [domain:]start_bus[-end_bus]:start_addr[+length],... +.TP +.B ecam.acpimcfg +Path to the ACPI MCFG table. Processed by the +.BR glob (3) +function, so it may contain wildcards (*). +.TP +.B ecam.efisystab +Path to the EFI system table. +.TP +.B ecam.bsd +When not set to 0 then use BSD kenv or sysctl to find ACPI MCFG table. Default +value is 1 on BSD systems. +.TP +.B ecam.x86bios +When not set to 0 then scan x86 BIOS memory for ACPI MCFG table. Default value +is 1 on x86 systems. +.TP +.B win32.cfgmethod +Config space access method to use with win32-cfgmgr32 on Windows systems. Value +.I auto +or an empty string selects the first access method which supports access +to the config space on Windows. Value +.I win32-cfgmgr32 +or +.I none +only builds a read-only virtual emulated config space with information from the +Configuration Manager. .SS Parameters for resolving of ID's via DNS .TP @@ -97,12 +237,20 @@ Path to the sysfs device tree. DNS domain containing the ID database. .TP .B net.cache_name -Name of the file used for caching of resolved ID's. +Name of the file used for caching of resolved ID's. An initial +.B ~/ +is expanded to the user's home directory. + +.SS Parameters for resolving of ID's via UDEV's HWDB +.TP +.B hwdb.disable +Disable use of HWDB if set to a non-zero value. .SH SEE ALSO .BR lspci (8), .BR setpci (8), +.BR pci.ids (5), .BR update-pciids (8) .SH AUTHOR