mirror of https://gitee.com/openkylin/linux.git
V4L/DVB (9228): cx88: Add audio routing for the hvr-3000/4000
This adds audio routing on the hvr-3000/4000 This is a preliminary patch for later routing requirements. This adds line-in support on the 2 cards mentioned. It is also apparent that there is an initial open fault for line-in when opening composite/s-video. This will be fixed later. It was also noticed that the bit-field for audio routing which was 2 bits needs an increase as the WM8775 for example, allows a value 4 bits wide for it's audio mux. Signed-off-by: Darron Broad <darron@kewl.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
59b1842da1
commit
923ac7f7d7
|
@ -1277,18 +1277,22 @@ static const struct cx88_board cx88_boards[] = {
|
||||||
.tuner_addr = ADDR_UNSET,
|
.tuner_addr = ADDR_UNSET,
|
||||||
.radio_addr = ADDR_UNSET,
|
.radio_addr = ADDR_UNSET,
|
||||||
.tda9887_conf = TDA9887_PRESENT,
|
.tda9887_conf = TDA9887_PRESENT,
|
||||||
|
.audio_chip = V4L2_IDENT_WM8775,
|
||||||
.input = {{
|
.input = {{
|
||||||
.type = CX88_VMUX_TELEVISION,
|
.type = CX88_VMUX_TELEVISION,
|
||||||
.vmux = 0,
|
.vmux = 0,
|
||||||
.gpio0 = 0x84bf,
|
.gpio0 = 0x84bf,
|
||||||
|
.audioroute = 1,
|
||||||
},{
|
},{
|
||||||
.type = CX88_VMUX_COMPOSITE1,
|
.type = CX88_VMUX_COMPOSITE1,
|
||||||
.vmux = 1,
|
.vmux = 1,
|
||||||
.gpio0 = 0x84bf,
|
.gpio0 = 0x84bf,
|
||||||
|
.audioroute = 2,
|
||||||
},{
|
},{
|
||||||
.type = CX88_VMUX_SVIDEO,
|
.type = CX88_VMUX_SVIDEO,
|
||||||
.vmux = 2,
|
.vmux = 2,
|
||||||
.gpio0 = 0x84bf,
|
.gpio0 = 0x84bf,
|
||||||
|
.audioroute = 2,
|
||||||
}},
|
}},
|
||||||
.mpeg = CX88_MPEG_DVB,
|
.mpeg = CX88_MPEG_DVB,
|
||||||
.num_frontends = 2,
|
.num_frontends = 2,
|
||||||
|
@ -1717,6 +1721,7 @@ static const struct cx88_board cx88_boards[] = {
|
||||||
.tuner_addr = ADDR_UNSET,
|
.tuner_addr = ADDR_UNSET,
|
||||||
.radio_addr = ADDR_UNSET,
|
.radio_addr = ADDR_UNSET,
|
||||||
.tda9887_conf = TDA9887_PRESENT,
|
.tda9887_conf = TDA9887_PRESENT,
|
||||||
|
.audio_chip = V4L2_IDENT_WM8775,
|
||||||
/*
|
/*
|
||||||
* GPIO0 (WINTV2000)
|
* GPIO0 (WINTV2000)
|
||||||
*
|
*
|
||||||
|
@ -1751,14 +1756,17 @@ static const struct cx88_board cx88_boards[] = {
|
||||||
.type = CX88_VMUX_TELEVISION,
|
.type = CX88_VMUX_TELEVISION,
|
||||||
.vmux = 0,
|
.vmux = 0,
|
||||||
.gpio0 = 0xc4bf,
|
.gpio0 = 0xc4bf,
|
||||||
|
.audioroute = 1,
|
||||||
}, {
|
}, {
|
||||||
.type = CX88_VMUX_COMPOSITE1,
|
.type = CX88_VMUX_COMPOSITE1,
|
||||||
.vmux = 1,
|
.vmux = 1,
|
||||||
.gpio0 = 0xc4bf,
|
.gpio0 = 0xc4bf,
|
||||||
|
.audioroute = 2,
|
||||||
}, {
|
}, {
|
||||||
.type = CX88_VMUX_SVIDEO,
|
.type = CX88_VMUX_SVIDEO,
|
||||||
.vmux = 2,
|
.vmux = 2,
|
||||||
.gpio0 = 0xc4bf,
|
.gpio0 = 0xc4bf,
|
||||||
|
.audioroute = 2,
|
||||||
} },
|
} },
|
||||||
/* fixme: Add radio support */
|
/* fixme: Add radio support */
|
||||||
.mpeg = CX88_MPEG_DVB,
|
.mpeg = CX88_MPEG_DVB,
|
||||||
|
|
|
@ -247,7 +247,7 @@ struct cx88_input {
|
||||||
enum cx88_itype type;
|
enum cx88_itype type;
|
||||||
u32 gpio0, gpio1, gpio2, gpio3;
|
u32 gpio0, gpio1, gpio2, gpio3;
|
||||||
unsigned int vmux:2;
|
unsigned int vmux:2;
|
||||||
unsigned int audioroute:2;
|
unsigned int audioroute:4;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct cx88_board {
|
struct cx88_board {
|
||||||
|
|
Loading…
Reference in New Issue