summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordarron@kewl.org <darron@kewl.org>2008-10-11 15:49:30 +0100
committerdarron@kewl.org <darron@kewl.org>2008-10-11 15:49:30 +0100
commitbbb32098519d97ddbfb8b00ca6504d77681b5c33 (patch)
tree9003c4935f9ddce06bd41cab3f2b734e14bd691e
parente792b162282b2a6897d82cb48a3ee6222bc01686 (diff)
downloadmediapointer-dvb-s2-bbb32098519d97ddbfb8b00ca6504d77681b5c33.tar.gz
mediapointer-dvb-s2-bbb32098519d97ddbfb8b00ca6504d77681b5c33.tar.bz2
cx88: Add audio routing for the hvr-3000/4000
From: Darron Broad <darron@kewl.org> 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. Priority: normal Signed-off-by: Darron Broad <darron@kewl.org>
-rw-r--r--linux/drivers/media/video/cx88/cx88-cards.c8
-rw-r--r--linux/drivers/media/video/cx88/cx88.h2
2 files changed, 9 insertions, 1 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-cards.c b/linux/drivers/media/video/cx88/cx88-cards.c
index 239cb8e5b..e8dcfa5e7 100644
--- a/linux/drivers/media/video/cx88/cx88-cards.c
+++ b/linux/drivers/media/video/cx88/cx88-cards.c
@@ -1310,18 +1310,22 @@ static const struct cx88_board cx88_boards[] = {
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .audio_chip = V4L2_IDENT_WM8775,
.input = {{
.type = CX88_VMUX_TELEVISION,
.vmux = 0,
.gpio0 = 0x84bf,
+ .audioroute = 1,
},{
.type = CX88_VMUX_COMPOSITE1,
.vmux = 1,
.gpio0 = 0x84bf,
+ .audioroute = 2,
},{
.type = CX88_VMUX_SVIDEO,
.vmux = 2,
.gpio0 = 0x84bf,
+ .audioroute = 2,
}},
.mpeg = CX88_MPEG_DVB,
.num_frontends = 2,
@@ -1750,6 +1754,7 @@ static const struct cx88_board cx88_boards[] = {
.tuner_addr = ADDR_UNSET,
.radio_addr = ADDR_UNSET,
.tda9887_conf = TDA9887_PRESENT,
+ .audio_chip = V4L2_IDENT_WM8775,
/*
* GPIO0 (WINTV2000)
*
@@ -1784,14 +1789,17 @@ static const struct cx88_board cx88_boards[] = {
.type = CX88_VMUX_TELEVISION,
.vmux = 0,
.gpio0 = 0xc4bf,
+ .audioroute = 1,
}, {
.type = CX88_VMUX_COMPOSITE1,
.vmux = 1,
.gpio0 = 0xc4bf,
+ .audioroute = 2,
}, {
.type = CX88_VMUX_SVIDEO,
.vmux = 2,
.gpio0 = 0xc4bf,
+ .audioroute = 2,
} },
/* fixme: Add radio support */
.mpeg = CX88_MPEG_DVB,
diff --git a/linux/drivers/media/video/cx88/cx88.h b/linux/drivers/media/video/cx88/cx88.h
index c7b7f7a1b..774c0b9b1 100644
--- a/linux/drivers/media/video/cx88/cx88.h
+++ b/linux/drivers/media/video/cx88/cx88.h
@@ -248,7 +248,7 @@ struct cx88_input {
enum cx88_itype type;
u32 gpio0, gpio1, gpio2, gpio3;
unsigned int vmux:2;
- unsigned int audioroute:2;
+ unsigned int audioroute:4;
};
struct cx88_board {