File:OTG102.patch

From LinuxTVWiki
Revision as of 21:47, 28 February 2013 by Gomboc (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

diff -uprN linux-3.6/drivers/media/video/cx231xx/cx231xx-avcore.c linux-3.6.new/drivers/media/video/cx231xx/cx231xx-avcore.c --- linux-3.6/drivers/media/video/cx231xx/cx231xx-avcore.c 2012-09-30 17:47:46.000000000 -0600 +++ linux-3.6.new/drivers/media/video/cx231xx/cx231xx-avcore.c 2013-02-26 19:58:51.096793077 -0700 @@ -352,6 +352,7 @@ int cx231xx_afe_update_power_control(str

	case CX231XX_BOARD_CNXT_RDE_253S:
	case CX231XX_BOARD_CNXT_RDU_253S:
	case CX231XX_BOARD_CNXT_VIDEO_GRABBER:

+ case CX231XX_BOARD_OTG102:

	case CX231XX_BOARD_HAUPPAUGE_EXETER:
	case CX231XX_BOARD_HAUPPAUGE_USBLIVE2:
	case CX231XX_BOARD_PV_PLAYTV_USB_HYBRID:

@@ -1719,6 +1720,7 @@ int cx231xx_dif_set_standard(struct cx23

	case CX231XX_BOARD_CNXT_SHELBY:
	case CX231XX_BOARD_CNXT_RDU_250:
	case CX231XX_BOARD_CNXT_VIDEO_GRABBER:

+ case CX231XX_BOARD_OTG102:

	case CX231XX_BOARD_HAUPPAUGE_EXETER:
		func_mode = 0x03;
		break;

diff -uprN linux-3.6/drivers/media/video/cx231xx/cx231xx-cards.c linux-3.6.new/drivers/media/video/cx231xx/cx231xx-cards.c --- linux-3.6/drivers/media/video/cx231xx/cx231xx-cards.c 2012-09-30 17:47:46.000000000 -0600 +++ linux-3.6.new/drivers/media/video/cx231xx/cx231xx-cards.c 2013-02-28 12:23:58.925869674 -0700 @@ -280,6 +280,37 @@ struct cx231xx_board cx231xx_boards[] =

			}
		},
	},

+ [CX231XX_BOARD_OTG102] = { + .name = "Geniatech OTG102", + .tuner_type = TUNER_ABSENT, + .decoder = CX231XX_AVDECODER, + .output_mode = OUT_MODE_VIP11, + .ctl_pin_status_mask = 0xFFFFFFC4, + .agc_analog_digital_select_gpio = 0x0c, /* According with PV CxPlrCAP.inf file */ + .gpio_pin_status_mask = 0x4001000, + .norm = V4L2_STD_NTSC, + .no_alt_vanc = 1, + .external_av = 1, + .dont_use_port_3 = 1, + //.has_417 = 1, + /* this board has hardware encoding chip supporting mpeg1/2/4, but as the 417 is apparently not working for the + reference board it is not on this one either. building the driver with this option and then loading the module + creates a second video device node, but nothing comes out of it. */ + .input = {{ + .type = CX231XX_VMUX_COMPOSITE1, + .vmux = CX231XX_VIN_2_1, + .amux = CX231XX_AMUX_LINE_IN, + .gpio = NULL, + }, { + .type = CX231XX_VMUX_SVIDEO, + .vmux = CX231XX_VIN_1_1 | + (CX231XX_VIN_1_2 << 8) | + CX25840_SVIDEO_ON, + .amux = CX231XX_AMUX_LINE_IN, + .gpio = NULL, + } + }, + },

	[CX231XX_BOARD_CNXT_RDE_250] = {
		.name = "Conexant Hybrid TV - rde 250",
		.tuner_type = TUNER_XC5000,

@@ -620,6 +651,8 @@ struct usb_device_id cx231xx_id_table[]

	 .driver_info = CX231XX_BOARD_CNXT_RDU_253S},
	{USB_DEVICE(0x0572, 0x58A6),
	 .driver_info = CX231XX_BOARD_CNXT_VIDEO_GRABBER},

+ {USB_DEVICE(0x1F4D, 0x0102), + .driver_info = CX231XX_BOARD_OTG102},

	{USB_DEVICE(0x0572, 0x589E),
	 .driver_info = CX231XX_BOARD_CNXT_RDE_250},
	{USB_DEVICE(0x0572, 0x58A0),

@@ -904,6 +937,12 @@ static int cx231xx_init_dev(struct cx231

		cx231xx_set_alt_setting(dev, INDEX_VIDEO, 3);
		cx231xx_set_alt_setting(dev, INDEX_VANC, 1);
	}

+/* + if (dev->model == CX231XX_OTG102) { + cx231xx_set_alt_setting(dev, INDEX_VIDEO, 3); + cx231xx_set_alt_setting(dev, INDEX_VANC, 1); + } +*/

	/* Cx231xx pre card setup */
	cx231xx_pre_card_setup(dev);

@@ -1295,6 +1334,12 @@ static int cx231xx_usb_probe(struct usb_

		cx231xx_enable_OSC(dev);
		cx231xx_reset_out(dev);
		cx231xx_set_alt_setting(dev, INDEX_VIDEO, 3);

+ } + + if (dev->model == CX231XX_BOARD_OTG102) { + cx231xx_enable_OSC(dev); + cx231xx_reset_out(dev); + cx231xx_set_alt_setting(dev, INDEX_VIDEO, 3);

	}

	if (dev->model == CX231XX_BOARD_CNXT_RDE_253S)

diff -uprN linux-3.6/drivers/media/video/cx231xx/cx231xx.h linux-3.6.new/drivers/media/video/cx231xx/cx231xx.h --- linux-3.6/drivers/media/video/cx231xx/cx231xx.h 2012-09-30 17:47:46.000000000 -0600 +++ linux-3.6.new/drivers/media/video/cx231xx/cx231xx.h 2013-02-26 16:01:58.924653199 -0700 @@ -68,6 +68,7 @@

#define CX231XX_BOARD_ICONBIT_U100 13
#define CX231XX_BOARD_HAUPPAUGE_USB2_FM_PAL 14
#define CX231XX_BOARD_HAUPPAUGE_USB2_FM_NTSC 15

+#define CX231XX_BOARD_OTG102 16

/* Limits minimum and default number of buffers */
#define CX231XX_MIN_BUF                 4

There are no pages that link to this file.