xref: /openbmc/linux/Documentation/admin-guide/media/pci-cardlist.rst (revision 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e)
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