Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 135aae34 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (62 commits)
  V4L/DVB (12131): BUGFIX: An incorrect Carrier Recovery Loop optimization table was being
  V4L/DVB (12130): Fix a redundant compiler warning
  V4L/DVB (12003): v4l2: Move bounding code outside I2C ifdef block
  V4L/DVB (11913): cx231xx: TRY_FMT should not actually set anything
  V4L/DVB (11912): em28xx: Use v4l bounding/alignment function
  V4L/DVB (11911): cx231xx: Use v4l bounding/alignment function
  V4L/DVB (11910): mt9: Use v4l bounding/alignment function
  V4L/DVB (11909): cx23885: Use v4l bounding/alignment function
  V4L/DVB (11908): w8968cf: Use v4l bounding/alignment function
  V4L/DVB (11907): cx88: Use v4l bounding/alignment function
  V4L/DVB (11906): saa7134: Use v4l bounding/alignment function
  V4L/DVB (11905): vivi: Use v4l bounding/alignment function
  V4L/DVB (11904): zoran: Use v4l bounding/alignment functiob
  V4L/DVB (11903): sh_mobile_ceu_camera: Use v4l bounding/alignment function
  V4L/DVB (11902): pxa-camera: Use v4l bounding/alignment function
  V4L/DVB (11901): v4l2: Create helper function for bounding and aligning images
  V4L/DVB (12128): v4l2: update framework documentation.
  V4L/DVB (12125): v4l2: add new s_config subdev ops and v4l2_i2c_new_subdev_cfg/board calls
  V4L/DVB (12122): pvrusb2: De-obfuscate code which handles routing schemes
  V4L/DVB (12121): pvrusb2: Improve handling of routing schemes
  ...
parents 811e42cf eebf8d86
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -6,8 +6,8 @@
  5 -> Leadtek Winfast 2000XP Expert                       [107d:6611,107d:6613]
  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,107d:6632]
  8 -> Leadtek Winfast DV2000                              [107d:6620,107d:6621]
  9 -> Leadtek PVR 2000                                    [107d:663b,107d:663c,107d:6632,107d:6630,107d:6638,107d:6631,107d:6637,107d:663d]
 10 -> IODATA GV-VCP3/PCI                                  [10fc:d003]
 11 -> Prolink PlayTV PVR
 12 -> ASUS PVR-416                                        [1043:4823,1461:c111]
@@ -59,7 +59,7 @@
 58 -> Pinnacle PCTV HD 800i                               [11bd:0051]
 59 -> DViCO FusionHDTV 5 PCI nano                         [18ac:d530]
 60 -> Pinnacle Hybrid PCTV                                [12ab:1788]
 61 -> Winfast TV2000 XP Global                            [107d:6f18]
 61 -> Leadtek TV2000 XP Global                            [107d:6f18,107d:6618]
 62 -> PowerColor RA330                                    [14f1:ea3d]
 63 -> Geniatech X8000-MT DVBT                             [14f1:8852]
 64 -> DViCO FusionHDTV DVB-T PRO                          [18ac:db30]
+1 −0
Original line number Diff line number Diff line
@@ -65,3 +65,4 @@
 67 -> Terratec Grabby                          (em2860)        [0ccd:0096]
 68 -> Terratec AV350                           (em2860)        [0ccd:0084]
 69 -> KWorld ATSC 315U HDTV TV Box             (em2882)        [eb1a:a313]
 70 -> Evga inDtube                             (em2882)
+24 −0
Original line number Diff line number Diff line
@@ -390,6 +390,30 @@ later date. It differs between i2c drivers and as such can be confusing.
To see which chip variants are supported you can look in the i2c driver code
for the i2c_device_id table. This lists all the possibilities.

There are two more helper functions:

v4l2_i2c_new_subdev_cfg: this function adds new irq and platform_data
arguments and has both 'addr' and 'probed_addrs' arguments: if addr is not
0 then that will be used (non-probing variant), otherwise the probed_addrs
are probed.

For example: this will probe for address 0x10:

struct v4l2_subdev *sd = v4l2_i2c_new_subdev_cfg(v4l2_dev, adapter,
	       "module_foo", "chipid", 0, NULL, 0, I2C_ADDRS(0x10));

v4l2_i2c_new_subdev_board uses an i2c_board_info struct which is passed
to the i2c driver and replaces the irq, platform_data and addr arguments.

If the subdev supports the s_config core ops, then that op is called with
the irq and platform_data arguments after the subdev was setup. The older
v4l2_i2c_new_(probed_)subdev functions will call s_config as well, but with
irq set to 0 and platform_data set to NULL.

Note that in the next kernel release the functions v4l2_i2c_new_subdev,
v4l2_i2c_new_probed_subdev and v4l2_i2c_new_probed_subdev_addr will all be
replaced by a single v4l2_i2c_new_subdev that is identical to
v4l2_i2c_new_subdev_cfg but without the irq and platform_data arguments.

struct video_device
-------------------
+23 −0
Original line number Diff line number Diff line
@@ -2750,3 +2750,26 @@ IR_KEYTAB_TYPE ir_codes_dm1105_nec[IR_KEYTAB_SIZE] = {
	[0x1b] = KEY_B,		/*recall*/
};
EXPORT_SYMBOL_GPL(ir_codes_dm1105_nec);

/* EVGA inDtube
   Devin Heitmueller <devin.heitmueller@gmail.com>
 */
IR_KEYTAB_TYPE ir_codes_evga_indtube[IR_KEYTAB_SIZE] = {
	[0x12] = KEY_POWER,
	[0x02] = KEY_MODE,	/* TV */
	[0x14] = KEY_MUTE,
	[0x1a] = KEY_CHANNELUP,
	[0x16] = KEY_TV2,	/* PIP */
	[0x1d] = KEY_VOLUMEUP,
	[0x05] = KEY_CHANNELDOWN,
	[0x0f] = KEY_PLAYPAUSE,
	[0x19] = KEY_VOLUMEDOWN,
	[0x1c] = KEY_REWIND,
	[0x0d] = KEY_RECORD,
	[0x18] = KEY_FORWARD,
	[0x1e] = KEY_PREVIOUS,
	[0x1b] = KEY_STOP,
	[0x1f] = KEY_NEXT,
	[0x13] = KEY_CAMERA,
};
EXPORT_SYMBOL_GPL(ir_codes_evga_indtube);
+6 −1
Original line number Diff line number Diff line
@@ -29,6 +29,11 @@
#include <linux/dvb/frontend.h>
#include "dvb_frontend.h"

struct stv0900_reg {
	u16 addr;
	u8  val;
};

struct stv0900_config {
	u8 demod_address;
	u32 xtal;
@@ -38,7 +43,7 @@ struct stv0900_config {

	u8 path1_mode;
	u8 path2_mode;

	struct stv0900_reg *ts_config_regs;
	u8 tun1_maddress;/* 0, 1, 2, 3 for 0xc0, 0xc2, 0xc4, 0xc6 */
	u8 tun2_maddress;
	u8 tun1_adc;/* 1 for stv6110, 2 for stb6100 */
Loading