[media] cx23885: Add Leadtek Winfast PxPVR2200
Tested: Composite: http://imgur.com/Rb1TCF3 TV: http://imgur.com/KNrfsmv Firmware used: xc3028-v27.fw Not tested: audio, component, s-video, mpeg2 encoder, FM radio. For audio, it uses an CD style cable to connect to the analog "CD_IN" on the motherboard. I didn't found how to unmute it (alsamixer do not show an CD or AUX channel). Signed-off-by: Anca Emanuel <anca.emanuel@gmail.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
parent
b00ade2bb1
commit
642ca1a091
|
@ -223,6 +223,39 @@ struct cx23885_board cx23885_boards[] = {
|
||||||
.name = "Leadtek Winfast PxDVR3200 H",
|
.name = "Leadtek Winfast PxDVR3200 H",
|
||||||
.portc = CX23885_MPEG_DVB,
|
.portc = CX23885_MPEG_DVB,
|
||||||
},
|
},
|
||||||
|
[CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200] = {
|
||||||
|
.name = "Leadtek Winfast PxPVR2200",
|
||||||
|
.porta = CX23885_ANALOG_VIDEO,
|
||||||
|
.tuner_type = TUNER_XC2028,
|
||||||
|
.tuner_addr = 0x61,
|
||||||
|
.tuner_bus = 1,
|
||||||
|
.input = {{
|
||||||
|
.type = CX23885_VMUX_TELEVISION,
|
||||||
|
.vmux = CX25840_VIN2_CH1 |
|
||||||
|
CX25840_VIN5_CH2,
|
||||||
|
.amux = CX25840_AUDIO8,
|
||||||
|
.gpio0 = 0x704040,
|
||||||
|
}, {
|
||||||
|
.type = CX23885_VMUX_COMPOSITE1,
|
||||||
|
.vmux = CX25840_COMPOSITE1,
|
||||||
|
.amux = CX25840_AUDIO7,
|
||||||
|
.gpio0 = 0x704040,
|
||||||
|
}, {
|
||||||
|
.type = CX23885_VMUX_SVIDEO,
|
||||||
|
.vmux = CX25840_SVIDEO_LUMA3 |
|
||||||
|
CX25840_SVIDEO_CHROMA4,
|
||||||
|
.amux = CX25840_AUDIO7,
|
||||||
|
.gpio0 = 0x704040,
|
||||||
|
}, {
|
||||||
|
.type = CX23885_VMUX_COMPONENT,
|
||||||
|
.vmux = CX25840_VIN7_CH1 |
|
||||||
|
CX25840_VIN6_CH2 |
|
||||||
|
CX25840_VIN8_CH3 |
|
||||||
|
CX25840_COMPONENT_ON,
|
||||||
|
.amux = CX25840_AUDIO7,
|
||||||
|
.gpio0 = 0x704040,
|
||||||
|
} },
|
||||||
|
},
|
||||||
[CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000] = {
|
[CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000] = {
|
||||||
.name = "Leadtek Winfast PxDVR3200 H XC4000",
|
.name = "Leadtek Winfast PxDVR3200 H XC4000",
|
||||||
.porta = CX23885_ANALOG_VIDEO,
|
.porta = CX23885_ANALOG_VIDEO,
|
||||||
|
@ -696,6 +729,10 @@ struct cx23885_subid cx23885_subids[] = {
|
||||||
.subvendor = 0x107d,
|
.subvendor = 0x107d,
|
||||||
.subdevice = 0x6681,
|
.subdevice = 0x6681,
|
||||||
.card = CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H,
|
.card = CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H,
|
||||||
|
}, {
|
||||||
|
.subvendor = 0x107d,
|
||||||
|
.subdevice = 0x6f21,
|
||||||
|
.card = CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200,
|
||||||
}, {
|
}, {
|
||||||
.subvendor = 0x107d,
|
.subvendor = 0x107d,
|
||||||
.subdevice = 0x6f39,
|
.subdevice = 0x6f39,
|
||||||
|
@ -1090,6 +1127,7 @@ int cx23885_tuner_callback(void *priv, int component, int command, int arg)
|
||||||
case CX23885_BOARD_HAUPPAUGE_HVR1500:
|
case CX23885_BOARD_HAUPPAUGE_HVR1500:
|
||||||
case CX23885_BOARD_HAUPPAUGE_HVR1500Q:
|
case CX23885_BOARD_HAUPPAUGE_HVR1500Q:
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
||||||
|
case CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200:
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
||||||
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
||||||
case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
|
case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
|
||||||
|
@ -1255,6 +1293,7 @@ void cx23885_gpio_setup(struct cx23885_dev *dev)
|
||||||
cx_set(GP0_IO, 0x000f000f);
|
cx_set(GP0_IO, 0x000f000f);
|
||||||
break;
|
break;
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
||||||
|
case CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200:
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
||||||
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
||||||
case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
|
case CX23885_BOARD_COMPRO_VIDEOMATE_E800:
|
||||||
|
@ -1769,6 +1808,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
|
||||||
case CX23885_BOARD_HAUPPAUGE_HVR1700:
|
case CX23885_BOARD_HAUPPAUGE_HVR1700:
|
||||||
case CX23885_BOARD_HAUPPAUGE_HVR1400:
|
case CX23885_BOARD_HAUPPAUGE_HVR1400:
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
||||||
|
case CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200:
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
||||||
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
||||||
case CX23885_BOARD_HAUPPAUGE_HVR1270:
|
case CX23885_BOARD_HAUPPAUGE_HVR1270:
|
||||||
|
@ -1798,6 +1838,7 @@ void cx23885_card_setup(struct cx23885_dev *dev)
|
||||||
case CX23885_BOARD_HAUPPAUGE_HVR1800lp:
|
case CX23885_BOARD_HAUPPAUGE_HVR1800lp:
|
||||||
case CX23885_BOARD_HAUPPAUGE_HVR1700:
|
case CX23885_BOARD_HAUPPAUGE_HVR1700:
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H:
|
||||||
|
case CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200:
|
||||||
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
case CX23885_BOARD_LEADTEK_WINFAST_PXDVR3200_H_XC4000:
|
||||||
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
case CX23885_BOARD_COMPRO_VIDEOMATE_E650F:
|
||||||
case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
|
case CX23885_BOARD_NETUP_DUAL_DVBS2_CI:
|
||||||
|
|
|
@ -1865,7 +1865,8 @@ int cx23885_video_register(struct cx23885_dev *dev)
|
||||||
|
|
||||||
v4l2_subdev_call(sd, tuner, s_type_addr, &tun_setup);
|
v4l2_subdev_call(sd, tuner, s_type_addr, &tun_setup);
|
||||||
|
|
||||||
if (dev->board == CX23885_BOARD_LEADTEK_WINFAST_PXTV1200) {
|
if ((dev->board == CX23885_BOARD_LEADTEK_WINFAST_PXTV1200) ||
|
||||||
|
(dev->board == CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200)) {
|
||||||
struct xc2028_ctrl ctrl = {
|
struct xc2028_ctrl ctrl = {
|
||||||
.fname = XC2028_DEFAULT_FIRMWARE,
|
.fname = XC2028_DEFAULT_FIRMWARE,
|
||||||
.max_len = 64
|
.max_len = 64
|
||||||
|
|
|
@ -95,6 +95,7 @@
|
||||||
#define CX23885_BOARD_AVERMEDIA_HC81R 39
|
#define CX23885_BOARD_AVERMEDIA_HC81R 39
|
||||||
#define CX23885_BOARD_TBS_6981 40
|
#define CX23885_BOARD_TBS_6981 40
|
||||||
#define CX23885_BOARD_TBS_6980 41
|
#define CX23885_BOARD_TBS_6980 41
|
||||||
|
#define CX23885_BOARD_LEADTEK_WINFAST_PXPVR2200 42
|
||||||
|
|
||||||
#define GPIO_0 0x00000001
|
#define GPIO_0 0x00000001
|
||||||
#define GPIO_1 0x00000002
|
#define GPIO_1 0x00000002
|
||||||
|
|
Loading…
Reference in New Issue