Jméno
lspci – seznam všech PCI zařízení
Přehled
lspci
Popis
lspci je nástroj pro zobrazování informací o PCI autobusy v systému a připojených zařízení.
ve výchozím nastavení zobrazuje stručný seznam zařízení. Použijte možnosti popsané níže a vyžádejte si buď podrobnější výstup nebo výstup určený pro analýzu jinými programy.
pokud se chystáte nahlásit chyby v ovladačích zařízení PCI nebo v samotném lspci, uveďte prosím výstup „lspci-vvx“ nebo ještě lépe „lspci-vvxxx“(možné upozornění však viz níže).
některé části výstupu, zejména ve vysoce podrobných režimech, jsou pravděpodobně srozumitelné pouze zkušeným hackerům PCI. Přesné definice polí naleznete v specifikacích PCI nebo v záhlaví.h a /usr/include/linux/pci.h zahrnout soubory.
přístup k některým částem konfiguračního prostoru PCI je omezen na root v mnoha operačních systémech, takže funkce lspci dostupné normalusers jsou omezené. Lspci se však snaží co nejlépe zobrazit co nejvíce a označit všechny ostatní informace textem <Přístup odepřen>.
Možnosti
základní režimy zobrazení
– m
vypsat data zařízení PCI ve zpětně kompatibilní strojově čitelné podobě. Podrobnosti viz níže.
– mm
vypíše data zařízení PCI ve strojově čitelné podobě pro snadnou analýzu pomocí skriptů. Podrobnosti viz níže.
– t
Zobrazit stromový diagram obsahující všechny sběrnice, mosty, zařízení a spojení mezi nimi.
možnosti zobrazení
– v
buďte podrobní a zobrazte podrobné informace o všech zařízeních.
-vv
buďte velmi podrobní a zobrazte více podrobností. Tato úroveň zahrnuje vše, co je považováno za užitečné.
– vvv
buďte ještě podrobnější a zobrazte vše, co jsme schopni analyzovat, i když to vůbec nevypadá zajímavě (např. nedefinované oblasti paměti).
-k
Zobrazit ovladače jádra manipulaci jednotlivých zařízení, a také moduly jádra schopná to zvládnout. Ve výchozím nastavení je zapnuto, když je-v uveden v normálním režimuvýstup. (V současné době funguje pouze na Linuxu s jádrem 2.6 nebo novějším.)
-x
Zobrazit hexadecimální výpis standardní části konfiguračního prostoru (prvních 64 bajtů nebo 128 bajtů pro mosty CardBus).
– xxx
Zobrazit hexadecimální výpis celého konfiguračního prostoru PCI. To je k dispozici pouze pro root jako několik zařízení PCI pád, když se pokusíte číst některé části konfiguračního prostoru (toto chování pravděpodobně neporušuje PCI standard, ale je to přinejmenším velmi hloupé). Taková zařízení jsou však vzácná,takže nepotřebujetestarosti.
– xxxx
Zobrazit hexadecimální výpis rozšířeného (4096 byte) konfiguračního prostoru PCI dostupného na sběrnicích PCI-X 2.0 a PCI Express.
– b
Bus-centric view. Zobrazit všechna čísla a adresy IRQ, jak je vidět na kartách na sběrnici PCI, místo toho, jak je vidět v jádře.
– D
vždy zobrazujte čísla domén PCI. Ve výchozím nastavení je lspci potlačuje na strojích, které mají pouze doménu 0.
Možnosti ovládání řešení ID na názvy
-n
Ukázat PCI dodavatele a kódy zařízení jako čísla namísto hledání je do PCI ID seznamu.
– nn
zobrazit kódy dodavatele PCI a zařízení jako čísla i názvy.
– q
použijte DNS pro dotaz na centrální databázi PCI ID, pokud zařízení není nalezeno v místní pci.soubor ids. Pokud dotaz DNS uspěje, výsledek je uložen do mezipaměti v~/.pciids-cache a je rozpoznán v následujících bězích, i když -q již není uveden. Použijte tento přepínač pouze uvnitř automatizovaných skriptů s opatrností, abyste zabránili přetížení databázových serverů.
stejné jako-q, ale místní mezipaměť je resetována.
– Q
Dotazujte centrální databázi i pro položky, které jsou rozpoznány lokálně. Použijte to, pokud máte podezření, že zobrazená položka je nesprávná.
možnosti výběru zařízení
– s:] <bus>]:]] Zobrazit pouze zařízení v zadanou doménu (v případě, že váš stroj má několik hostitelských mostů, mohou buď sdílet společný autobus číslo místa, nebo každý z themcan adresa PCI domén; domény jsou číslovány od 0 do ffff), autobus (0 až ff), automat (0 až 1f) a funkce (0 až 7). Každá součást zařízeníadresa může být vynechána nebo nastavena na“*“, což znamená „libovolnou hodnotu“. Všechna čísla jsou hexadecimální. Např., „0:“ znamená všechna zařízení na sběrnici 0, “ 0 „znamená všechny funkce zařízení 0 na libovolné sběrnici,“ 0.3 „volí třetí funkci zařízení 0 na všech sběrnicích a“.4 “ zobrazuje pouze čtvrtou funkci každého zařízení. – d: zobrazit pouze zařízení s určeným dodavatelem a ID zařízení. Obě ID jsou uvedeny v šestnáctkové soustavě a mohou být vynechány nebo uvedeny jako“*“, což znamená „anyvalue“.
další možnosti
– i <soubor> použijte <soubor> jako seznam ID PCI namísto /usr/share/hwdata / pci.Idy. -p < soubor> použijte <soubor> jako mapu PCI ID zpracovaných moduly jádra. Ve výchozím nastavení používá lspci /lib/modules/kernel_version/modules.pcimap. Platí pouze pro systémy Linux s dostatečně nedávnými nástroji modulů. – M
vyvolá režim mapování sběrnice, který provádí důkladnou kontrolu všech zařízení PCI, včetně zařízení za nesprávně nakonfigurovanými mosty atd. Tato možnost dává smysluplnévýsledky pouze v režimu přímého přístupu k hardwaru, který obvykle vyžaduje oprávnění root. Vezměte prosím na vědomí, že sběrnice mapper Skenuje pouze PCI doménu 0.
–version zobrazuje verzi lspci. Tato možnost by měla být použita samostatně.
možnosti přístupu k PCI
nástroje PCI používají knihovnu PCI pro komunikaci se zařízeními PCI(podrobnosti viz pcilib (7)). Můžete použít následující možnosti k ovlivnění jehochování:- A <metoda> knihovna podporuje různé metody pro přístup k hardwaru PCI. Ve výchozím nastavení používá první dostupnou metodu přístupu, ale tuto možnost můžete použít k tomuto rozhodnutí. Viz-Nápověda pro seznam dostupných metod a jejich popisy. -O <param>=< hodnota> chování knihovny je řízeno několika pojmenovanými parametry. Tato volba umožňuje nastavit hodnotu některého z parametrů. Použijte-o pomoc proseznam známých parametrů a jejich výchozí hodnoty. – H1
použijte přímý přístup k hardwaru pomocí konfiguračního mechanismu Intel 1. (Toto je zkratka pro-intel-conf1.)
– H2
použijte přímý přístup k hardwaru pomocí konfiguračního mechanismu Intel 2. (Toto je zkratka pro-intel-conf2.)
-F <soubor> Namísto přístupu na reálném hardware, přečtěte si seznam zařízení a hodnoty jejich nastavení registrů z daného souboru produkován dřívější spuštění oflspci -x. To je velmi užitečné pro analýzu poskytnutých uživatelem, hlášení chyb, protože můžete zobrazit hardwarovou konfiguraci v žádném případě chcete withoutdisturbing uživatele s žádostí o více skládek. – G
zvýšit úroveň ladění knihovny.
Strojově Čitelný Výstup
Pokud máte v úmyslu zpracovat výstup z lspci automaticky, použijte prosím jeden z strojově čitelných výstupních formátů (-m, -vm-vmm)popsáno v této části. Všechny ostatní formáty se pravděpodobně změní mezi verzemi lspci.
všechna čísla jsou vždy vytištěna v šestnáctkové soustavě. Pokud chcete místo jmen zpracovat číselné ID, přidejte přepínač-n.
Jednoduchý formát (-m)
V jednoduché podobě, každé zařízení je popisován na jednom řádku, který je formátován jako parametry vhodné pro předávání do skriptu shellu, tj., hodnoty oddělené mezerami, citované a v případě potřeby uniklé. Některé argumenty jsou poziční: automat, třída, název dodavatele, název zařízení, prodejce subsystém a subsystém název (poslední dva jsou prázdné, pokud zařízení nemá subsystému); zbývající argumenty jsou volitelné, jako: -rrev
číslo Revize.
– programovací rozhraní pprogif. Relativní pořadí pozičních argumentů a voleb není definováno. Nové volby mohou být přidány v budoucích verzích, ale vždy budou mít singleargument, který není oddělen od volby žádnými mezerami, takže je lze snadno ignorovat, pokud nejsou rozpoznány.
podrobný formát (- vmm)
podrobný výstup je posloupnost záznamů oddělených prázdnými řádky. Každý záznam popisuje jedno zařízení posloupností řádků, přičemž každý řádek obsahuje dvojici „tag: value“. Značka a hodnota jsou odděleny jedním znakem karty. Záznamy ani řádky v arecordu nejsou v žádném konkrétním pořadí. Značky rozlišují malá a velká písmena.
jsou definovány následující značky:
Slot
název slotu, ve kterém je zařízení umístěno (bus: device.funkce). Tato značka je vždy první v záznamu.
Třída
název třídy.
prodejce
jméno dodavatele.
zařízení
název zařízení.
SVendor název dodavatele subsystému (volitelné). SDevice Název subsystému (volitelné). PhySlot fyzický slot, kde je zařízení umístěno (volitelné, pouze Linux). Rev
číslo revize (volitelné).
ProgIf
programovací rozhraní (volitelné).
ovladač
ovladač jádra aktuálně zpracovává zařízení (volitelné, pouze Linux).
modul
modul jádra hlásí, že je schopen pracovat se zařízením (volitelné, pouze Linux).
nové značky mohou být přidány v budoucích verzích, takže byste měli tiše ignorovat všechny značky, které nepoznáte.
zpětně kompatibilní podrobný formát (- vm)
v tomto režimu se lspci snaží být dokonale kompatibilní se starými verzemi. Je to téměř stejné jako běžný podrobný formát, ale značka zařízení se používá jak pro slot, tak pro název zařízení, takže se vyskytuje dvakrát v jednom záznamu. Nepoužívejte tento formát v žádném novém kódu.
soubory
/ usr/share / hwdata / pci.ids
seznam všech známých PCI ID (dodavatelé, zařízení, třídy a podtřídy). Udržováno na http://pciids.sourceforge.net/, použijte nástroj update-pciidstáhnout nejnovější verzi. /usr/podíl/hwdata / pci.Idy.gz pokud je lspci kompilován s podporou komprese, je tento soubor vyzkoušen před pci.Idy. ~/.pciid-cache Všechna ID nalezená v režimu dotazu DNS jsou v tomto souboru uložena do mezipaměti.
chyby
někdy lspci není schopen dekódovat konfigurační registry úplně. K tomu obvykle dochází, když není k dispozici dostatek dokumentaceautory. V takových případech alespoň vytiskne <?> označte, abyste signalizovali, že existuje potenciálně něco víc. Pokud znáte podrobnosti, opravy budou samozřejmě vítány.
přístup k rozšířenému konfiguračnímu prostoru je v současné době podporován pouze backendem linux_sysfs.
Viz Také
setpci(8), update-pciids(8), pcilib(7)
Autor
PCI Nástroje jsou udržovány Martin Mareš <[email protected]>.