aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/video/cx231xx/cx231xx-cards.c40
-rw-r--r--drivers/media/video/cx231xx/cx231xx-dvb.c1
-rw-r--r--drivers/media/video/cx231xx/cx231xx.h1
3 files changed, 42 insertions, 0 deletions
diff --git a/drivers/media/video/cx231xx/cx231xx-cards.c b/drivers/media/video/cx231xx/cx231xx-cards.c
index f49230d170e6..15a94d22506d 100644
--- a/drivers/media/video/cx231xx/cx231xx-cards.c
+++ b/drivers/media/video/cx231xx/cx231xx-cards.c
@@ -401,6 +401,44 @@ struct cx231xx_board cx231xx_boards[] = {
401 .gpio = NULL, 401 .gpio = NULL,
402 } }, 402 } },
403 }, 403 },
404 [CX231XX_BOARD_KWORLD_UB430_USB_HYBRID] = {
405 .name = "Kworld UB430 USB Hybrid",
406 .tuner_type = TUNER_NXP_TDA18271,
407 .tuner_addr = 0x60,
408 .decoder = CX231XX_AVDECODER,
409 .output_mode = OUT_MODE_VIP11,
410 .demod_xfer_mode = 0,
411 .ctl_pin_status_mask = 0xFFFFFFC4,
412 .agc_analog_digital_select_gpio = 0x11, /* According with PV cxPolaris.inf file */
413 .tuner_sif_gpio = -1,
414 .tuner_scl_gpio = -1,
415 .tuner_sda_gpio = -1,
416 .gpio_pin_status_mask = 0x4001000,
417 .tuner_i2c_master = 2,
418 .demod_i2c_master = 1,
419 .ir_i2c_master = 2,
420 .has_dvb = 1,
421 .demod_addr = 0x10,
422 .norm = V4L2_STD_PAL_M,
423 .input = {{
424 .type = CX231XX_VMUX_TELEVISION,
425 .vmux = CX231XX_VIN_3_1,
426 .amux = CX231XX_AMUX_VIDEO,
427 .gpio = NULL,
428 }, {
429 .type = CX231XX_VMUX_COMPOSITE1,
430 .vmux = CX231XX_VIN_2_1,
431 .amux = CX231XX_AMUX_LINE_IN,
432 .gpio = NULL,
433 }, {
434 .type = CX231XX_VMUX_SVIDEO,
435 .vmux = CX231XX_VIN_1_1 |
436 (CX231XX_VIN_1_2 << 8) |
437 CX25840_SVIDEO_ON,
438 .amux = CX231XX_AMUX_LINE_IN,
439 .gpio = NULL,
440 } },
441 },
404 [CX231XX_BOARD_PV_PLAYTV_USB_HYBRID] = { 442 [CX231XX_BOARD_PV_PLAYTV_USB_HYBRID] = {
405 .name = "Pixelview PlayTV USB Hybrid", 443 .name = "Pixelview PlayTV USB Hybrid",
406 .tuner_type = TUNER_NXP_TDA18271, 444 .tuner_type = TUNER_NXP_TDA18271,
@@ -500,6 +538,8 @@ struct usb_device_id cx231xx_id_table[] = {
500 .driver_info = CX231XX_BOARD_PV_PLAYTV_USB_HYBRID}, 538 .driver_info = CX231XX_BOARD_PV_PLAYTV_USB_HYBRID},
501 {USB_DEVICE(USB_VID_PIXELVIEW, 0x5014), 539 {USB_DEVICE(USB_VID_PIXELVIEW, 0x5014),
502 .driver_info = CX231XX_BOARD_PV_XCAPTURE_USB}, 540 .driver_info = CX231XX_BOARD_PV_XCAPTURE_USB},
541 {USB_DEVICE(0x1b80, 0xe424),
542 .driver_info = CX231XX_BOARD_KWORLD_UB430_USB_HYBRID},
503 {}, 543 {},
504}; 544};
505 545
diff --git a/drivers/media/video/cx231xx/cx231xx-dvb.c b/drivers/media/video/cx231xx/cx231xx-dvb.c
index 363aa6004221..da9a4a0aab79 100644
--- a/drivers/media/video/cx231xx/cx231xx-dvb.c
+++ b/drivers/media/video/cx231xx/cx231xx-dvb.c
@@ -704,6 +704,7 @@ static int dvb_init(struct cx231xx *dev)
704 break; 704 break;
705 705
706 case CX231XX_BOARD_PV_PLAYTV_USB_HYBRID: 706 case CX231XX_BOARD_PV_PLAYTV_USB_HYBRID:
707 case CX231XX_BOARD_KWORLD_UB430_USB_HYBRID:
707 708
708 printk(KERN_INFO "%s: looking for demod on i2c bus: %d\n", 709 printk(KERN_INFO "%s: looking for demod on i2c bus: %d\n",
709 __func__, i2c_adapter_id(&dev->i2c_bus[dev->board.tuner_i2c_master].i2c_adap)); 710 __func__, i2c_adapter_id(&dev->i2c_bus[dev->board.tuner_i2c_master].i2c_adap));
diff --git a/drivers/media/video/cx231xx/cx231xx.h b/drivers/media/video/cx231xx/cx231xx.h
index bd4a9cf29577..7b95eeeffa94 100644
--- a/drivers/media/video/cx231xx/cx231xx.h
+++ b/drivers/media/video/cx231xx/cx231xx.h
@@ -65,6 +65,7 @@
65#define CX231XX_BOARD_HAUPPAUGE_USBLIVE2 9 65#define CX231XX_BOARD_HAUPPAUGE_USBLIVE2 9
66#define CX231XX_BOARD_PV_PLAYTV_USB_HYBRID 10 66#define CX231XX_BOARD_PV_PLAYTV_USB_HYBRID 10
67#define CX231XX_BOARD_PV_XCAPTURE_USB 11 67#define CX231XX_BOARD_PV_XCAPTURE_USB 11
68#define CX231XX_BOARD_KWORLD_UB430_USB_HYBRID 12
68 69
69/* Limits minimum and default number of buffers */ 70/* Limits minimum and default number of buffers */
70#define CX231XX_MIN_BUF 4 71#define CX231XX_MIN_BUF 4