{
    "content": [
        {
            "type": "text",
            "text": "# lspci (man)\n\n## NAME\n\nlspci - list all PCI devices\n\n## SYNOPSIS\n\nlspci [options]\n\n## DESCRIPTION\n\nlspci  is a utility for displaying information about PCI buses in the system and devices con‐\nnected to them.\n\n## TLDR\n\n> List all PCI devices.\n\n- Show a brief list of devices:\n  `lspci`\n- Display [v]erbose information (Note: the `-v` flag can be repeated to increase verbosity):\n  `lspci -v`\n- Display [k]ernel drivers and modules handling each device:\n  `lspci -k`\n- [s]elect a specific device:\n  `lspci -s {{00:18.3}}`\n- Dump info in a ([m]achine) readable form:\n  `lspci -vm`\n- Show PCI vendor and device codes as both [n]umbers and [n]ames:\n  `lspci -nn`\n\n*Source: tldr-pages*\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OPTIONS** (37 subsections)\n- **MACHINE READABLE OUTPUT** (10 subsections)\n- **FILES** (3 subsections)\n- **BUGS**\n- **SEE ALSO**\n- **AUTHOR**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "lspci",
        "section": "",
        "mode": "man",
        "summary": "lspci - list all PCI devices",
        "synopsis": "lspci [options]",
        "tldr_summary": "List all PCI devices.",
        "tldr_examples": [
            {
                "description": "Show a brief list of devices",
                "command": "lspci"
            },
            {
                "description": "Display [v]erbose information (Note: the `-v` flag can be repeated to increase verbosity)",
                "command": "lspci -v"
            },
            {
                "description": "Display [k]ernel drivers and modules handling each device",
                "command": "lspci -k"
            },
            {
                "description": "[s]elect a specific device",
                "command": "lspci -s {{00:18.3}}"
            },
            {
                "description": "Dump info in a ([m]achine) readable form",
                "command": "lspci -vm"
            },
            {
                "description": "Show PCI vendor and device codes as both [n]umbers and [n]ames",
                "command": "lspci -nn"
            }
        ],
        "tldr_source": "official",
        "flags": [
            {
                "flag": "-m",
                "long": null,
                "arg": null,
                "description": "details."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "low for details."
            },
            {
                "flag": "-t",
                "long": null,
                "arg": null,
                "description": "tween them."
            },
            {
                "flag": "-v",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "ful."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "look interesting at all (e.g., undefined memory regions)."
            },
            {
                "flag": "-k",
                "long": null,
                "arg": null,
                "description": "it. Turned on by default when -v is given in the normal mode of output. (Currently works only on Linux with kernel 2.6 or newer.)"
            },
            {
                "flag": "-x",
                "long": null,
                "arg": null,
                "description": "bytes or 128 bytes for CardBus bridges)."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "root as several PCI devices crash when you try to read some parts of the config space (this behavior probably doesn't violate the PCI standard, but it's at least very stupid). However, such devices are rare, so you needn't worry much."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "PCI-X 2.0 and PCI Express buses."
            },
            {
                "flag": "-b",
                "long": null,
                "arg": null,
                "description": "bus instead of as seen by the kernel."
            },
            {
                "flag": "-D",
                "long": null,
                "arg": null,
                "description": "have only domain 0."
            },
            {
                "flag": "-P",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "the device number."
            },
            {
                "flag": "-n",
                "long": null,
                "arg": null,
                "description": "list."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-q",
                "long": null,
                "arg": null,
                "description": "pci.ids file. If the DNS query succeeds, the result is cached in ~/.pciids-cache and it is recognized in subsequent runs even if -q is not given any more. Please use this switch inside automated scripts only with caution to avoid overloading the database servers."
            },
            {
                "flag": "-q",
                "long": null,
                "arg": null,
                "description": ""
            },
            {
                "flag": "-Q",
                "long": null,
                "arg": null,
                "description": "you suspect that the displayed entry is wrong."
            },
            {
                "flag": "-s",
                "long": null,
                "arg": null,
                "description": "Show only devices in the specified domain (in case your machine has several host bridges, they can either share a common bus number space or each of them can address a PCI domain of its own; domains are numbered from 0 to ffff), bus (0 to ff), device (0 to 1f) and function (0 to 7). Each component of the device address can be omitted or set to \"*\", both meaning \"any value\". All numbers are hexadecimal. E.g., \"0:\" means all devices on bus 0, \"0\" means all functions of device 0 on any bus, \"0.3\" selects third function of device 0 on all buses and \".4\" shows only the fourth function of each device."
            },
            {
                "flag": "-d",
                "long": null,
                "arg": null,
                "description": "Show only devices with specified vendor, device and class ID. The ID's are given in hexadecimal and may be omitted or given as \"*\", both meaning \"any value\"."
            },
            {
                "flag": "-i",
                "long": null,
                "arg": "<file>",
                "description": "Use <file> as the PCI ID list instead of /usr/share/misc/pci.ids."
            },
            {
                "flag": "-p",
                "long": null,
                "arg": "<file>",
                "description": "Use <file> as the map of PCI ID's handled by kernel modules. By default, lspci uses /lib/modules/kernelversion/modules.pcimap. Applies only to Linux systems with recent enough module tools."
            },
            {
                "flag": "-M",
                "long": null,
                "arg": null,
                "description": "those behind misconfigured bridges, etc. This option gives meaningful results only with a direct hardware access mode, which usually requires root privileges. Please note that the bus mapper only scans PCI domain 0."
            },
            {
                "flag": "",
                "long": "--version",
                "arg": null,
                "description": "Shows lspci version. This option should be used stand-alone."
            },
            {
                "flag": "-A",
                "long": null,
                "arg": "<method>",
                "description": "The library supports a variety of methods to access the PCI hardware. By default, it uses the first access method available, but you can use this option to override this decision. See -A help for a list of available methods and their descriptions."
            },
            {
                "flag": "-O",
                "long": null,
                "arg": null,
                "description": "The behavior of the library is controlled by several named parameters. This option allows one to set the value of any of the parameters. Use -O help for a list of known parameters and their default values."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "for -A intel-conf1.)"
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "for -A intel-conf2.)"
            },
            {
                "flag": "-F",
                "long": null,
                "arg": "<file>",
                "description": "Instead of accessing real hardware, read the list of devices and values of their con‐ figuration registers from the given file produced by an earlier run of lspci -x. This is very useful for analysis of user-supplied bug reports, because you can display the hardware configuration in any way you want without disturbing the user with requests for more dumps."
            },
            {
                "flag": "-G",
                "long": null,
                "arg": null,
                "description": ""
            }
        ],
        "examples": [],
        "see_also": [
            {
                "name": "setpci",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/setpci/8/json"
            },
            {
                "name": "pci.ids",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/pci.ids/5/json"
            },
            {
                "name": "update-pciids",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/update-pciids/8/json"
            },
            {
                "name": "pcilib",
                "section": "7",
                "url": "https://www.chedong.com/phpMan.php/man/pcilib/7/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 19,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 1,
                "subsections": [
                    {
                        "name": "Basic display modes",
                        "lines": 1
                    },
                    {
                        "name": "-m",
                        "lines": 2,
                        "flag": "-m"
                    },
                    {
                        "name": "-mm",
                        "lines": 2
                    },
                    {
                        "name": "-t",
                        "lines": 3,
                        "flag": "-t"
                    },
                    {
                        "name": "Display options",
                        "lines": 1
                    },
                    {
                        "name": "-v",
                        "lines": 1,
                        "flag": "-v"
                    },
                    {
                        "name": "-vv",
                        "lines": 2
                    },
                    {
                        "name": "-vvv",
                        "lines": 2
                    },
                    {
                        "name": "-k",
                        "lines": 3,
                        "flag": "-k"
                    },
                    {
                        "name": "-x",
                        "lines": 2,
                        "flag": "-x"
                    },
                    {
                        "name": "-xxx",
                        "lines": 4
                    },
                    {
                        "name": "-xxxx",
                        "lines": 2
                    },
                    {
                        "name": "-b",
                        "lines": 2,
                        "flag": "-b"
                    },
                    {
                        "name": "-D",
                        "lines": 2,
                        "flag": "-D"
                    },
                    {
                        "name": "-P",
                        "lines": 1,
                        "flag": "-P"
                    },
                    {
                        "name": "-PP",
                        "lines": 3
                    },
                    {
                        "name": "Options to control resolving ID's to names",
                        "lines": 1
                    },
                    {
                        "name": "-n",
                        "lines": 2,
                        "flag": "-n"
                    },
                    {
                        "name": "-nn",
                        "lines": 1
                    },
                    {
                        "name": "-q",
                        "lines": 5,
                        "flag": "-q"
                    },
                    {
                        "name": "-qq -q",
                        "lines": 1,
                        "flag": "-q"
                    },
                    {
                        "name": "-Q",
                        "lines": 3,
                        "flag": "-Q"
                    },
                    {
                        "name": "Options for selection of devices",
                        "lines": 1
                    },
                    {
                        "name": "-s [[[[<domain>]:]<bus>]:][<device>][.[<func>]]",
                        "lines": 9,
                        "flag": "-s"
                    },
                    {
                        "name": "-d [<vendor>]:[<device>][:<class>]",
                        "lines": 4,
                        "flag": "-d"
                    },
                    {
                        "name": "Other options",
                        "lines": 1
                    },
                    {
                        "name": "-i <file>",
                        "lines": 2,
                        "flag": "-i",
                        "arg": "<file>"
                    },
                    {
                        "name": "-p <file>",
                        "lines": 4,
                        "flag": "-p",
                        "arg": "<file>"
                    },
                    {
                        "name": "-M",
                        "lines": 4,
                        "flag": "-M"
                    },
                    {
                        "name": "--version",
                        "lines": 3,
                        "long": "--version"
                    },
                    {
                        "name": "PCI access options",
                        "lines": 3
                    },
                    {
                        "name": "-A <method>",
                        "lines": 4,
                        "flag": "-A",
                        "arg": "<method>"
                    },
                    {
                        "name": "-O <param>=<value>",
                        "lines": 4,
                        "flag": "-O"
                    },
                    {
                        "name": "-H1",
                        "lines": 2
                    },
                    {
                        "name": "-H2",
                        "lines": 2
                    },
                    {
                        "name": "-F <file>",
                        "lines": 6,
                        "flag": "-F",
                        "arg": "<file>"
                    },
                    {
                        "name": "-G",
                        "lines": 1,
                        "flag": "-G"
                    }
                ]
            },
            {
                "name": "MACHINE READABLE OUTPUT",
                "lines": 9,
                "subsections": [
                    {
                        "name": "Simple format (-m)",
                        "lines": 7
                    },
                    {
                        "name": "-r",
                        "lines": 1,
                        "flag": "-r"
                    },
                    {
                        "name": "-p",
                        "lines": 8,
                        "flag": "-p"
                    },
                    {
                        "name": "Verbose format (-vmm)",
                        "lines": 22
                    },
                    {
                        "name": "SVendor",
                        "lines": 3
                    },
                    {
                        "name": "SDevice",
                        "lines": 3
                    },
                    {
                        "name": "PhySlot",
                        "lines": 16
                    },
                    {
                        "name": "NUMANode",
                        "lines": 3
                    },
                    {
                        "name": "IOMMUGroup",
                        "lines": 7
                    },
                    {
                        "name": "Backward-compatible verbose format (-vm)",
                        "lines": 6
                    }
                ]
            },
            {
                "name": "FILES",
                "lines": 1,
                "subsections": [
                    {
                        "name": "/usr/share/misc/pci.ids",
                        "lines": 4
                    },
                    {
                        "name": "/usr/share/misc/pci.ids.gz",
                        "lines": 2
                    },
                    {
                        "name": "~/.pciids-cache",
                        "lines": 3
                    }
                ]
            },
            {
                "name": "BUGS",
                "lines": 9,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 3,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 5,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "lspci - list all PCI devices\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "lspci [options]\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "lspci  is a utility for displaying information about PCI buses in the system and devices con‐\nnected to them.\n\nBy default, it shows a brief list of devices. Use the options described below to request  ei‐\nther a more verbose output or output intended for parsing by other programs.\n\nIf you are going to report bugs in PCI device drivers or in lspci itself, please include out‐\nput of \"lspci -vvx\" or even better \"lspci -vvxxx\" (however, see below for possible caveats).\n\nSome parts of the output, especially in the highly verbose modes, are  probably  intelligible\nonly  to  experienced PCI hackers. For exact definitions of the fields, please consult either\nthe PCI specifications or the header.h and /usr/include/linux/pci.h include files.\n\nAccess to some parts of the PCI configuration space is restricted to root on  many  operating\nsystems, so the features of lspci available to normal users are limited. However, lspci tries\nits best to display as much as available and mark all other information with <access  denied>\ntext.\n\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "",
                "subsections": [
                    {
                        "name": "Basic display modes",
                        "content": ""
                    },
                    {
                        "name": "-m",
                        "content": "details.\n",
                        "flag": "-m"
                    },
                    {
                        "name": "-mm",
                        "content": "low for details.\n"
                    },
                    {
                        "name": "-t",
                        "content": "tween them.\n\n",
                        "flag": "-t"
                    },
                    {
                        "name": "Display options",
                        "content": ""
                    },
                    {
                        "name": "-v",
                        "content": "",
                        "flag": "-v"
                    },
                    {
                        "name": "-vv",
                        "content": "ful.\n"
                    },
                    {
                        "name": "-vvv",
                        "content": "look interesting at all (e.g., undefined memory regions).\n"
                    },
                    {
                        "name": "-k",
                        "content": "it.   Turned  on by default when -v is given in the normal mode of output.  (Currently\nworks only on Linux with kernel 2.6 or newer.)\n",
                        "flag": "-k"
                    },
                    {
                        "name": "-x",
                        "content": "bytes or 128 bytes for CardBus bridges).\n",
                        "flag": "-x"
                    },
                    {
                        "name": "-xxx",
                        "content": "root as several PCI devices crash when you try to read some parts of the config  space\n(this  behavior  probably  doesn't  violate  the  PCI standard, but it's at least very\nstupid). However, such devices are rare, so you needn't worry much.\n"
                    },
                    {
                        "name": "-xxxx",
                        "content": "PCI-X 2.0 and PCI Express buses.\n"
                    },
                    {
                        "name": "-b",
                        "content": "bus instead of as seen by the kernel.\n",
                        "flag": "-b"
                    },
                    {
                        "name": "-D",
                        "content": "have only domain 0.\n",
                        "flag": "-D"
                    },
                    {
                        "name": "-P",
                        "content": "",
                        "flag": "-P"
                    },
                    {
                        "name": "-PP",
                        "content": "the device number.\n\n"
                    },
                    {
                        "name": "Options to control resolving ID's to names",
                        "content": ""
                    },
                    {
                        "name": "-n",
                        "content": "list.\n",
                        "flag": "-n"
                    },
                    {
                        "name": "-nn",
                        "content": ""
                    },
                    {
                        "name": "-q",
                        "content": "pci.ids file. If the DNS query succeeds, the result is cached in  ~/.pciids-cache  and\nit  is recognized in subsequent runs even if -q is not given any more. Please use this\nswitch inside automated scripts only with caution to avoid  overloading  the  database\nservers.\n",
                        "flag": "-q"
                    },
                    {
                        "name": "-qq -q",
                        "content": "",
                        "flag": "-q"
                    },
                    {
                        "name": "-Q",
                        "content": "you suspect that the displayed entry is wrong.\n\n",
                        "flag": "-Q"
                    },
                    {
                        "name": "Options for selection of devices",
                        "content": ""
                    },
                    {
                        "name": "-s [[[[<domain>]:]<bus>]:][<device>][.[<func>]]",
                        "content": "Show only devices in the specified domain (in  case  your  machine  has  several  host\nbridges, they can either share a common bus number space or each of them can address a\nPCI domain of its own; domains are numbered from 0 to ffff), bus (0 to ff), device  (0\nto  1f) and function (0 to 7).  Each component of the device address can be omitted or\nset to \"*\", both meaning \"any value\". All numbers are hexadecimal.  E.g.,  \"0:\"  means\nall  devices  on  bus 0, \"0\" means all functions of device 0 on any bus, \"0.3\" selects\nthird function of device 0 on all buses and \".4\" shows only  the  fourth  function  of\neach device.\n",
                        "flag": "-s"
                    },
                    {
                        "name": "-d [<vendor>]:[<device>][:<class>]",
                        "content": "Show  only  devices  with specified vendor, device and class ID. The ID's are given in\nhexadecimal and may be omitted or given as \"*\", both meaning \"any value\".\n\n",
                        "flag": "-d"
                    },
                    {
                        "name": "Other options",
                        "content": ""
                    },
                    {
                        "name": "-i <file>",
                        "content": "Use <file> as the PCI ID list instead of /usr/share/misc/pci.ids.\n",
                        "flag": "-i",
                        "arg": "<file>"
                    },
                    {
                        "name": "-p <file>",
                        "content": "Use <file> as the map of PCI ID's handled by kernel modules. By  default,  lspci  uses\n/lib/modules/kernelversion/modules.pcimap.  Applies only to Linux systems with recent\nenough module tools.\n",
                        "flag": "-p",
                        "arg": "<file>"
                    },
                    {
                        "name": "-M",
                        "content": "those  behind  misconfigured  bridges,  etc. This option gives meaningful results only\nwith a direct hardware access mode, which usually requires  root  privileges.   Please\nnote that the bus mapper only scans PCI domain 0.\n",
                        "flag": "-M"
                    },
                    {
                        "name": "--version",
                        "content": "Shows lspci version. This option should be used stand-alone.\n\n",
                        "long": "--version"
                    },
                    {
                        "name": "PCI access options",
                        "content": "The PCI utilities use the PCI library to talk to PCI devices (see pcilib(7) for details). You\ncan use the following options to influence its behavior:\n"
                    },
                    {
                        "name": "-A <method>",
                        "content": "The library supports a variety of methods to access the PCI hardware.  By default,  it\nuses  the  first access method available, but you can use this option to override this\ndecision. See -A help for a list of available methods and their descriptions.\n",
                        "flag": "-A",
                        "arg": "<method>"
                    },
                    {
                        "name": "-O <param>=<value>",
                        "content": "The behavior of the library is controlled by several named  parameters.   This  option\nallows  one to set the value of any of the parameters. Use -O help for a list of known\nparameters and their default values.\n",
                        "flag": "-O"
                    },
                    {
                        "name": "-H1",
                        "content": "for -A intel-conf1.)\n"
                    },
                    {
                        "name": "-H2",
                        "content": "for -A intel-conf2.)\n"
                    },
                    {
                        "name": "-F <file>",
                        "content": "Instead of accessing real hardware, read the list of devices and values of their  con‐\nfiguration registers from the given file produced by an earlier run of lspci -x.  This\nis very useful for analysis of user-supplied bug reports, because you can display  the\nhardware  configuration  in any way you want without disturbing the user with requests\nfor more dumps.\n",
                        "flag": "-F",
                        "arg": "<file>"
                    },
                    {
                        "name": "-G",
                        "content": "",
                        "flag": "-G"
                    }
                ]
            },
            "MACHINE READABLE OUTPUT": {
                "content": "If you intend to process the output of lspci automatically, please use one  of  the  machine-\nreadable  output  formats  (-m,  -vm,  -vmm) described in this section. All other formats are\nlikely to change between versions of lspci.\n\n\nAll numbers are always printed in hexadecimal. If you want to process numeric ID's instead of\nnames, please add the -n switch.\n\n",
                "subsections": [
                    {
                        "name": "Simple format (-m)",
                        "content": "In the simple format, each device is described on a single line, which is formatted as param‐\neters suitable for passing to a shell script, i.e., values separated by  whitespaces,  quoted\nand  escaped  if  necessary.  Some of the arguments are positional: slot, class, vendor name,\ndevice name, subsystem vendor name and subsystem name (the last two are empty if  the  device\nhas no subsystem); the remaining arguments are option-like:\n\n"
                    },
                    {
                        "name": "-r",
                        "content": "",
                        "flag": "-r"
                    },
                    {
                        "name": "-p",
                        "content": "Programming interface.\n\n\nThe  relative  order  of  positional  arguments and options is undefined.  New options can be\nadded in future versions, but they will always have a single argument not separated from  the\noption by any spaces, so they can be easily ignored if not recognized.\n\n",
                        "flag": "-p"
                    },
                    {
                        "name": "Verbose format (-vmm)",
                        "content": "The  verbose output is a sequence of records separated by blank lines.  Each record describes\na single device by a sequence of lines, each line containing a single `tag: value' pair.  The\ntag and the value are separated by a single tab character.  Neither the records nor the lines\nwithin a record are in any particular order.  Tags are case-sensitive.\n\n\nThe following tags are defined:\n\n\nSlot   The name of the slot where the device  resides  ([domain:]bus:device.function).   This\ntag is always the first in a record.\n\n\nClass  Name of the class.\n\n\nVendor Name of the vendor.\n\n\nDevice Name of the device.\n\n"
                    },
                    {
                        "name": "SVendor",
                        "content": "Name of the subsystem vendor (optional).\n\n"
                    },
                    {
                        "name": "SDevice",
                        "content": "Name of the subsystem (optional).\n\n"
                    },
                    {
                        "name": "PhySlot",
                        "content": "The physical slot where the device resides (optional, Linux only).\n\n\nRev    Revision number (optional).\n\n\nProgIf Programming interface (optional).\n\n\nDriver Kernel driver currently handling the device (optional, Linux only).\n\n\nModule Kernel  module  reporting  that  it is capable of handling the device (optional, Linux\nonly). Multiple lines with this tag can occur.\n\n"
                    },
                    {
                        "name": "NUMANode",
                        "content": "NUMA node this device is connected to (optional, Linux only).\n\n"
                    },
                    {
                        "name": "IOMMUGroup",
                        "content": "IOMMU group that this device is part of (optional, Linux only).\n\n\nNew tags can be added in future versions, so you should silently ignore any  tags  you  don't\nrecognize.\n\n"
                    },
                    {
                        "name": "Backward-compatible verbose format (-vm)",
                        "content": "In  this mode, lspci tries to be perfectly compatible with its old versions.  It's almost the\nsame as the regular verbose format, but the Device tag is used for both the slot and the  de‐\nvice  name,  so it occurs twice in a single record. Please avoid using this format in any new\ncode.\n\n"
                    }
                ]
            },
            "FILES": {
                "content": "",
                "subsections": [
                    {
                        "name": "/usr/share/misc/pci.ids",
                        "content": "A list of all known PCI ID's (vendors, devices, classes and subclasses). Maintained at\nhttps://pci-ids.ucw.cz/,  use  the  update-pciids  utility to download the most recent\nversion.\n"
                    },
                    {
                        "name": "/usr/share/misc/pci.ids.gz",
                        "content": "If lspci is compiled with support for compression, this file is tried before pci.ids.\n"
                    },
                    {
                        "name": "~/.pciids-cache",
                        "content": "All ID's found in the DNS query mode are cached in this file.\n\n"
                    }
                ]
            },
            "BUGS": {
                "content": "Sometimes, lspci is not able to decode the configuration registers completely.  This  usually\nhappens  when  not  enough  documentation was available to the authors.  In such cases, it at\nleast prints the <?> mark to signal that there is potentially something more to say.  If  you\nknow the details, patches will be of course welcome.\n\nAccess  to  the  extended  configuration space is currently supported only by the linuxsysfs\nback-end.\n\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "setpci(8), pci.ids(5), update-pciids(8), pcilib(7)\n\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "The PCI Utilities are maintained by Martin Mares <mj@ucw.cz>.\n\n\n\npciutils-3.7.0                               31 May 2020                                    lspci(8)",
                "subsections": []
            }
        }
    }
}