projects/linux·commit 5ffd1a6a

Merge master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb

5ffd1a6a · Linus Torvalds <[email protected]> · 2006-09-30 09:39:15 -07:00

* master.kernel.org:/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (180 commits)
  V4L/DVB (4641): Trivial: use lowercase letters in hex subsystem ids
  V4L/DVB (4639): Cx88: add autodetection for alternate revision of Leadtek PVR
  V4L/DVB (4638): Basic DVB-T and analog TV support for the HVR1300.
  V4L/DVB (4637): Add a default method for VIDIOC_G_PARM
  V4L/DVB (4635): Extend bttv and saa7134 to check for both AGP and PCI PCI failure case
  V4L/DVB (4634): Zr36120: implement pcipci checks
  V4L/DVB (4632): Zoran: Implement pcipci failure check
  V4L/DVB (4631): Av7110: remove V4L2_CAP_VBI_CAPTURE flag
  V4L/DVB (4630): Av7110: FW_LOADER depemdency fixed
  V4L/DVB (4629): Saa7134: add card support for Proteus Pro 2309
  V4L/DVB (4628): Fix VIDIOC_ENUMSTD ioctl in videodev.c
  V4L/DVB (4627): Vivi crashes with mplayer
  V4L/DVB (4626): On saa7111/7113, LUMA_CTRL need a different value
  V4L/DVB (4624): Tvaudio: Replaced kernel_thread() with kthread_run()
  V4L/DVB (4622): Copy-paste bug in videodev.c
  V4L/DVB (4620): Fix AGC configuration for MOD3000P-based boards
  V4L/DVB (4619): Fixes some I2C dependencies on V4L devices
  V4L/DVB (4617): Problem with dibusb-mb.c USB IDs
  V4L/DVB (4616): [PATCH] Nebula DigiTV USB RC support
  V4L/DVB (4614): Export symbol saa7134_tvaudio_setmute from saa7134 for saa7134-alsa
  ...
Commit
5ffd1a6aaacc25be8cd0770a51ec6d46add3a276
Parents
0cd43f83 · 8dd86eeb

Merge commit. Changes below are compared with the first parent: 0cd43f83.

Changes

197 files changed · +9023 −4211

FileStatusAddDelContent
Documentation/feature-removal-schedule.txtmodified+1−1View file
Documentation/video4linux/CARDLIST.cx88modified+6−2View file
Documentation/video4linux/CARDLIST.saa7134modified+5−2View file
Documentation/video4linux/bttv/Insmod-optionsmodified+6−0View file
Documentation/video4linux/cx2341x/README.hm12added+116−0View file
Documentation/video4linux/cx2341x/README.vbiadded+45−0View file
drivers/media/common/Kconfigmodified+0−1View file
drivers/media/common/ir-keymaps.cmodified+79−0View file
drivers/media/common/saa7146_fops.cmodified+0−1View file
drivers/media/dvb/b2c2/Kconfigmodified+7−7View file
drivers/media/dvb/b2c2/flexcop-fe-tuner.cmodified+12−12View file
drivers/media/dvb/bt8xx/Kconfigmodified+7−7View file
drivers/media/dvb/bt8xx/dst.cmodified+9−0View file
drivers/media/dvb/bt8xx/dst_ca.cmodified+8−3View file
drivers/media/dvb/bt8xx/dst_common.hmodified+2−1View file
drivers/media/dvb/bt8xx/dvb-bt8xx.cmodified+18−19View file
drivers/media/dvb/dvb-core/Kconfigmodified+13−0View file
drivers/media/dvb/dvb-core/dvb_frontend.cmodified+33−9View file
drivers/media/dvb/dvb-core/dvb_frontend.hmodified+6−1View file
drivers/media/dvb/dvb-core/dvbdev.hmodified+22−0View file
drivers/media/dvb/dvb-usb/Kconfigmodified+11−6View file
drivers/media/dvb/dvb-usb/a800.cmodified+8−0View file
drivers/media/dvb/dvb-usb/cxusb.cmodified+6−5View file
drivers/media/dvb/dvb-usb/dibusb-common.cmodified+182−18View file
drivers/media/dvb/dvb-usb/dibusb-mb.cmodified+9−9View file
drivers/media/dvb/dvb-usb/dibusb-mc.cmodified+37−4View file
drivers/media/dvb/dvb-usb/dibusb.hmodified+3−0View file
drivers/media/dvb/dvb-usb/digitv.cmodified+78−8View file
drivers/media/dvb/dvb-usb/dtt200u.cmodified+48−2View file
drivers/media/dvb/dvb-usb/dvb-usb-dvb.cmodified+10−10View file
drivers/media/dvb/dvb-usb/dvb-usb-ids.hmodified+70−54View file
drivers/media/dvb/dvb-usb/dvb-usb-remote.cmodified+4−1View file
drivers/media/dvb/dvb-usb/nova-t-usb2.cmodified+1−1View file
drivers/media/dvb/dvb-usb/umt-010.cmodified+1−1View file
drivers/media/dvb/frontends/Kconfigmodified+69−2View file
drivers/media/dvb/frontends/Makefilemodified+6−2View file
drivers/media/dvb/frontends/bcm3510.hmodified+9−0View file
drivers/media/dvb/frontends/cx22700.hmodified+9−0View file
drivers/media/dvb/frontends/cx22702.cmodified+3−1View file
drivers/media/dvb/frontends/cx22702.hmodified+9−0View file
drivers/media/dvb/frontends/cx24110.cmodified+9−8View file
drivers/media/dvb/frontends/cx24110.hmodified+17−2View file
drivers/media/dvb/frontends/cx24123.cmodified+56−42View file
drivers/media/dvb/frontends/cx24123.hmodified+12−0View file
drivers/media/dvb/frontends/dib3000-common.cdeleted+0−83View before deletion
drivers/media/dvb/frontends/dib3000-common.hdeleted+0−135View before deletion
drivers/media/dvb/frontends/dib3000.hmodified+9−2View file
drivers/media/dvb/frontends/dib3000mb.cmodified+74−2View file
drivers/media/dvb/frontends/dib3000mb_priv.hmodified+93−0View file
drivers/media/dvb/frontends/dib3000mc.cmodified+720−712View file
drivers/media/dvb/frontends/dib3000mc.hadded+58−0View file
drivers/media/dvb/frontends/dib3000mc_priv.hdeleted+0−428View before deletion
drivers/media/dvb/frontends/dibx000_common.cadded+152−0View file
drivers/media/dvb/frontends/dibx000_common.hadded+166−0View file
drivers/media/dvb/frontends/dvb-pll.cmodified+7−4View file
drivers/media/dvb/frontends/dvb-pll.hmodified+2−2View file
drivers/media/dvb/frontends/isl6421.cmodified+11−19View file
drivers/media/dvb/frontends/isl6421.hmodified+10−1View file
drivers/media/dvb/frontends/l64781.hmodified+9−1View file
drivers/media/dvb/frontends/lgdt330x.hmodified+9−0View file
drivers/media/dvb/frontends/lnbp21.cmodified+11−19View file
drivers/media/dvb/frontends/lnbp21.hmodified+10−2View file
drivers/media/dvb/frontends/mt2060.cadded+367−0View file
drivers/media/dvb/frontends/mt2060.hadded+35−0View file
drivers/media/dvb/frontends/mt2060_priv.hadded+105−0View file
drivers/media/dvb/frontends/mt312.hmodified+9−1View file
drivers/media/dvb/frontends/mt352.cmodified+8−8View file
drivers/media/dvb/frontends/mt352.hmodified+15−1View file
drivers/media/dvb/frontends/nxt200x.hmodified+9−0View file
drivers/media/dvb/frontends/nxt6000.hmodified+9−0View file
drivers/media/dvb/frontends/or51132.hmodified+9−0View file
drivers/media/dvb/frontends/or51211.hmodified+9−0View file
drivers/media/dvb/frontends/s5h1420.hmodified+9−0View file
drivers/media/dvb/frontends/sp8870.hmodified+9−0View file
drivers/media/dvb/frontends/sp887x.hmodified+9−0View file
drivers/media/dvb/frontends/stv0297.hmodified+9−0View file
drivers/media/dvb/frontends/stv0299.cmodified+6−3View file
drivers/media/dvb/frontends/stv0299.hmodified+17−2View file
drivers/media/dvb/frontends/tda10021.cmodified+33−30View file
drivers/media/dvb/frontends/tda10021.hmodified+17−2View file
drivers/media/dvb/frontends/tda1004x.cmodified+7−3View file
drivers/media/dvb/frontends/tda1004x.hmodified+23−2View file
drivers/media/dvb/frontends/tda10086.cadded+740−0View file
drivers/media/dvb/frontends/tda10086.hadded+41−0View file
drivers/media/dvb/frontends/tda8083.hmodified+9−0View file
drivers/media/dvb/frontends/tda826x.cadded+173−0View file
drivers/media/dvb/frontends/tda826x.hadded+40−0View file
drivers/media/dvb/frontends/tua6100.cadded+205−0View file
drivers/media/dvb/frontends/tua6100.hadded+47−0View file
drivers/media/dvb/frontends/ves1820.hmodified+9−0View file
drivers/media/dvb/frontends/ves1x93.hmodified+9−0View file
drivers/media/dvb/frontends/zl10353.cmodified+8−3View file
drivers/media/dvb/frontends/zl10353.hmodified+12−2View file
drivers/media/dvb/ttpci/Kconfigmodified+30−27View file
drivers/media/dvb/ttpci/av7110.cmodified+31−27View file
drivers/media/dvb/ttpci/av7110_av.cmodified+0−1View file
drivers/media/dvb/ttpci/av7110_ca.cmodified+0−1View file
drivers/media/dvb/ttpci/av7110_hw.cmodified+0−1View file
drivers/media/dvb/ttpci/av7110_v4l.cmodified+1−2View file
drivers/media/dvb/ttpci/budget-av.cmodified+20−164View file
drivers/media/dvb/ttpci/budget-ci.cmodified+16−16View file
drivers/media/dvb/ttpci/budget-patch.cmodified+9−8View file
drivers/media/dvb/ttpci/budget.cmodified+41−12View file
drivers/media/dvb/ttusb-budget/Kconfigmodified+7−7View file
drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.cmodified+15−13View file
drivers/media/dvb/ttusb-dec/ttusb_dec.cmodified+5−1View file
drivers/media/radio/Kconfigmodified+15−15View file
drivers/media/radio/dsbr100.cmodified+127−71View file
drivers/media/radio/radio-aimslab.cmodified+107−44View file
drivers/media/radio/radio-aztech.cmodified+114−52View file
drivers/media/radio/radio-cadet.cmodified+136−114View file
drivers/media/radio/radio-gemtek-pci.cmodified+110−60View file
drivers/media/radio/radio-gemtek.cmodified+116−49View file
drivers/media/radio/radio-maestro.cmodified+130−67View file
drivers/media/radio/radio-maxiradio.cmodified+103−63View file
drivers/media/radio/radio-rtrack2.cmodified+115−48View file
drivers/media/radio/radio-sf16fmi.cmodified+101−57View file
drivers/media/radio/radio-sf16fmr2.cmodified+140−83View file
drivers/media/radio/radio-terratec.cmodified+110−44View file
drivers/media/radio/radio-trust.cmodified+131−57View file
drivers/media/radio/radio-typhoon.cmodified+116−55View file
drivers/media/radio/radio-zoltrix.cmodified+124−59View file
drivers/media/video/Kconfigmodified+352−124View file
drivers/media/video/Makefilemodified+30−15View file
drivers/media/video/bt866.cmodified+1−1View file
drivers/media/video/bt8xx/Kconfigmodified+4−1View file
drivers/media/video/bt8xx/bttv-cards.cmodified+1−1View file
drivers/media/video/bt8xx/bttv-driver.cmodified+12−0View file
drivers/media/video/bt8xx/bttv-i2c.cmodified+16−0View file
drivers/media/video/compat_ioctl32.cmodified+33−26View file
drivers/media/video/cx2341x.cmodified+22−3View file
drivers/media/video/cx25840/Kconfigmodified+1−1View file
drivers/media/video/cx25840/cx25840-vbi.cmodified+4−0View file
drivers/media/video/cx88/Kconfigmodified+12−97View file
drivers/media/video/cx88/Makefilemodified+0−7View file
drivers/media/video/cx88/cx88-blackbird.cmodified+2−0View file
drivers/media/video/cx88/cx88-cards.cmodified+157−4View file
drivers/media/video/cx88/cx88-core.cmodified+12−1View file
drivers/media/video/cx88/cx88-dvb.cmodified+154−176View file
drivers/media/video/cx88/cx88-i2c.cmodified+13−0View file
drivers/media/video/cx88/cx88-input.cmodified+18−1View file
drivers/media/video/cx88/cx88-tvaudio.cmodified+0−5View file
drivers/media/video/cx88/cx88-video.cmodified+6−1View file
drivers/media/video/cx88/cx88.hmodified+5−0View file
drivers/media/video/em28xx/Kconfigmodified+2−1View file
drivers/media/video/em28xx/em28xx-video.cmodified+1−1View file
drivers/media/video/ks0127.cmodified+1−2View file
drivers/media/video/pvrusb2/Kconfigmodified+16−2View file
drivers/media/video/pvrusb2/Makefilemodified+1−5View file
drivers/media/video/pvrusb2/pvrusb2-ctrl.cmodified+15−6View file
drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.cmodified+1−1View file
drivers/media/video/pvrusb2/pvrusb2-encoder.cmodified+2−2View file
drivers/media/video/pvrusb2/pvrusb2-hdw-internal.hmodified+2−29View file
drivers/media/video/pvrusb2/pvrusb2-hdw.cmodified+64−20View file
drivers/media/video/pvrusb2/pvrusb2-i2c-chips-v4l2.cmodified+0−4View file
drivers/media/video/pvrusb2/pvrusb2-i2c-cmd-v4l2.cmodified+1−1View file
drivers/media/video/pvrusb2/pvrusb2-i2c-core.cmodified+0−6View file
drivers/media/video/pvrusb2/pvrusb2-main.cmodified+0−1View file
drivers/media/video/pvrusb2/pvrusb2-sysfs.cmodified+0−3View file
drivers/media/video/pvrusb2/pvrusb2-v4l2.cmodified+19−17View file
drivers/media/video/saa5246a.cmodified+0−1View file
drivers/media/video/saa5249.cmodified+0−1View file
drivers/media/video/saa7115.cmodified+702−548View file
drivers/media/video/saa711x_regs.hadded+549−0View file
drivers/media/video/saa7134/Kconfigmodified+6−44View file
drivers/media/video/saa7134/Makefilemodified+0−3View file
drivers/media/video/saa7134/saa7134-alsa.cmodified+8−0View file
drivers/media/video/saa7134/saa7134-cards.cmodified+125−2View file
drivers/media/video/saa7134/saa7134-core.cmodified+1−1View file
drivers/media/video/saa7134/saa7134-dvb.cmodified+134−63View file
drivers/media/video/saa7134/saa7134-input.cmodified+6−0View file
drivers/media/video/saa7134/saa7134-tvaudio.cmodified+1−0View file
drivers/media/video/saa7134/saa7134.hmodified+3−0View file
drivers/media/video/tda9887.cmodified+2−0View file
drivers/media/video/tuner-simple.cmodified+3−3View file
drivers/media/video/tuner-types.cmodified+1−0View file
drivers/media/video/tvaudio.cmodified+16−26View file
drivers/media/video/tveeprom.cmodified+2−0View file
drivers/media/video/tvp5150.cmodified+6−1View file
drivers/media/video/usbvideo/konicawc.cmodified+8−1View file
drivers/media/video/usbvideo/vicam.cmodified+4−0View file
drivers/media/video/v4l1-compat.cmodified+9−3View file
drivers/media/video/v4l2-common.cmodified+1−0View file
drivers/media/video/video-buf-dvb.cmodified+2−0View file
drivers/media/video/videodev.cmodified+26−6View file
drivers/media/video/vino.cmodified+0−1View file
drivers/media/video/vivi.cmodified+4−1View file
drivers/media/video/vpx3220.cmodified+1−1View file
drivers/media/video/zoran_card.cmodified+3−3View file
drivers/media/video/zoran_driver.cmodified+7−0View file
drivers/media/video/zr36120.cmodified+5−1View file
include/linux/videodev2.hmodified+3−2View file
include/media/ir-common.hmodified+2−0View file
include/media/tuner-types.hmodified+3−0View file
include/media/tuner.hmodified+1−0View file
include/media/v4l2-common.hmodified+12−4View file
include/media/v4l2-dev.hmodified+7−3View file

Only the first 600 diff lines are shown. Download the complete patch.

Documentation/feature-removal-schedule.txt

View file
diff --git a/Documentation/feature-removal-schedule.txt b/Documentation/feature-removal-schedule.txt
index 4ab4c42..9364f47 100644
--- a/Documentation/feature-removal-schedule.txt
+++ b/Documentation/feature-removal-schedule.txt
@@ -47,7 +47,7 @@ Who: Jody McIntyre <[email protected]>
---------------------------
What: Video4Linux API 1 ioctls and video_decoder.h from Video devices.
-When: July 2006
+When: December 2006
Why: V4L1 AP1 was replaced by V4L2 API. during migration from 2.4 to 2.6
series. The old API have lots of drawbacks and don't provide enough
means to work with all video and audio standards. The newer API is

Documentation/video4linux/CARDLIST.cx88

View file
diff --git a/Documentation/video4linux/CARDLIST.cx88 b/Documentation/video4linux/CARDLIST.cx88
index 00d9a1f..669a09a 100644
--- a/Documentation/video4linux/CARDLIST.cx88
+++ b/Documentation/video4linux/CARDLIST.cx88
@@ -7,10 +7,10 @@
6 -> AverTV Studio 303 (M126) [1461:000b]
7 -> MSI TV-@nywhere Master [1462:8606]
8 -> Leadtek Winfast DV2000 [107d:6620]
- 9 -> Leadtek PVR 2000 [107d:663b,107d:663C]
+ 9 -> Leadtek PVR 2000 [107d:663b,107d:663c,107d:6632]
10 -> IODATA GV-VCP3/PCI [10fc:d003]
11 -> Prolink PlayTV PVR
- 12 -> ASUS PVR-416 [1043:4823]
+ 12 -> ASUS PVR-416 [1043:4823,1461:c111]
13 -> MSI TV-@nywhere
14 -> KWorld/VStream XPert DVB-T [17de:08a6]
15 -> DViCO FusionHDTV DVB-T1 [18ac:db00]
@@ -51,3 +51,7 @@
50 -> NPG Tech Real TV FM Top 10 [14f1:0842]
51 -> WinFast DTV2000 H [107d:665e]
52 -> Geniatech DVB-S [14f1:0084]
+ 53 -> Hauppauge WinTV-HVR3000 TriMode Analog/DVB-S/DVB-T [0070:1404]
+ 54 -> Norwood Micro TV Tuner
+ 55 -> Shenzhen Tungsten Ages Tech TE-DTV-250 / Swann OEM [c180:c980]
+ 56 -> Hauppauge WinTV-HVR1300 DVB-T/Hybrid MPEG Encoder [0070:9600,0070:9601,0070:9602]

Documentation/video4linux/CARDLIST.saa7134

View file
diff --git a/Documentation/video4linux/CARDLIST.saa7134 b/Documentation/video4linux/CARDLIST.saa7134
index 9068b66..94cf695 100644
--- a/Documentation/video4linux/CARDLIST.saa7134
+++ b/Documentation/video4linux/CARDLIST.saa7134
@@ -58,7 +58,7 @@
57 -> Avermedia AVerTV GO 007 FM [1461:f31f]
58 -> ADS Tech Instant TV (saa7135) [1421:0350,1421:0351,1421:0370,1421:1370]
59 -> Kworld/Tevion V-Stream Xpert TV PVR7134
- 60 -> LifeView/Typhoon FlyDVB-T Duo Cardbus [5168:0502,4e42:0502]
+ 60 -> LifeView/Typhoon/Genius FlyDVB-T Duo Cardbus [5168:0502,4e42:0502,1489:0502]
61 -> Philips TOUGH DVB-T reference design [1131:2004]
62 -> Compro VideoMate TV Gold+II
63 -> Kworld Xpert TV PVR7134
@@ -83,7 +83,7 @@
82 -> MSI TV@Anywhere plus [1462:6231]
83 -> Terratec Cinergy 250 PCI TV [153b:1160]
84 -> LifeView FlyDVB Trio [5168:0319]
- 85 -> AverTV DVB-T 777 [1461:2c05]
+ 85 -> AverTV DVB-T 777 [1461:2c05,1461:2c05]
86 -> LifeView FlyDVB-T / Genius VideoWonder DVB-T [5168:0301,1489:0301]
87 -> ADS Instant TV Duo Cardbus PTV331 [0331:1421]
88 -> Tevion/KWorld DVB-T 220RF [17de:7201]
@@ -94,3 +94,6 @@
93 -> Medion 7134 Bridge #2 [16be:0005]
94 -> LifeView FlyDVB-T Hybrid Cardbus [5168:3306,5168:3502]
95 -> LifeView FlyVIDEO3000 (NTSC) [5169:0138]
+ 96 -> Medion Md8800 Quadro [16be:0007,16be:0008]
+ 97 -> LifeView FlyDVB-S /Acorp TV134DS [5168:0300,4e42:0300]
+ 98 -> Proteus Pro 2309 [0919:2003]

Documentation/video4linux/bttv/Insmod-options

View file
diff --git a/Documentation/video4linux/bttv/Insmod-options b/Documentation/video4linux/bttv/Insmod-options
index fc94ff2..bb7c2ca 100644
--- a/Documentation/video4linux/bttv/Insmod-options
+++ b/Documentation/video4linux/bttv/Insmod-options
@@ -54,6 +54,12 @@ bttv.o
dropouts.
chroma_agc=0/1 AGC of chroma signal, off by default.
adc_crush=0/1 Luminance ADC crush, on by default.
+ i2c_udelay= Allow reduce I2C speed. Default is 5 usecs
+ (meaning 66,67 Kbps). The default is the
+ maximum supported speed by kernel bitbang
+ algoritm. You may use lower numbers, if I2C
+ messages are lost (16 is known to work on
+ all supported cards).
bttv_gpio=0/1
gpiomask=

Documentation/video4linux/cx2341x/README.hm12

View file
diff --git a/Documentation/video4linux/cx2341x/README.hm12 b/Documentation/video4linux/cx2341x/README.hm12
new file mode 100644
index 0000000..0e213ed
--- /dev/null
+++ b/Documentation/video4linux/cx2341x/README.hm12
@@ -0,0 +1,116 @@
+The cx23416 can produce (and the cx23415 can also read) raw YUV output. The
+format of a YUV frame is specific to this chip and is called HM12. 'HM' stands
+for 'Hauppauge Macroblock', which is a misnomer as 'Conexant Macroblock' would
+be more accurate.
+
+The format is YUV 4:2:0 which uses 1 Y byte per pixel and 1 U and V byte per
+four pixels.
+
+The data is encoded as two macroblock planes, the first containing the Y
+values, the second containing UV macroblocks.
+
+The Y plane is divided into blocks of 16x16 pixels from left to right
+and from top to bottom. Each block is transmitted in turn, line-by-line.
+
+So the first 16 bytes are the first line of the top-left block, the
+second 16 bytes are the second line of the top-left block, etc. After
+transmitting this block the first line of the block on the right to the
+first block is transmitted, etc.
+
+The UV plane is divided into blocks of 16x8 UV values going from left
+to right, top to bottom. Each block is transmitted in turn, line-by-line.
+
+So the first 16 bytes are the first line of the top-left block and
+contain 8 UV value pairs (16 bytes in total). The second 16 bytes are the
+second line of 8 UV pairs of the top-left block, etc. After transmitting
+this block the first line of the block on the right to the first block is
+transmitted, etc.
+
+The code below is given as an example on how to convert HM12 to separate
+Y, U and V planes. This code assumes frames of 720x576 (PAL) pixels.
+
+The width of a frame is always 720 pixels, regardless of the actual specified
+width.
+
+--------------------------------------------------------------------------
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+static unsigned char frame[576*720*3/2];
+static unsigned char framey[576*720];
+static unsigned char frameu[576*720 / 4];
+static unsigned char framev[576*720 / 4];
+
+static void de_macro_y(unsigned char* dst, unsigned char *src, int dstride, int w, int h)
+{
+ unsigned int y, x, i;
+
+ // descramble Y plane
+ // dstride = 720 = w
+ // The Y plane is divided into blocks of 16x16 pixels
+ // Each block in transmitted in turn, line-by-line.
+ for (y = 0; y < h; y += 16) {
+ for (x = 0; x < w; x += 16) {
+ for (i = 0; i < 16; i++) {
+ memcpy(dst + x + (y + i) * dstride, src, 16);
+ src += 16;
+ }
+ }
+ }
+}
+
+static void de_macro_uv(unsigned char *dstu, unsigned char *dstv, unsigned char *src, int dstride, int w, int h)
+{
+ unsigned int y, x, i;
+
+ // descramble U/V plane
+ // dstride = 720 / 2 = w
+ // The U/V values are interlaced (UVUV...).
+ // Again, the UV plane is divided into blocks of 16x16 UV values.
+ // Each block in transmitted in turn, line-by-line.
+ for (y = 0; y < h; y += 16) {
+ for (x = 0; x < w; x += 8) {
+ for (i = 0; i < 16; i++) {
+ int idx = x + (y + i) * dstride;
+
+ dstu[idx+0] = src[0]; dstv[idx+0] = src[1];
+ dstu[idx+1] = src[2]; dstv[idx+1] = src[3];
+ dstu[idx+2] = src[4]; dstv[idx+2] = src[5];
+ dstu[idx+3] = src[6]; dstv[idx+3] = src[7];
+ dstu[idx+4] = src[8]; dstv[idx+4] = src[9];
+ dstu[idx+5] = src[10]; dstv[idx+5] = src[11];
+ dstu[idx+6] = src[12]; dstv[idx+6] = src[13];
+ dstu[idx+7] = src[14]; dstv[idx+7] = src[15];
+ src += 16;
+ }
+ }
+ }
+}
+
+/*************************************************************************/
+int main(int argc, char **argv)
+{
+ FILE *fin;
+ int i;
+
+ if (argc == 1) fin = stdin;
+ else fin = fopen(argv[1], "r");
+
+ if (fin == NULL) {
+ fprintf(stderr, "cannot open input\n");
+ exit(-1);
+ }
+ while (fread(frame, sizeof(frame), 1, fin) == 1) {
+ de_macro_y(framey, frame, 720, 720, 576);
+ de_macro_uv(frameu, framev, frame + 720 * 576, 720 / 2, 720 / 2, 576 / 2);
+ fwrite(framey, sizeof(framey), 1, stdout);
+ fwrite(framev, sizeof(framev), 1, stdout);
+ fwrite(frameu, sizeof(frameu), 1, stdout);
+ }
+ fclose(fin);
+ return 0;
+}
+
+--------------------------------------------------------------------------

Documentation/video4linux/cx2341x/README.vbi

View file
diff --git a/Documentation/video4linux/cx2341x/README.vbi b/Documentation/video4linux/cx2341x/README.vbi
new file mode 100644
index 0000000..5807cf1
--- /dev/null
+++ b/Documentation/video4linux/cx2341x/README.vbi
@@ -0,0 +1,45 @@
+
+Format of embedded V4L2_MPEG_STREAM_VBI_FMT_IVTV VBI data
+=========================================================
+
+This document describes the V4L2_MPEG_STREAM_VBI_FMT_IVTV format of the VBI data
+embedded in an MPEG-2 program stream. This format is in part dictated by some
+hardware limitations of the ivtv driver (the driver for the Conexant cx23415/6
+chips), in particular a maximum size for the VBI data. Anything longer is cut
+off when the MPEG stream is played back through the cx23415.
+
+The advantage of this format is it is very compact and that all VBI data for
+all lines can be stored while still fitting within the maximum allowed size.
+
+The stream ID of the VBI data is 0xBD. The maximum size of the embedded data is
+4 + 43 * 36, which is 4 bytes for a header and 2 * 18 VBI lines with a 1 byte
+header and a 42 bytes payload each. Anything beyond this limit is cut off by
+the cx23415/6 firmware. Besides the data for the VBI lines we also need 36 bits
+for a bitmask determining which lines are captured and 4 bytes for a magic cookie,
+signifying that this data package contains V4L2_MPEG_STREAM_VBI_FMT_IVTV VBI data.
+If all lines are used, then there is no longer room for the bitmask. To solve this
+two different magic numbers were introduced:
+
+'itv0': After this magic number two unsigned longs follow. Bits 0-17 of the first
+unsigned long denote which lines of the first field are captured. Bits 18-31 of
+the first unsigned long and bits 0-3 of the second unsigned long are used for the
+second field.
+
+'ITV0': This magic number assumes all VBI lines are captured, i.e. it implicitly
+implies that the bitmasks are 0xffffffff and 0xf.
+
+After these magic cookies (and the 8 byte bitmask in case of cookie 'itv0') the
+captured VBI lines start:
+
+For each line the least significant 4 bits of the first byte contain the data type.
+Possible values are shown in the table below. The payload is in the following 42
+bytes.
+
+Here is the list of possible data types:
+
+#define IVTV_SLICED_TYPE_TELETEXT 0x1 // Teletext (uses lines 6-22 for PAL)
+#define IVTV_SLICED_TYPE_CC 0x4 // Closed Captions (line 21 NTSC)
+#define IVTV_SLICED_TYPE_WSS 0x5 // Wide Screen Signal (line 23 PAL)
+#define IVTV_SLICED_TYPE_VPS 0x7 // Video Programming System (PAL) (line 16)
+
+Hans Verkuil <[email protected]>

drivers/media/common/Kconfig

View file
diff --git a/drivers/media/common/Kconfig b/drivers/media/common/Kconfig
index 1a04db4..f33e5d9 100644
--- a/drivers/media/common/Kconfig
+++ b/drivers/media/common/Kconfig
@@ -4,7 +4,6 @@ config VIDEO_SAA7146
config VIDEO_SAA7146_VV
tristate
- select VIDEO_V4L2
select VIDEO_BUF
select VIDEO_VIDEOBUF
select VIDEO_SAA7146

drivers/media/common/ir-keymaps.c

View file
diff --git a/drivers/media/common/ir-keymaps.c b/drivers/media/common/ir-keymaps.c
index ca98d94..db75344 100644
--- a/drivers/media/common/ir-keymaps.c
+++ b/drivers/media/common/ir-keymaps.c
@@ -32,6 +32,37 @@ IR_KEYTAB_TYPE ir_codes_empty[IR_KEYTAB_SIZE] = {
EXPORT_SYMBOL_GPL(ir_codes_empty);
+/* Michal Majchrowicz <[email protected]> */
+IR_KEYTAB_TYPE ir_codes_proteus_2309[IR_KEYTAB_SIZE] = {
+ /* numeric */
+ [ 0x00 ] = KEY_0,
+ [ 0x01 ] = KEY_1,
+ [ 0x02 ] = KEY_2,
+ [ 0x03 ] = KEY_3,
+ [ 0x04 ] = KEY_4,
+ [ 0x05 ] = KEY_5,
+ [ 0x06 ] = KEY_6,
+ [ 0x07 ] = KEY_7,
+ [ 0x08 ] = KEY_8,
+ [ 0x09 ] = KEY_9,
+
+ [ 0x5c ] = KEY_POWER, /* power */
+ [ 0x20 ] = KEY_F, /* full screen */
+ [ 0x0f ] = KEY_BACKSPACE, /* recall */
+ [ 0x1b ] = KEY_ENTER, /* mute */
+ [ 0x41 ] = KEY_RECORD, /* record */
+ [ 0x43 ] = KEY_STOP, /* stop */
+ [ 0x16 ] = KEY_S,
+ [ 0x1a ] = KEY_Q, /* off */
+ [ 0x2e ] = KEY_RED,
+ [ 0x1f ] = KEY_DOWN, /* channel - */
+ [ 0x1c ] = KEY_UP, /* channel + */
+ [ 0x10 ] = KEY_LEFT, /* volume - */
+ [ 0x1e ] = KEY_RIGHT, /* volume + */
+ [ 0x14 ] = KEY_F1,
+};
+
+EXPORT_SYMBOL_GPL(ir_codes_proteus_2309);
/* Matt Jesson <[email protected] */
IR_KEYTAB_TYPE ir_codes_avermedia_dvbt[IR_KEYTAB_SIZE] = {
[ 0x28 ] = KEY_0, //'0' / 'enter'
@@ -1473,3 +1504,51 @@ IR_KEYTAB_TYPE ir_codes_npgtech[IR_KEYTAB_SIZE] = {
};
EXPORT_SYMBOL_GPL(ir_codes_npgtech);
+
+/* Norwood Micro (non-Pro) TV Tuner
+ By Peter Naulls <[email protected]>
+ Key comments are the functions given in the manual */
+IR_KEYTAB_TYPE ir_codes_norwood[IR_KEYTAB_SIZE] = {
+ /* Keys 0 to 9 */
+ [ 0x20 ] = KEY_0,
+ [ 0x21 ] = KEY_1,
+ [ 0x22 ] = KEY_2,
+ [ 0x23 ] = KEY_3,
+ [ 0x24 ] = KEY_4,
+ [ 0x25 ] = KEY_5,
+ [ 0x26 ] = KEY_6,
+ [ 0x27 ] = KEY_7,
+ [ 0x28 ] = KEY_8,
+ [ 0x29 ] = KEY_9,
+
+ [ 0x78 ] = KEY_TUNER, /* Video Source */
+ [ 0x2c ] = KEY_EXIT, /* Open/Close software */
+ [ 0x2a ] = KEY_SELECT, /* 2 Digit Select */
+ [ 0x69 ] = KEY_AGAIN, /* Recall */
+
+ [ 0x32 ] = KEY_BRIGHTNESSUP, /* Brightness increase */
+ [ 0x33 ] = KEY_BRIGHTNESSDOWN, /* Brightness decrease */
+ [ 0x6b ] = KEY_KPPLUS, /* (not named >>>>>) */
+ [ 0x6c ] = KEY_KPMINUS, /* (not named <<<<<) */
+
+ [ 0x2d ] = KEY_MUTE, /* Mute */
+ [ 0x30 ] = KEY_VOLUMEUP, /* Volume up */
+ [ 0x31 ] = KEY_VOLUMEDOWN, /* Volume down */
+ [ 0x60 ] = KEY_CHANNELUP, /* Channel up */
+ [ 0x61 ] = KEY_CHANNELDOWN, /* Channel down */
+
+ [ 0x3f ] = KEY_RECORD, /* Record */
+ [ 0x37 ] = KEY_PLAY, /* Play */
+ [ 0x36 ] = KEY_PAUSE, /* Pause */
+ [ 0x2b ] = KEY_STOP, /* Stop */
+ [ 0x67 ] = KEY_FASTFORWARD, /* Foward */
+ [ 0x66 ] = KEY_REWIND, /* Rewind */
+ [ 0x3e ] = KEY_SEARCH, /* Auto Scan */
+ [ 0x2e ] = KEY_CAMERA, /* Capture Video */
+ [ 0x6d ] = KEY_MENU, /* Show/Hide Control */
+ [ 0x2f ] = KEY_ZOOM, /* Full Screen */
+ [ 0x34 ] = KEY_RADIO, /* FM */
+ [ 0x65 ] = KEY_POWER, /* Computer power */
+};
+
+EXPORT_SYMBOL_GPL(ir_codes_norwood);

drivers/media/common/saa7146_fops.c

View file
diff --git a/drivers/media/common/saa7146_fops.c b/drivers/media/common/saa7146_fops.c
index 0027acc..d867a6a 100644
--- a/drivers/media/common/saa7146_fops.c
+++ b/drivers/media/common/saa7146_fops.c
@@ -455,7 +455,6 @@ static void vv_callback(struct saa7146_dev *dev, unsigned long status)
static struct video_device device_template =
{
- .hardware = VID_HARDWARE_SAA7146,
.fops = &video_fops,
.minor = -1,
};

drivers/media/dvb/b2c2/Kconfig

View file
diff --git a/drivers/media/dvb/b2c2/Kconfig b/drivers/media/dvb/b2c2/Kconfig
index 49a06fc..a0dcd59 100644
--- a/drivers/media/dvb/b2c2/Kconfig
+++ b/drivers/media/dvb/b2c2/Kconfig
@@ -2,13 +2,13 @@ config DVB_B2C2_FLEXCOP
tristate "Technisat/B2C2 FlexCopII(b) and FlexCopIII adapters"
depends on DVB_CORE && I2C
select DVB_PLL
- select DVB_STV0299
- select DVB_MT352
- select DVB_MT312
- select DVB_NXT200X
- select DVB_STV0297
- select DVB_BCM3510
- select DVB_LGDT330X
+ select DVB_STV0299 if !DVB_FE_CUSTOMISE
+ select DVB_MT352 if !DVB_FE_CUSTOMISE
+ select DVB_MT312 if !DVB_FE_CUSTOMISE
+ select DVB_NXT200X if !DVB_FE_CUSTOMISE
+ select DVB_STV0297 if !DVB_FE_CUSTOMISE
+ select DVB_BCM3510 if !DVB_FE_CUSTOMISE
+ select DVB_LGDT330X if !DVB_FE_CUSTOMISE
help
Support for the digital TV receiver chip made by B2C2 Inc. included in
Technisats PCI cards and USB boxes.

drivers/media/dvb/b2c2/flexcop-fe-tuner.c

View file
diff --git a/drivers/media/dvb/b2c2/flexcop-fe-tuner.c b/drivers/media/dvb/b2c2/flexcop-fe-tuner.c
index 3be87c7..b8ba878 100644
--- a/drivers/media/dvb/b2c2/flexcop-fe-tuner.c
+++ b/drivers/media/dvb/b2c2/flexcop-fe-tuner.c
@@ -505,7 +505,7 @@ int flexcop_frontend_init(struct flexcop_device *fc)
struct dvb_frontend_ops *ops;
/* try the sky v2.6 (stv0299/Samsung tbmu24112(sl1935)) */
- if ((fc->fe = stv0299_attach(&samsung_tbmu24112_config, &fc->i2c_adap)) != NULL) {
+ if ((fc->fe = dvb_attach(stv0299_attach, &samsung_tbmu24112_config, &fc->i2c_adap)) != NULL) {
ops = &fc->fe->ops;
ops->tuner_ops.set_params = samsung_tbmu24112_tuner_set_params;
@@ -519,36 +519,36 @@ int flexcop_frontend_init(struct flexcop_device *fc)
info("found the stv0299 at i2c address: 0x%02x",samsung_tbmu24112_config.demod_address);
} else
/* try the air dvb-t (mt352/Samsung tdtc9251dh0(??)) */
- if ((fc->fe = mt352_attach(&samsung_tdtc9251dh0_config, &fc->i2c_adap)) != NULL ) {
+ if ((fc->fe = dvb_attach(mt352_attach, &samsung_tdtc9251dh0_config, &fc->i2c_adap)) != NULL ) {
fc->dev_type = FC_AIR_DVB;
fc->fe->ops.tuner_ops.calc_regs = samsung_tdtc9251dh0_calc_regs;
info("found the mt352 at i2c address: 0x%02x",samsung_tdtc9251dh0_config.demod_address);
} else
/* try the air atsc 2nd generation (nxt2002) */
- if ((fc->fe = nxt200x_attach(&samsung_tbmv_config, &fc->i2c_adap)) != NULL) {
+ if ((fc->fe = dvb_attach(nxt200x_attach, &samsung_tbmv_config, &fc->i2c_adap)) != NULL) {
fc->dev_type = FC_AIR_ATSC2;
- dvb_pll_attach(fc->fe, 0x61, &fc->i2c_adap, &dvb_pll_samsung_tbmv);
+ dvb_attach(dvb_pll_attach, fc->fe, 0x61, NULL, &dvb_pll_samsung_tbmv);
info("found the nxt2002 at i2c address: 0x%02x",samsung_tbmv_config.demod_address);
} else
/* try the air atsc 3nd generation (lgdt3303) */
- if ((fc->fe = lgdt330x_attach(&air2pc_atsc_hd5000_config, &fc->i2c_adap)) != NULL) {
+ if ((fc->fe = dvb_attach(lgdt330x_attach, &air2pc_atsc_hd5000_config, &fc->i2c_adap)) != NULL) {
fc->dev_type = FC_AIR_ATSC3;
fc->fe->ops.tuner_ops.set_params = lgdt3303_tuner_set_params;
info("found the lgdt3303 at i2c address: 0x%02x",air2pc_atsc_hd5000_config.demod_address);
} else
/* try the air atsc 1nd generation (bcm3510)/panasonic ct10s */
- if ((fc->fe = bcm3510_attach(&air2pc_atsc_first_gen_config, &fc->i2c_adap)) != NULL) {
+ if ((fc->fe = dvb_attach(bcm3510_attach, &air2pc_atsc_first_gen_config, &fc->i2c_adap)) != NULL) {
fc->dev_type = FC_AIR_ATSC1;
info("found the bcm3510 at i2c address: 0x%02x",air2pc_atsc_first_gen_config.demod_address);
} else
/* try the cable dvb (stv0297) */
- if ((fc->fe = stv0297_attach(&alps_tdee4_stv0297_config, &fc->i2c_adap)) != NULL) {
+ if ((fc->fe = dvb_attach(stv0297_attach, &alps_tdee4_stv0297_config, &fc->i2c_adap)) != NULL) {
fc->dev_type = FC_CABLE;
fc->fe->ops.tuner_ops.set_params = alps_tdee4_stv0297_tuner_set_params;
info("found the stv0297 at i2c address: 0x%02x",alps_tdee4_stv0297_config.demod_address);
} else
/* try the sky v2.3 (vp310/Samsung tbdu18132(tsa5059)) */
- if ((fc->fe = vp310_mt312_attach(&skystar23_samsung_tbdu18132_config, &fc->i2c_adap)) != NULL) {
+ if ((fc->fe = dvb_attach(vp310_mt312_attach, &skystar23_samsung_tbdu18132_config, &fc->i2c_adap)) != NULL) {
ops = &fc->fe->ops;
ops->tuner_ops.set_params = skystar23_samsung_tbdu18132_tuner_set_params;
@@ -571,9 +571,7 @@ int flexcop_frontend_init(struct flexcop_device *fc)
} else {
if (dvb_register_frontend(&fc->dvb_adapter, fc->fe)) {
err("frontend registration failed!");
- ops = &fc->fe->ops;
- if (ops->release != NULL)
- ops->release(fc->fe);
+ dvb_frontend_detach(fc->fe);
fc->fe = NULL;
return -EINVAL;
}
@@ -584,8 +582,10 @@ int flexcop_frontend_init(struct flexcop_device *fc)
void flexcop_frontend_exit(struct flexcop_device *fc)
{
- if (fc->init_state & FC_STATE_FE_INIT)
+ if (fc->init_state & FC_STATE_FE_INIT) {
dvb_unregister_frontend(fc->fe);
+ dvb_frontend_detach(fc->fe);
+ }
fc->init_state &= ~FC_STATE_FE_INIT;
}

drivers/media/dvb/bt8xx/Kconfig

View file
diff --git a/drivers/media/dvb/bt8xx/Kconfig b/drivers/media/dvb/bt8xx/Kconfig
index 7d0ee1a..ae2ff5d 100644
--- a/drivers/media/dvb/bt8xx/Kconfig
+++ b/drivers/media/dvb/bt8xx/Kconfig
@@ -2,13 +2,13 @@ config DVB_BT8XX
tristate "BT8xx based PCI cards"
depends on DVB_CORE && PCI && I2C && VIDEO_BT848
select DVB_PLL
- select DVB_MT352
- select DVB_SP887X
- select DVB_NXT6000
- select DVB_CX24110
- select DVB_OR51211
- select DVB_LGDT330X
- select DVB_ZL10353
+ select DVB_MT352 if !DVB_FE_CUSTOMISE
+ select DVB_SP887X if !DVB_FE_CUSTOMISE
+ select DVB_NXT6000 if !DVB_FE_CUSTOMISE
+ select DVB_CX24110 if !DVB_FE_CUSTOMISE
+ select DVB_OR51211 if !DVB_FE_CUSTOMISE
+ select DVB_LGDT330X if !DVB_FE_CUSTOMISE
+ select DVB_ZL10353 if !DVB_FE_CUSTOMISE
select FW_LOADER
help
Support for PCI cards based on the Bt8xx PCI bridge. Examples are

drivers/media/dvb/bt8xx/dst.c

View file
diff --git a/drivers/media/dvb/bt8xx/dst.c b/drivers/media/dvb/bt8xx/dst.c
index 06ac899..9f72b70 100644
--- a/drivers/media/dvb/bt8xx/dst.c
+++ b/drivers/media/dvb/bt8xx/dst.c
@@ -1715,6 +1715,15 @@ static int dst_get_frontend(struct dvb_frontend *fe, struct dvb_frontend_paramet
static void dst_release(struct dvb_frontend *fe)
{
struct dst_state *state = fe->demodulator_priv;
+ if (state->dst_ca) {
+ dvb_unregister_device(state->dst_ca);
+#ifdef CONFIG_DVB_CORE_ATTACH
+ symbol_put(dst_ca_attach);
+#endif
+ }
+#ifdef CONFIG_DVB_CORE_ATTACH
+ symbol_put(dst_attach);
+#endif
kfree(state);
}

drivers/media/dvb/bt8xx/dst_ca.c

View file
diff --git a/drivers/media/dvb/bt8xx/dst_ca.c b/drivers/media/dvb/bt8xx/dst_ca.c
index fa923b9..240ad08 100644
--- a/drivers/media/dvb/bt8xx/dst_ca.c
+++ b/drivers/media/dvb/bt8xx/dst_ca.c
@@ -699,12 +699,17 @@ static struct dvb_device dvbdev_ca = {
.fops = &dst_ca_fops
};
-int dst_ca_attach(struct dst_state *dst, struct dvb_adapter *dvb_adapter)
+struct dvb_device *dst_ca_attach(struct dst_state *dst, struct dvb_adapter *dvb_adapter)
{
struct dvb_device *dvbdev;
+
dprintk(verbose, DST_CA_ERROR, 1, "registering DST-CA device");
- dvb_register_device(dvb_adapter, &dvbdev, &dvbdev_ca, dst, DVB_DEVICE_CA);
- return 0;
+ if (dvb_register_device(dvb_adapter, &dvbdev, &dvbdev_ca, dst, DVB_DEVICE_CA) == 0) {
+ dst->dst_ca = dvbdev;
+ return dst->dst_ca;
+ }
+
+ return NULL;
}
EXPORT_SYMBOL(dst_ca_attach);

drivers/media/dvb/bt8xx/dst_common.h

View file
diff --git a/drivers/media/dvb/bt8xx/dst_common.h b/drivers/media/dvb/bt8xx/dst_common.h
index 0677b04..3bf084f 100644
--- a/drivers/media/dvb/bt8xx/dst_common.h
+++ b/drivers/media/dvb/bt8xx/dst_common.h
@@ -140,6 +140,7 @@ struct dst_state {
char *tuner_name;
struct mutex dst_mutex;
u8 fw_name[8];
+ struct dvb_device *dst_ca;
};
struct tuner_types {
@@ -178,7 +179,7 @@ int write_dst(struct dst_state *state, u8 * data, u8 len);
int read_dst(struct dst_state *state, u8 * ret, u8 len);
u8 dst_check_sum(u8 * buf, u32 len);
struct dst_state* dst_attach(struct dst_state* state, struct dvb_adapter *dvb_adapter);
-int dst_ca_attach(struct dst_state *state, struct dvb_adapter *dvb_adapter);
+struct dvb_device *dst_ca_attach(struct dst_state *state, struct dvb_adapter *dvb_adapter);
int dst_gpio_outb(struct dst_state* state, u32 mask, u32 enbb, u32 outhigh, int delay);
int dst_command(struct dst_state* state, u8 * data, u8 len);

drivers/media/dvb/bt8xx/dvb-bt8xx.c

View file
diff --git a/drivers/media/dvb/bt8xx/dvb-bt8xx.c b/drivers/media/dvb/bt8xx/dvb-bt8xx.c
index b715b97..fb6c4cc 100644
--- a/drivers/media/dvb/bt8xx/dvb-bt8xx.c
+++ b/drivers/media/dvb/bt8xx/dvb-bt8xx.c
@@ -67,7 +67,7 @@ static void dvb_bt8xx_task(unsigned long data)
static int dvb_bt8xx_start_feed(struct dvb_demux_feed *dvbdmxfeed)
{
- struct dvb_demux *dvbdmx = dvbdmxfeed->demux;
+ struct dvb_demux*dvbdmx = dvbdmxfeed->demux;
struct dvb_bt8xx_card *card = dvbdmx->priv;
int rc;
@@ -595,15 +595,14 @@ static void lgdt330x_reset(struct dvb_bt8xx_card *bt)
static void frontend_init(struct dvb_bt8xx_card *card, u32 type)
{
- int ret;
struct dst_state* state = NULL;
switch(type) {
case BTTV_BOARD_DVICO_DVBT_LITE:
- card->fe = mt352_attach(&thomson_dtt7579_config, card->i2c_adapter);
+ card->fe = dvb_attach(mt352_attach, &thomson_dtt7579_config, card->i2c_adapter);
if (card->fe == NULL)
- card->fe = zl10353_attach(&thomson_dtt7579_zl10353_config,
+ card->fe = dvb_attach(zl10353_attach, &thomson_dtt7579_zl10353_config,
card->i2c_adapter);

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-core/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-core/dvb_frontend.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-core/dvb_frontend.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-core/dvbdev.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/a800.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/cxusb.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dibusb-common.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dibusb-mb.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dibusb-mc.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dibusb.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/digitv.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dtt200u.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dvb-usb-dvb.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dvb-usb-ids.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/dvb-usb-remote.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/nova-t-usb2.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/dvb-usb/umt-010.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/bcm3510.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/cx22700.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/cx22702.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/cx22702.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/cx24110.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/cx24110.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/cx24123.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/cx24123.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000-common.c

View before deletion

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000-common.h

View before deletion

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000mb.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000mb_priv.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000mc.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000mc.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dib3000mc_priv.h

View before deletion

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dibx000_common.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dibx000_common.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dvb-pll.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/dvb-pll.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/isl6421.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/isl6421.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/l64781.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/lgdt330x.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/lnbp21.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/lnbp21.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/mt2060.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/mt2060.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/mt2060_priv.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/mt312.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/mt352.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/mt352.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/nxt200x.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/nxt6000.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/or51132.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/or51211.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/s5h1420.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/sp8870.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/sp887x.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/stv0297.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/stv0299.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/stv0299.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda10021.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda10021.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda1004x.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda1004x.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda10086.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda10086.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda8083.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda826x.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tda826x.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tua6100.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/tua6100.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/ves1820.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/ves1x93.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/zl10353.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/frontends/zl10353.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/av7110.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/av7110_av.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/av7110_ca.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/av7110_hw.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/av7110_v4l.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/budget-av.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/budget-ci.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/budget-patch.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttpci/budget.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttusb-budget/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttusb-budget/dvb-ttusb-budget.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb/ttusb-dec/ttusb_dec.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/dsbr100.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-aimslab.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-aztech.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-cadet.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-gemtek-pci.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-gemtek.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-maestro.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-maxiradio.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-rtrack2.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-sf16fmi.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-sf16fmr2.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-terratec.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-trust.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-typhoon.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/radio/radio-zoltrix.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/bt866.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/bt8xx/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/bt8xx/bttv-cards.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/bt8xx/bttv-driver.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/bt8xx/bttv-i2c.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/compat_ioctl32.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx2341x.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx25840/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx25840/cx25840-vbi.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-blackbird.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-cards.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-dvb.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-i2c.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-input.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-tvaudio.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88-video.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/cx88/cx88.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/em28xx/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/em28xx/em28xx-video.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/ks0127.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-ctrl.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-encoder.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-hdw-internal.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-hdw.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-i2c-chips-v4l2.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-i2c-cmd-v4l2.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-i2c-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-main.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-sysfs.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/pvrusb2/pvrusb2-v4l2.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa5246a.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa5249.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7115.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa711x_regs.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/saa7134-alsa.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/saa7134-cards.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/saa7134-core.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/saa7134-dvb.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/saa7134-input.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/saa7134-tvaudio.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/saa7134/saa7134.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/tda9887.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/tuner-simple.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/tuner-types.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/tvaudio.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/tveeprom.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/tvp5150.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/usbvideo/konicawc.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/usbvideo/vicam.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/v4l1-compat.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/v4l2-common.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/video-buf-dvb.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/videodev.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/vino.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/vivi.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/vpx3220.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/zoran_card.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/zoran_driver.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/video/zr36120.c

View file

This diff is incomplete. Download the complete patch.

include/linux/videodev2.h

View file

This diff is incomplete. Download the complete patch.

include/media/ir-common.h

View file

This diff is incomplete. Download the complete patch.

include/media/tuner-types.h

View file

This diff is incomplete. Download the complete patch.

include/media/tuner.h

View file

This diff is incomplete. Download the complete patch.

include/media/v4l2-common.h

View file

This diff is incomplete. Download the complete patch.

include/media/v4l2-dev.h

View file

This diff is incomplete. Download the complete patch.