192f0fa8bSMauro Carvalho Chehab.. SPDX-License-Identifier: GPL-2.0 292f0fa8bSMauro Carvalho Chehab 392f0fa8bSMauro Carvalho ChehabPCI drivers 492f0fa8bSMauro Carvalho Chehab=========== 592f0fa8bSMauro Carvalho Chehab 692f0fa8bSMauro Carvalho ChehabThe PCI boards are identified by an identification called PCI ID. The PCI ID 792f0fa8bSMauro Carvalho Chehabis actually composed by two parts: 892f0fa8bSMauro Carvalho Chehab 992f0fa8bSMauro Carvalho Chehab - Vendor ID and device ID; 1092f0fa8bSMauro Carvalho Chehab - Subsystem ID and Subsystem device ID; 1192f0fa8bSMauro Carvalho Chehab 1292f0fa8bSMauro Carvalho ChehabThe ``lspci -nn`` command allows identifying the vendor/device PCI IDs: 1392f0fa8bSMauro Carvalho Chehab 1492f0fa8bSMauro Carvalho Chehab.. code-block:: none 1592f0fa8bSMauro Carvalho Chehab :emphasize-lines: 3 1692f0fa8bSMauro Carvalho Chehab 1792f0fa8bSMauro Carvalho Chehab $ lspci -nn 1892f0fa8bSMauro Carvalho Chehab ... 1992f0fa8bSMauro Carvalho Chehab 00:0a.0 Multimedia controller [0480]: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video Broadcast Decoder [1131:7133] (rev d1) 2092f0fa8bSMauro Carvalho Chehab 00:0b.0 Multimedia controller [0480]: Brooktree Corporation Bt878 Audio Capture [109e:0878] (rev 11) 2192f0fa8bSMauro Carvalho Chehab 01:00.0 Multimedia video controller [0400]: Conexant Systems, Inc. CX23887/8 PCIe Broadcast Audio and Video Decoder with 3D Comb [14f1:8880] (rev 0f) 2292f0fa8bSMauro Carvalho Chehab 02:01.0 Multimedia video controller [0400]: Internext Compression Inc iTVC15 (CX23415) Video Decoder [4444:0803] (rev 01) 2392f0fa8bSMauro Carvalho Chehab 02:02.0 Multimedia video controller [0400]: Conexant Systems, Inc. CX23418 Single-Chip MPEG-2 Encoder with Integrated Analog Video/Broadcast Audio Decoder [14f1:5b7a] 2492f0fa8bSMauro Carvalho Chehab 02:03.0 Multimedia video controller [0400]: Brooktree Corporation Bt878 Video Capture [109e:036e] (rev 11) 2592f0fa8bSMauro Carvalho Chehab ... 2692f0fa8bSMauro Carvalho Chehab 2792f0fa8bSMauro Carvalho ChehabThe subsystem IDs can be obtained using ``lspci -vn`` 2892f0fa8bSMauro Carvalho Chehab 2992f0fa8bSMauro Carvalho Chehab.. code-block:: none 3092f0fa8bSMauro Carvalho Chehab :emphasize-lines: 4 3192f0fa8bSMauro Carvalho Chehab 3292f0fa8bSMauro Carvalho Chehab $ lspci -vn 3392f0fa8bSMauro Carvalho Chehab ... 3492f0fa8bSMauro Carvalho Chehab 00:0a.0 0480: 1131:7133 (rev d1) 3592f0fa8bSMauro Carvalho Chehab Subsystem: 1461:f01d 3692f0fa8bSMauro Carvalho Chehab Flags: bus master, medium devsel, latency 32, IRQ 209 3792f0fa8bSMauro Carvalho Chehab Memory at e2002000 (32-bit, non-prefetchable) [size=2K] 3892f0fa8bSMauro Carvalho Chehab Capabilities: [40] Power Management version 2 3992f0fa8bSMauro Carvalho Chehab ... 4092f0fa8bSMauro Carvalho Chehab 4192f0fa8bSMauro Carvalho ChehabAt the above example, the first card uses the ``saa7134`` driver, and 4292f0fa8bSMauro Carvalho Chehabhas a vendor/device PCI ID equal to ``1131:7133`` and a PCI subsystem 4392f0fa8bSMauro Carvalho ChehabID equal to ``1461:f01d`` (see :doc:`Saa7134 card list<saa7134-cardlist>`). 4492f0fa8bSMauro Carvalho Chehab 4592f0fa8bSMauro Carvalho ChehabUnfortunately, sometimes the same PCI subsystem ID is used by different 4692f0fa8bSMauro Carvalho Chehabproducts. So, several media drivers allow passing a ``card=`` parameter, 4792f0fa8bSMauro Carvalho Chehabin order to setup a card number that would match the correct settings for 4892f0fa8bSMauro Carvalho Chehaban specific board. 4992f0fa8bSMauro Carvalho Chehab 5092f0fa8bSMauro Carvalho ChehabThe current supported PCI/PCIe cards (not including staging drivers) are 5192f0fa8bSMauro Carvalho Chehablisted below\ [#]_. 5292f0fa8bSMauro Carvalho Chehab 5392f0fa8bSMauro Carvalho Chehab.. [#] some of the drivers have sub-drivers, not shown at this table 5492f0fa8bSMauro Carvalho Chehab 5592f0fa8bSMauro Carvalho Chehab================ ======================================================== 5692f0fa8bSMauro Carvalho ChehabDriver Name 5792f0fa8bSMauro Carvalho Chehab================ ======================================================== 5892f0fa8bSMauro Carvalho Chehabaltera-ci Altera FPGA based CI module 5992f0fa8bSMauro Carvalho Chehabb2c2-flexcop-pci Technisat/B2C2 Air/Sky/Cable2PC PCI 6092f0fa8bSMauro Carvalho Chehabbt878 DVB/ATSC Support for bt878 based TV cards 6192f0fa8bSMauro Carvalho Chehabbttv BT8x8 Video For Linux 6292f0fa8bSMauro Carvalho Chehabcobalt Cisco Cobalt 6392f0fa8bSMauro Carvalho Chehabcx18 Conexant cx23418 MPEG encoder 6492f0fa8bSMauro Carvalho Chehabcx23885 Conexant cx23885 (2388x successor) 6592f0fa8bSMauro Carvalho Chehabcx25821 Conexant cx25821 6692f0fa8bSMauro Carvalho Chehabcx88xx Conexant 2388x (bt878 successor) 6792f0fa8bSMauro Carvalho Chehabddbridge Digital Devices bridge 6892f0fa8bSMauro Carvalho Chehabdm1105 SDMC DM1105 based PCI cards 6992f0fa8bSMauro Carvalho Chehabdt3155 DT3155 frame grabber 7092f0fa8bSMauro Carvalho Chehabdvb-ttpci AV7110 cards 7192f0fa8bSMauro Carvalho Chehabearth-pt1 PT1 cards 7292f0fa8bSMauro Carvalho Chehabearth-pt3 Earthsoft PT3 cards 7392f0fa8bSMauro Carvalho Chehabhexium_gemini Hexium Gemini frame grabber 7492f0fa8bSMauro Carvalho Chehabhexium_orion Hexium HV-PCI6 and Orion frame grabber 7592f0fa8bSMauro Carvalho Chehabhopper HOPPER based cards 7692f0fa8bSMauro Carvalho Chehabipu3-cio2 Intel ipu3-cio2 driver 7792f0fa8bSMauro Carvalho Chehabivtv Conexant cx23416/cx23415 MPEG encoder/decoder 7892f0fa8bSMauro Carvalho Chehabivtvfb Conexant cx23415 framebuffer 7992f0fa8bSMauro Carvalho Chehabmantis MANTIS based cards 8092f0fa8bSMauro Carvalho Chehabmxb Siemens-Nixdorf 'Multimedia eXtension Board' 8192f0fa8bSMauro Carvalho Chehabnetup-unidvb NetUP Universal DVB card 8292f0fa8bSMauro Carvalho Chehabngene Micronas nGene 8392f0fa8bSMauro Carvalho Chehabpluto2 Pluto2 cards 8492f0fa8bSMauro Carvalho Chehabsaa7134 Philips SAA7134 8592f0fa8bSMauro Carvalho Chehabsaa7164 NXP SAA7164 8692f0fa8bSMauro Carvalho Chehabsmipcie SMI PCIe DVBSky cards 8792f0fa8bSMauro Carvalho Chehabsolo6x10 Bluecherry / Softlogic 6x10 capture cards (MPEG-4/H.264) 8892f0fa8bSMauro Carvalho Chehabsta2x11_vip STA2X11 VIP Video For Linux 8992f0fa8bSMauro Carvalho Chehabtw5864 Techwell TW5864 video/audio grabber and encoder 9092f0fa8bSMauro Carvalho Chehabtw686x Intersil/Techwell TW686x 9192f0fa8bSMauro Carvalho Chehabtw68 Techwell tw68x Video For Linux 92*7c9df3ecSMauro Carvalho Chehabzoran Zoran-36057/36067 JPEG codec 9392f0fa8bSMauro Carvalho Chehab================ ======================================================== 9492f0fa8bSMauro Carvalho Chehab 9592f0fa8bSMauro Carvalho ChehabSome of those drivers support multiple devices, as shown at the card 9692f0fa8bSMauro Carvalho Chehablists below: 9792f0fa8bSMauro Carvalho Chehab 9892f0fa8bSMauro Carvalho Chehab.. toctree:: 9992f0fa8bSMauro Carvalho Chehab :maxdepth: 1 10092f0fa8bSMauro Carvalho Chehab 10192f0fa8bSMauro Carvalho Chehab bttv-cardlist 10292f0fa8bSMauro Carvalho Chehab cx18-cardlist 10392f0fa8bSMauro Carvalho Chehab cx23885-cardlist 10492f0fa8bSMauro Carvalho Chehab cx88-cardlist 10592f0fa8bSMauro Carvalho Chehab ivtv-cardlist 10692f0fa8bSMauro Carvalho Chehab saa7134-cardlist 10792f0fa8bSMauro Carvalho Chehab saa7164-cardlist 108*7c9df3ecSMauro Carvalho Chehab zoran-cardlist 109