Difference between revisions of "V4L framework progress"

From LinuxTVWiki
Jump to: navigation, search
(Bridge Drivers)
(Add omap3isp driver)
 
(37 intermediate revisions by 3 users not shown)
Line 11: Line 11:
 
;driver
 
;driver
 
The driver name
 
The driver name
;V4L2
+
;interface
 +
Type of bridge interface
 +
;V4L API
 
Whether the driver implements the V4L2 API or still uses the old V4L1 API
 
Whether the driver implements the V4L2 API or still uses the old V4L1 API
 
;v4l2_device
 
;v4l2_device
Line 18: Line 20:
 
Whether the driver uses the video_ioctl2 fops .ioctl op
 
Whether the driver uses the video_ioctl2 fops .ioctl op
 
;have hardware
 
;have hardware
Can someone test this driver?
+
Who can test this driver?
  
{| class="wikitable" style="text-align:center"
+
AW = Andy Walls
! driver
+
 
! V4L2
+
DH = Devin Heitmueller
! v4l2_device
+
 
! video_ioctl2
+
HdG = Hans de Goede
! have hardware
+
 
! comments
+
HV = Hans Verkuil
 +
 
 +
LP = Laurent Pinchart
 +
 
 +
MI = Mike Isely
 +
;BKL
 +
Still uses the Big Kernel Lock
 +
 
 +
{| class="wikitable sortable"
 +
|+'''A Sortable Table of Bridge Drivers'''
 
|-
 
|-
| arv
+
! driver !! interface !! V4L API !! v4l2_device !! video_ioctl2 !! have hardware !! BKL !! class="unsortable"| Comments
| 1
+
| n
+
| n
+
| n
+
|
+
 
|-
 
|-
| au0828
+
| arv || platform || 2 || {{Yes}} || {{Yes}} || Renesas || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| av7110
+
| au0828 || [[USB]] || 2 || {{Yes}} || {{Yes}} || DH || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| bttv
+
| av7110 || [[PCI]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| budget-av
+
| bttv || [[PCI]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| bw-qcam
+
| budget-av || [[PCI]] ||2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} ||
| 1
+
| n
+
| n
+
| n
+
|
+
 
|-
 
|-
| c-qcam  
+
| bw-qcam || parport || 1 || {{No}} || {{No}} || {{No}} || {{No}} || HV: Hope to get hw
| 1
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| cafe_ccic
+
| c-qcam || parport || 1 || {{No}} || {{No}} || {{No}} || {{No}} || HV: Hope to get hw
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| cpia_pp
+
| cafe_ccic || [[PCI]] || 2 || {{Yes}} || {{Yes}} || HV || {{No}} ||
| 1
+
| n
+
| n
+
| n
+
|
+
 
|-
 
|-
| cpia_usb
+
| cpia_pp || parport || 1 || {{No}} || {{No}} || HV || {{No}} ||  
| 1
+
| n
+
| n
+
| n
+
| deprecated, replaced by gspca
+
 
|-
 
|-
| cpia2
+
| cpia_usb || [[USB]] ||1 || {{No}} || {{No}} || {{No}} || {{No}} || deprecated, replaced by gspca
| 2
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| cx18
+
| cpia2 || [[USB]]  || 2 || {{No}} || {{No}} || {{No}} || {{No}} ||
| 2  
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| cx25821
+
| cx18 || [[PCI]] || 2 || {{Yes}} || {{Yes}} || AW, DH, HV, || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
| staging driver
+
 
|-
 
|-
| cx231xx
+
| cx25821 || [[PCI]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || staging driver
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| cx23885
+
| cx231xx || [[USB]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| cx88
+
| cx23885 || [[PCIe]] || 2 || {{Yes}} || {{Yes}} || DH || {{Yes}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| davinci
+
| cx88 ||  [[PCI]] || 2 || {{Yes}} || {{Yes}} || DH, HV || {{Yes}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| dsbr100
+
| dabusb || [[USB]] || n/a || || || {{No}} || {{Yes}} || not a v4l driver
| 2
+
| y
+
| y
+
| y
+
| radio only
+
 
|-
 
|-
| em28xx
+
| davinci || platform || 2 || {{Yes}} || {{Yes}} || TI || {{No}} ||
| 2  
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| et61x251
+
| dsbr100 || [[USB]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || radio only
| 2  
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| go7007
+
| em28xx || [[USB]] || 2 || {{Yes}} || {{Yes}} || DH, HV || {{No}} ||
| 2  
+
| y
+
| y
+
| y
+
| staging driver
+
 
|-
 
|-
| gspca
+
| et61x251 || [[USB]] || 2 || {{No}} || {{No}} || {{Yes}} || {{No}} ||
| 2  
+
| n
+
| y
+
| y
+
|
+
 
|-
 
|-
| hdpvr
+
| go7007 || [[USB]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || staging driver
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| hexium_gemini
+
| gspca || [[USB]] || 2 || {{No}} || {{Yes}} || {{Yes}} || {{No}} ||
| 2
+
| y
+
| y
+
| n
+
|
+
 
|-
 
|-
| hexium_orion
+
| hdpvr || [[USB]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} ||
| 2
+
| y
+
| y
+
| n
+
|
+
 
|-
 
|-
| ibmcam
+
| hexium_gemini || [[PCI]]  || 2 || {{Yes}} || {{Yes}} || HV || {{No}} ||
| 1
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| ivtv
+
| hexium_orion || [[PCI]] || 2 || {{Yes}} || {{Yes}} || HV || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| konicawc
+
| ibmcam || [[USB]] || 1 || {{No}} || {{No}} || {{Yes}} || {{No}} ||
| 1
+
| n
+
| n
+
| n
+
|
+
 
|-
 
|-
| meye
+
| ivtv || [[PCI]] || 2 || {{Yes}} || {{Yes}} || HV, DH, AW || {{No}} ||
| 2  
+
|-
| n
+
| konicawc || [[USB]] || 1 || {{No}} || {{No}} || {{No}} || {{No}} ||
| y
+
| n
+
|
+
 
|-
 
|-
| mxb
+
| meye || [[PCI]] || 2 || {{No}} || {{Yes}} || {{No}} || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| omap24xcam
+
| mxb || [[PCI]] || 2 || {{Yes}} || {{Yes}} || HV || {{No}} ||
| 2  
+
| n
+
| y
+
| y
+
| still uses v4l2-int-device
+
 
|-
 
|-
| ov511
+
| omap24xcam || platform || 2 || {{No}} || {{Yes}} || {{Yes}} || {{No}} || still uses v4l2-int-device
| 1
+
| n
+
| n
+
| y
+
| deprecated, replaced by gspca
+
 
|-
 
|-
| pms
+
| omap3isp || platform || 2 || {{Yes}} || {{Yes}} || LP || {{No}} ||
| 2  
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| pvrusb2
+
| ov511 || [[USB]] || 1 || {{No}} || {{No}} || {{Yes}} || {{No}} || deprecated, replaced by gspca
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| pwc
+
| pms || ISA || 2 || {{Yes}} || {{Yes}} || HV || {{No}} ||
| 2  
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| quickcam_messenger
+
| pvrusb2 || [[USB]] || 2 || {{Yes}} || {{Yes}} || MI, HV || {{No}} ||
| 1
+
| n
+
| n
+
| y
+
| deprecated, replaced by gspca
+
 
|-
 
|-
| radio-aimslab
+
| pwc || [[USB]] || 2 || {{No}} || {{No}} || HdG, HV || {{Yes}} ||
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-aztech
+
| quickcam_messenger || [[USB]] || 1 || {{No}} || {{No}} || HV || {{No}} || deprecated, replaced by gspca
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-cadet
+
| radio-aimslab || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-gemtek
+
| radio-aztech || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| y
+
| radio only
+
 
|-
 
|-
| radio-gemtek-pci
+
| radio-cadet || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-maestro
+
| radio-gemtek || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-maxiradio
+
| radio-gemtek-pci || [[PCI]] || 2 || {{Yes}} || {{Yes}} || HV || {{No}} || radio only, identical to radio-maxiradio
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-miropcm20
+
| radio-maestro || [[PCI]] || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-mr800
+
| radio-maxiradio || [[PCI]] || 2 || {{Yes}} || {{Yes}} || HV || {{No}} || radio only, identical to radio-gemtek-pci
| 2  
+
| y
+
| y
+
| y
+
| radio only
+
 
|-
 
|-
| radio-rtrack2
+
| radio-miropcm20 || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-sf16fmi
+
| radio-mr800 || [[USB]] || 2 || {{Yes}} || {{Yes}} || HV || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-sf16fmr2
+
| radio-rtrack2 || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-si470x
+
| radio-sf16fmi || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2  
+
| n
+
| y
+
| y
+
| radio only
+
 
|-
 
|-
| radio-si4713
+
| radio-sf16fmr2 || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio transmitter only
+
 
|-
 
|-
| radio-tea5764
+
| radio-si470x || [[USB]] || 2 || {{No}} || {{Yes}} || HV || {{Yes}} || radio only
| 2  
+
| n
+
| y
+
| y
+
| radio only
+
 
|-
 
|-
| radio-terratec
+
| radio-si4713 || platform || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio transmitter only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-timb
+
| radio-tea5764 || i2c || 2 || {{No}} || {{Yes}} || {{Yes}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-trust
+
| radio-terratec || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-typhoon
+
| radio-timb || platform || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| radio-zoltrix
+
| radio-trust || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2
+
| y
+
| y
+
| n
+
| radio only
+
 
|-
 
|-
| s2255drv
+
| radio-typhoon || ISA || 2 || {{Yes}} || {{Yes}} || HV || {{No}} || radio only
| 2  
+
| n
+
| y
+
| ?
+
|
+
 
|-
 
|-
| saa7134
+
| radio-zoltrix || ISA || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || radio only
| 2  
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| saa7164
+
| s2255drv || [[USB]] || 2 || {{No}} || {{Yes}}  || Sensoray || {{Yes}} || BKL removal in progress
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| se401
+
| saa7134 || [[PCI]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} ||
| 1
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| sn9c102
+
| saa7164 || [[PCIe]] || || || || || {{No}} || dvb only, no v4l2 support (yet?)
| 2
+
| n
+
| n
+
| ?
+
|
+
 
|-
 
|-
| soc_camera
+
| se401 || [[USB]] || 1 || {{No}}  || {{No}}  || {{Yes}} || {{Yes}} ||
| 2
+
| n
+
| y
+
| y
+
|
+
 
|-
 
|-
| stk-webcam
+
| sn9c102 || [[USB]] || 2 || {{No}} || {{No}} || {{Unknown}} || {{No}} ||
| 2  
+
| y
+
| n
+
| ?
+
|
+
 
|-
 
|-
| stradis
+
| soc_camera || platform || 2 || {{No}} || {{Yes}} || {{Yes}} || {{No}} ||
| 1
+
| n
+
| n
+
| n
+
|
+
 
|-
 
|-
| stv680
+
| stk-webcam || [[USB]] || 2 || {{Yes}} || {{Yes}} || {{Unknown}} || {{Yes}} ||
| 1
+
| n
+
| n
+
| y
+
| deprecated, replaced by gspca
+
 
|-
 
|-
| tea575x-tuner
+
| stradis || [[PCI]] || 1 || {{No}} || {{No}} || HV || {{Yes}} ||  
| 2
+
| n
+
| y
+
| n
+
|
+
 
|-
 
|-
| tm6000
+
| stv680 || [[USB]] || 1 || {{No}} || {{No}} || {{Yes}} || {{No}} || deprecated, replaced by gspca
| 2
+
| y
+
| y
+
| y
+
| staging driver
+
 
|-
 
|-
| usbvision
+
| tea575x-tuner || i2c || 2 || {{No}} || {{Yes}} || {{No}} || {{No}} || sound/i2c/other
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| uvc
+
| tlg2300 || [[USB]] || 2 || {{Yes}} || {{Yes}} || {{Unknown}} || {{Yes}} ||
| 2  
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| vicam
+
| tm6000 || [[USB]] || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || staging driver
| 1
+
| n
+
| n
+
| y
+
|
+
 
|-
 
|-
| vino
+
| usbvision || [[USB]] || 2 || {{Yes}} || {{Yes}} || HV || {{Yes}} ||
| 2
+
| y
+
| y
+
| ?
+
|
+
 
|-
 
|-
| vivi
+
| uvc || [[USB]] || 2 || {{No}} || {{No}} || LP, HV || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| w9966
+
| vicam || [[USB]] || 1 || {{No}} || {{No}} || DH || {{Yes}} ||
| 1
+
| n
+
| n
+
| n
+
|
+
 
|-
 
|-
| w9968cf
+
| vino || platform || 2 || {{Yes}} || {{Yes}} || {{No}} || {{No}} || SGI Indy
| 1
+
| n
+
| n
+
| y
+
| deprecated, replaced by gspca
+
 
|-
 
|-
| zc0301
+
| vivi || n/a || 2 || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} ||
| 2
+
| n
+
| n
+
| n
+
|
+
 
|-
 
|-
| zoran
+
| w9966 || parport || 1 || {{No}} || {{No}} || {{No}} || {{No}} ||
| 2
+
| y
+
| y
+
| y
+
|
+
 
|-
 
|-
| zr364xx
+
| w9968cf || [[USB]] || 1 || {{No}} || {{No}} || {{Yes}} || {{No}} || deprecated, replaced by gspca
| 2  
+
|-
| n
+
| zc0301 || [[USB]] || 2 || {{No}} || {{No}} || {{No}} || {{No}} || deprecated, replaced by gspca
| y
+
|-
| y
+
| zoran || [[PCI]] || 2 || {{Yes}} || {{Yes}} || HV || {{Yes}} ||
|
+
|-
 +
| zr364xx || [[USB]] || 2 || {{No}} || {{Yes}} || {{Yes}} || {{No}} ||
 
|}
 
|}
  
Line 581: Line 215:
 
Can someone test this i2c driver?
 
Can someone test this i2c driver?
  
{| class="wikitable" style="text-align:center"
+
{| class="wikitable sortable"  
! i2c driver
+
|+'''A Sortable Table of Sub-Device Drivers'''
! uses mediabus
+
|-
! uses init
+
! i2c driver !! uses mediabus !! uses init !! uses reset !! have hardware !! class="unsortable"| Comments
! uses reset
+
|-
! have hardware
+
| adv7170 || n/a || {{No}} || {{No}} || ||
! comments
+
|-
 +
| adv7175 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| adv7180 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| adv7343 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| bt819 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| bt856 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| bt866 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| cs5345 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| cs53l32a || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| cx25840 || n/a || {{No}} || {{Yes}} || HV ||
 +
|-
 +
| ks0127 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| m52790 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| msp3400 || n/a || {{No}} || {{No}} || HV ||
 +
|-
 +
| mt9m001 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| mt9m111 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| mt9t031 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| mt9t112 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| mt9v011 || n/a || {{No}} || {{Yes}} || ||
 +
|-
 +
| mt9v022 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| ov7670 || n/a || {{No}} || {{Yes}} || ||
 +
|-
 +
| ov772x || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| ov9640 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| saa5246a || n/a || {{No}} || {{No}} || HV || deprecated, will be removed
 +
|-
 +
| saa5249 || n/a || {{No}} || {{No}} || || deprecated, will be removed
 +
|-
 +
| saa6588 || n/a || {{No}} || {{No}} || HV ||
 +
|-
 +
| saa7110 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| saa7115 || n/a || {{No}} || {{Yes}} || HV ||
 +
|-
 +
| saa7121 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| saa7127 || n/a || {{No}} || {{No}} || HV ||
 +
|-
 +
| saa6752hs || n/a || {{No}} || {{No}} || HV ||
 +
|-
 +
| saa717x || n/a || {{No}} || {{No}} || HV ||
 +
|-
 +
| saa7185 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| saa7191 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tcm825x || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tda7432 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tda9840 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tda9875 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tea6415c || n/a || {{No}} || {{No}} || HV ||
 +
|-
 +
| tea6420 || n/a || {{No}} || {{No}} || HV ||
 +
|-
 +
| ths7303 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tlv320aic23b || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tvaudio || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tvp514x || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tvp5150 || n/a || {{No}} || {{Yes}} || HV ||
 +
|-
 +
| tvp7002 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| tw9910 || n/a || {{No}} || {{No}} || ||
 +
|-
 +
| upd64031a || n/a || {{No}} || {{No}} || HV ||
 
|-
 
|-
| adv7170
+
| upd64083 || n/a || {{No}} || {{No}} || HV ||
| n/a
+
| n
+
| n
+
|  
+
|
+
 
|}
 
|}

Latest revision as of 13:14, 25 May 2011

This page contains the status of all drivers with respect to their adoption of all the new structures that the V4L framework offers.

This should help in identifying those drivers that need more work.

It is expected that this page will be continuously updated whenever new conversion tasks appear.

Note: the driver lists are not yet complete. This is work in progress.

Bridge Drivers

driver

The driver name

interface

Type of bridge interface

V4L API

Whether the driver implements the V4L2 API or still uses the old V4L1 API

v4l2_device

Whether the driver uses struct v4l2_device

video_ioctls

Whether the driver uses the video_ioctl2 fops .ioctl op

have hardware

Who can test this driver?

AW = Andy Walls

DH = Devin Heitmueller

HdG = Hans de Goede

HV = Hans Verkuil

LP = Laurent Pinchart

MI = Mike Isely

BKL

Still uses the Big Kernel Lock

A Sortable Table of Bridge Drivers
driver interface V4L API v4l2_device video_ioctl2 have hardware BKL Comments
arv platform 2 Yes Yes Renesas No
au0828 USB 2 Yes Yes DH No
av7110 PCI 2 Yes Yes Yes No
bttv PCI 2 Yes Yes Yes Yes
budget-av PCI 2 Yes Yes Yes No
bw-qcam parport 1 No No No No HV: Hope to get hw
c-qcam parport 1 No No No No HV: Hope to get hw
cafe_ccic PCI 2 Yes Yes HV No
cpia_pp parport 1 No No HV No
cpia_usb USB 1 No No No No deprecated, replaced by gspca
cpia2 USB 2 No No No No
cx18 PCI 2 Yes Yes AW, DH, HV, No
cx25821 PCI 2 Yes Yes Yes Yes staging driver
cx231xx USB 2 Yes Yes Yes No
cx23885 PCIe 2 Yes Yes DH Yes
cx88 PCI 2 Yes Yes DH, HV Yes
dabusb USB n/a No Yes not a v4l driver
davinci platform 2 Yes Yes TI No
dsbr100 USB 2 Yes Yes Yes No radio only
em28xx USB 2 Yes Yes DH, HV No
et61x251 USB 2 No No Yes No
go7007 USB 2 Yes Yes Yes Yes staging driver
gspca USB 2 No Yes Yes No
hdpvr USB 2 Yes Yes Yes No
hexium_gemini PCI 2 Yes Yes HV No
hexium_orion PCI 2 Yes Yes HV No
ibmcam USB 1 No No Yes No
ivtv PCI 2 Yes Yes HV, DH, AW No
konicawc USB 1 No No No No
meye PCI 2 No Yes No No
mxb PCI 2 Yes Yes HV No
omap24xcam platform 2 No Yes Yes No still uses v4l2-int-device
omap3isp platform 2 Yes Yes LP No
ov511 USB 1 No No Yes No deprecated, replaced by gspca
pms ISA 2 Yes Yes HV No
pvrusb2 USB 2 Yes Yes MI, HV No
pwc USB 2 No No HdG, HV Yes
quickcam_messenger USB 1 No No HV No deprecated, replaced by gspca
radio-aimslab ISA 2 Yes Yes No No radio only
radio-aztech ISA 2 Yes Yes No No radio only
radio-cadet ISA 2 Yes Yes No No radio only
radio-gemtek ISA 2 Yes Yes No No radio only
radio-gemtek-pci PCI 2 Yes Yes HV No radio only, identical to radio-maxiradio
radio-maestro PCI 2 Yes Yes No No radio only
radio-maxiradio PCI 2 Yes Yes HV No radio only, identical to radio-gemtek-pci
radio-miropcm20 ISA 2 Yes Yes No No radio only
radio-mr800 USB 2 Yes Yes HV No radio only
radio-rtrack2 ISA 2 Yes Yes No No radio only
radio-sf16fmi ISA 2 Yes Yes No No radio only
radio-sf16fmr2 ISA 2 Yes Yes No No radio only
radio-si470x USB 2 No Yes HV Yes radio only
radio-si4713 platform 2 Yes Yes No No radio transmitter only
radio-tea5764 i2c 2 No Yes Yes No radio only
radio-terratec ISA 2 Yes Yes No No radio only
radio-timb platform 2 Yes Yes No No radio only
radio-trust ISA 2 Yes Yes No No radio only
radio-typhoon ISA 2 Yes Yes HV No radio only
radio-zoltrix ISA 2 Yes Yes No No radio only
s2255drv USB 2 No Yes Sensoray Yes BKL removal in progress
saa7134 PCI 2 Yes Yes Yes No
saa7164 PCIe No dvb only, no v4l2 support (yet?)
se401 USB 1 No No Yes Yes
sn9c102 USB 2 No No ? Unknown No
soc_camera platform 2 No Yes Yes No
stk-webcam USB 2 Yes Yes ? Unknown Yes
stradis PCI 1 No No HV Yes
stv680 USB 1 No No Yes No deprecated, replaced by gspca
tea575x-tuner i2c 2 No Yes No No sound/i2c/other
tlg2300 USB 2 Yes Yes ? Unknown Yes
tm6000 USB 2 Yes Yes Yes No staging driver
usbvision USB 2 Yes Yes HV Yes
uvc USB 2 No No LP, HV No
vicam USB 1 No No DH Yes
vino platform 2 Yes Yes No No SGI Indy
vivi n/a 2 Yes Yes Yes No
w9966 parport 1 No No No No
w9968cf USB 1 No No Yes No deprecated, replaced by gspca
zc0301 USB 2 No No No No deprecated, replaced by gspca
zoran PCI 2 Yes Yes HV Yes
zr364xx USB 2 No Yes Yes No

Sub-Device Drivers

subdev driver

The sub-device driver name

uses mediabus

Whether the driver implements the new *_mbus_fmt subdev ops

uses init

Whether the driver uses the deprecated .core init op

uses reset

Whether the driver uses the deprecated .core reset op

have hardware

Can someone test this i2c driver?

A Sortable Table of Sub-Device Drivers
i2c driver uses mediabus uses init uses reset have hardware Comments
adv7170 n/a No No
adv7175 n/a No No
adv7180 n/a No No
adv7343 n/a No No
bt819 n/a No No
bt856 n/a No No
bt866 n/a No No
cs5345 n/a No No
cs53l32a n/a No No
cx25840 n/a No Yes HV
ks0127 n/a No No
m52790 n/a No No
msp3400 n/a No No HV
mt9m001 n/a No No
mt9m111 n/a No No
mt9t031 n/a No No
mt9t112 n/a No No
mt9v011 n/a No Yes
mt9v022 n/a No No
ov7670 n/a No Yes
ov772x n/a No No
ov9640 n/a No No
saa5246a n/a No No HV deprecated, will be removed
saa5249 n/a No No deprecated, will be removed
saa6588 n/a No No HV
saa7110 n/a No No
saa7115 n/a No Yes HV
saa7121 n/a No No
saa7127 n/a No No HV
saa6752hs n/a No No HV
saa717x n/a No No HV
saa7185 n/a No No
saa7191 n/a No No
tcm825x n/a No No
tda7432 n/a No No
tda9840 n/a No No
tda9875 n/a No No
tea6415c n/a No No HV
tea6420 n/a No No HV
ths7303 n/a No No
tlv320aic23b n/a No No
tvaudio n/a No No
tvp514x n/a No No
tvp5150 n/a No Yes HV
tvp7002 n/a No No
tw9910 n/a No No
upd64031a n/a No No HV
upd64083 n/a No No HV