6.2. PCI 驱动程序

PCI 板卡通过称为 PCI ID 的标识来识别。PCI ID 实际上由两部分组成

  • 供应商 ID 和设备 ID;

  • 子系统 ID 和子系统设备 ID;

lspci -nn 命令允许识别供应商/设备 PCI ID

 $ lspci -nn
 ...
 00:0a.0 Multimedia controller [0480]: Philips Semiconductors SAA7131/SAA7133/SAA7135 Video Broadcast Decoder [1131:7133] (rev d1)
 00:0b.0 Multimedia controller [0480]: Brooktree Corporation Bt878 Audio Capture [109e:0878] (rev 11)
 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)
 02:01.0 Multimedia video controller [0400]: Internext Compression Inc iTVC15 (CX23415) Video Decoder [4444:0803] (rev 01)
 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]
 02:03.0 Multimedia video controller [0400]: Brooktree Corporation Bt878 Video Capture [109e:036e] (rev 11)
 ...

可以使用 lspci -vn 获取子系统 ID

 $ lspci -vn
 ...
     00:0a.0 0480: 1131:7133 (rev d1)
             Subsystem: 1461:f01d
             Flags: bus master, medium devsel, latency 32, IRQ 209
             Memory at e2002000 (32-bit, non-prefetchable) [size=2K]
             Capabilities: [40] Power Management version 2
 ...

在上面的示例中,第一张卡使用 saa7134 驱动程序,其供应商/设备 PCI ID 等于 1131:7133,PCI 子系统 ID 等于 1461:f01d(参见Saa7134 卡列表)。

不幸的是,有时不同的产品会使用相同的 PCI 子系统 ID。因此,几个媒体驱动程序允许传递 card= 参数,以便设置与特定板卡的正确设置匹配的卡号。

下面列出了当前支持的 PCI/PCIe 卡(不包括 staging 驱动程序)[1]

驱动程序

名称

altera-ci

基于 Altera FPGA 的 CI 模块

b2c2-flexcop-pci

Technisat/B2C2 Air/Sky/Cable2PC PCI

bt878

基于 bt878 的电视卡的 DVB/ATSC 支持

bttv

BT8x8 Video For Linux

cobalt

思科钴

cx18

Conexant cx23418 MPEG 编码器

cx23885

Conexant cx23885 (2388x 后继产品)

cx25821

Conexant cx25821

cx88xx

Conexant 2388x (bt878 的后继产品)

ddbridge

数字设备桥

dm1105

基于 SDMC DM1105 的 PCI 卡

dt3155

DT3155 帧捕获器

dvb-ttpci

AV7110 卡

earth-pt1

PT1 卡

earth-pt3

Earthsoft PT3 卡

hexium_gemini

Hexium Gemini 帧捕获器

hexium_orion

Hexium HV-PCI6 和 Orion 帧捕获器

hopper

基于 HOPPER 的卡

ipu3-cio2

英特尔 ipu3-cio2 驱动程序

ivtv

Conexant cx23416/cx23415 MPEG 编码器/解码器

ivtvfb

Conexant cx23415 帧缓冲器

mantis

基于 MANTIS 的卡

mgb4

Digiteq Automotive MGB4 帧捕获器

mxb

Siemens-Nixdorf ‘多媒体扩展板’

netup-unidvb

NetUP 通用 DVB 卡

ngene

Micronas nGene

pluto2

Pluto2 卡

saa7134

Philips SAA7134

saa7164

NXP SAA7164

smipcie

SMI PCIe DVBSky 卡

solo6x10

Bluecherry / Softlogic 6x10 采集卡 (MPEG-4/H.264)

sta2x11_vip

STA2X11 VIP Video For Linux

tw5864

Techwell TW5864 视频/音频采集器和编码器

tw686x

Intersil/Techwell TW686x

tw68

Techwell tw68x Video For Linux

zoran

Zoran-36057/36067 JPEG 编解码器

其中一些驱动程序支持多个设备,如下面的卡片列表所示