aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Toth <stoth@hauppauge.com>2006-09-25 11:43:42 -0400
committerMauro Carvalho Chehab <mchehab@infradead.org>2006-10-03 14:13:48 -0400
commit3057906df5c9be9c99a181eccac3bc40cf07ad9f (patch)
tree6a4abffff320d8a7e39cf78958489f40c121e43b
parentba7e6f3e3e639de2597afffaae3fda75f6e6082d (diff)
V4L/DVB (4666): Ensure the WM8775 driver is loaded generically for any board.
A generic change to cards to allow any board to specify whether it needs the wm8775 module loaded (by the core) or not. Signed-off-by: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r--drivers/media/video/cx88/cx88-cards.c1
-rw-r--r--drivers/media/video/cx88/cx88-video.c3
-rw-r--r--drivers/media/video/cx88/cx88.h2
-rw-r--r--include/media/audiochip.h4
4 files changed, 9 insertions, 1 deletions
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c
index 6214eb823b29..425d15df9d07 100644
--- a/drivers/media/video/cx88/cx88-cards.c
+++ b/drivers/media/video/cx88/cx88-cards.c
@@ -1287,6 +1287,7 @@ struct cx88_board cx88_boards[] = {
1287 .tuner_addr = ADDR_UNSET, 1287 .tuner_addr = ADDR_UNSET,
1288 .radio_addr = ADDR_UNSET, 1288 .radio_addr = ADDR_UNSET,
1289 .tda9887_conf = TDA9887_PRESENT, 1289 .tda9887_conf = TDA9887_PRESENT,
1290 .audio_chip = AUDIO_CHIP_WM8775,
1290 .input = {{ 1291 .input = {{
1291 .type = CX88_VMUX_TELEVISION, 1292 .type = CX88_VMUX_TELEVISION,
1292 .vmux = 0, 1293 .vmux = 0,
diff --git a/drivers/media/video/cx88/cx88-video.c b/drivers/media/video/cx88/cx88-video.c
index fbc79e9842aa..cb0c0eea20f9 100644
--- a/drivers/media/video/cx88/cx88-video.c
+++ b/drivers/media/video/cx88/cx88-video.c
@@ -1928,6 +1928,9 @@ static int __devinit cx8800_initdev(struct pci_dev *pci_dev,
1928 if (TUNER_ABSENT != core->tuner_type) 1928 if (TUNER_ABSENT != core->tuner_type)
1929 request_module("tuner"); 1929 request_module("tuner");
1930 1930
1931 if (cx88_boards[ core->board ].audio_chip == AUDIO_CHIP_WM8775)
1932 request_module("wm8775");
1933
1931 /* register v4l devices */ 1934 /* register v4l devices */
1932 dev->video_dev = cx88_vdev_init(core,dev->pci, 1935 dev->video_dev = cx88_vdev_init(core,dev->pci,
1933 &cx8800_video_template,"video"); 1936 &cx8800_video_template,"video");
diff --git a/drivers/media/video/cx88/cx88.h b/drivers/media/video/cx88/cx88.h
index 89f12e273b7f..2371ab407984 100644
--- a/drivers/media/video/cx88/cx88.h
+++ b/drivers/media/video/cx88/cx88.h
@@ -30,6 +30,7 @@
30#include <media/tveeprom.h> 30#include <media/tveeprom.h>
31#include <media/video-buf.h> 31#include <media/video-buf.h>
32#include <media/cx2341x.h> 32#include <media/cx2341x.h>
33#include <media/audiochip.h>
33#include <media/video-buf-dvb.h> 34#include <media/video-buf-dvb.h>
34 35
35#include "btcx-risc.h" 36#include "btcx-risc.h"
@@ -232,6 +233,7 @@ struct cx88_board {
232 struct cx88_input radio; 233 struct cx88_input radio;
233 unsigned int blackbird:1; 234 unsigned int blackbird:1;
234 unsigned int dvb:1; 235 unsigned int dvb:1;
236 enum audiochip audio_chip;
235}; 237};
236 238
237struct cx88_subid { 239struct cx88_subid {
diff --git a/include/media/audiochip.h b/include/media/audiochip.h
index 1fd4a2207574..db8823d45a7d 100644
--- a/include/media/audiochip.h
+++ b/include/media/audiochip.h
@@ -18,7 +18,9 @@ enum audiochip {
18 AUDIO_CHIP_TDA9874, 18 AUDIO_CHIP_TDA9874,
19 AUDIO_CHIP_PIC16C54, 19 AUDIO_CHIP_PIC16C54,
20 /* Provided by msp3400.c */ 20 /* Provided by msp3400.c */
21 AUDIO_CHIP_MSP34XX 21 AUDIO_CHIP_MSP34XX,
22 /* Provided by wm8775.c */
23 AUDIO_CHIP_WM8775
22}; 24};
23 25
24#endif /* AUDIOCHIP_H */ 26#endif /* AUDIOCHIP_H */