aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2008-04-29 23:37:59 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-29 23:37:59 -0400
commit0ff5ce7f30b45cc2014cec465c0e96c16877116e (patch)
tree63e3ed2af568aba47162171ad91ccfc440407d05
parentc4755d16fce9a4cdbb316c17657444856821bd4b (diff)
parentba7cc365f50cee0758e89217875e56ca3d972ed3 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb
* git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: V4L/DVB (7798): tuners/Kconfig: Change config name and help to reflect dynamic load for tuners V4L/DVB (7794): cx88: Fix a warning V4L/DVB (7792): ivtv: correct misspelled "HIMEM4G" to "HIGHMEM4G" in error message V4L/DVB (7791): ivtv: POLLHUP must be returned on eof V4L/DVB (7789b): Fix merge conflicts
-rw-r--r--drivers/media/common/tuners/Kconfig9
-rw-r--r--drivers/media/video/cx18/Kconfig2
-rw-r--r--drivers/media/video/cx18/cx18-driver.c2
-rw-r--r--drivers/media/video/cx88/cx88-i2c.c1
-rw-r--r--drivers/media/video/ivtv/ivtv-driver.c6
-rw-r--r--drivers/media/video/ivtv/ivtv-fileops.c4
-rw-r--r--drivers/media/video/tuner-core.c2
7 files changed, 16 insertions, 10 deletions
diff --git a/drivers/media/common/tuners/Kconfig b/drivers/media/common/tuners/Kconfig
index 7b379e1ce01b..5be85ff53e12 100644
--- a/drivers/media/common/tuners/Kconfig
+++ b/drivers/media/common/tuners/Kconfig
@@ -1,12 +1,17 @@
1config MEDIA_ATTACH 1config MEDIA_ATTACH
2 bool "Load and attach frontend driver modules as needed" 2 bool "Load and attach frontend and tuner driver modules as needed"
3 depends on DVB_CORE 3 depends on DVB_CORE
4 depends on MODULES 4 depends on MODULES
5 help 5 help
6 Remove the static dependency of DVB card drivers on all 6 Remove the static dependency of DVB card drivers on all
7 frontend modules for all possible card variants. Instead, 7 frontend modules for all possible card variants. Instead,
8 allow the card drivers to only load the frontend modules 8 allow the card drivers to only load the frontend modules
9 they require. This saves several KBytes of memory. 9 they require.
10
11 Also, tuner module will automatically load a tuner driver
12 when needed, for analog mode.
13
14 This saves several KBytes of memory.
10 15
11 Note: You will need module-init-tools v3.2 or later for this feature. 16 Note: You will need module-init-tools v3.2 or later for this feature.
12 17
diff --git a/drivers/media/video/cx18/Kconfig b/drivers/media/video/cx18/Kconfig
index be654a27bd3c..acc4b47f1d1d 100644
--- a/drivers/media/video/cx18/Kconfig
+++ b/drivers/media/video/cx18/Kconfig
@@ -4,7 +4,7 @@ config VIDEO_CX18
4 select I2C_ALGOBIT 4 select I2C_ALGOBIT
5 select FW_LOADER 5 select FW_LOADER
6 select VIDEO_IR 6 select VIDEO_IR
7 select VIDEO_TUNER 7 select MEDIA_TUNER
8 select VIDEO_TVEEPROM 8 select VIDEO_TVEEPROM
9 select VIDEO_CX2341X 9 select VIDEO_CX2341X
10 select VIDEO_CS5345 10 select VIDEO_CS5345
diff --git a/drivers/media/video/cx18/cx18-driver.c b/drivers/media/video/cx18/cx18-driver.c
index 9f31befc3139..8f5ed9b4bf83 100644
--- a/drivers/media/video/cx18/cx18-driver.c
+++ b/drivers/media/video/cx18/cx18-driver.c
@@ -567,7 +567,7 @@ static void cx18_load_and_init_modules(struct cx18 *cx)
567 int i; 567 int i;
568 568
569 /* load modules */ 569 /* load modules */
570#ifndef CONFIG_VIDEO_TUNER 570#ifndef CONFIG_MEDIA_TUNER
571 hw = cx18_request_module(cx, hw, "tuner", CX18_HW_TUNER); 571 hw = cx18_request_module(cx, hw, "tuner", CX18_HW_TUNER);
572#endif 572#endif
573#ifndef CONFIG_VIDEO_CS5345 573#ifndef CONFIG_VIDEO_CS5345
diff --git a/drivers/media/video/cx88/cx88-i2c.c b/drivers/media/video/cx88/cx88-i2c.c
index 00aa7a3f1105..cb6a096069c7 100644
--- a/drivers/media/video/cx88/cx88-i2c.c
+++ b/drivers/media/video/cx88/cx88-i2c.c
@@ -99,7 +99,6 @@ static int cx8800_bit_getsda(void *data)
99 99
100static int attach_inform(struct i2c_client *client) 100static int attach_inform(struct i2c_client *client)
101{ 101{
102 struct tuner_setup tun_setup;
103 struct cx88_core *core = i2c_get_adapdata(client->adapter); 102 struct cx88_core *core = i2c_get_adapdata(client->adapter);
104 103
105 dprintk(1, "%s i2c attach [addr=0x%x,client=%s]\n", 104 dprintk(1, "%s i2c attach [addr=0x%x,client=%s]\n",
diff --git a/drivers/media/video/ivtv/ivtv-driver.c b/drivers/media/video/ivtv/ivtv-driver.c
index 47b5649729df..ed020f722b05 100644
--- a/drivers/media/video/ivtv/ivtv-driver.c
+++ b/drivers/media/video/ivtv/ivtv-driver.c
@@ -1049,7 +1049,7 @@ static int __devinit ivtv_probe(struct pci_dev *dev,
1049 IVTV_ENCODER_SIZE); 1049 IVTV_ENCODER_SIZE);
1050 if (!itv->enc_mem) { 1050 if (!itv->enc_mem) {
1051 IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n"); 1051 IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
1052 IVTV_ERR("or disabling CONFIG_HIMEM4G into the kernel would help\n"); 1052 IVTV_ERR("or disabling CONFIG_HIGHMEM4G into the kernel would help\n");
1053 retval = -ENOMEM; 1053 retval = -ENOMEM;
1054 goto free_mem; 1054 goto free_mem;
1055 } 1055 }
@@ -1061,7 +1061,7 @@ static int __devinit ivtv_probe(struct pci_dev *dev,
1061 IVTV_DECODER_SIZE); 1061 IVTV_DECODER_SIZE);
1062 if (!itv->dec_mem) { 1062 if (!itv->dec_mem) {
1063 IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n"); 1063 IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
1064 IVTV_ERR("or disabling CONFIG_HIMEM4G into the kernel would help\n"); 1064 IVTV_ERR("or disabling CONFIG_HIGHMEM4G into the kernel would help\n");
1065 retval = -ENOMEM; 1065 retval = -ENOMEM;
1066 goto free_mem; 1066 goto free_mem;
1067 } 1067 }
@@ -1077,7 +1077,7 @@ static int __devinit ivtv_probe(struct pci_dev *dev,
1077 ioremap_nocache(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE); 1077 ioremap_nocache(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE);
1078 if (!itv->reg_mem) { 1078 if (!itv->reg_mem) {
1079 IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n"); 1079 IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
1080 IVTV_ERR("or disabling CONFIG_HIMEM4G into the kernel would help\n"); 1080 IVTV_ERR("or disabling CONFIG_HIGHMEM4G into the kernel would help\n");
1081 retval = -ENOMEM; 1081 retval = -ENOMEM;
1082 goto free_io; 1082 goto free_io;
1083 } 1083 }
diff --git a/drivers/media/video/ivtv/ivtv-fileops.c b/drivers/media/video/ivtv/ivtv-fileops.c
index a7640c49f1d8..2b74b0ab1477 100644
--- a/drivers/media/video/ivtv/ivtv-fileops.c
+++ b/drivers/media/video/ivtv/ivtv-fileops.c
@@ -755,8 +755,10 @@ unsigned int ivtv_v4l2_enc_poll(struct file *filp, poll_table * wait)
755 IVTV_DEBUG_HI_FILE("Encoder poll\n"); 755 IVTV_DEBUG_HI_FILE("Encoder poll\n");
756 poll_wait(filp, &s->waitq, wait); 756 poll_wait(filp, &s->waitq, wait);
757 757
758 if (eof || s->q_full.length || s->q_io.length) 758 if (s->q_full.length || s->q_io.length)
759 return POLLIN | POLLRDNORM; 759 return POLLIN | POLLRDNORM;
760 if (eof)
761 return POLLHUP;
760 return 0; 762 return 0;
761} 763}
762 764
diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c
index cc19c4abb467..6bf104ea051d 100644
--- a/drivers/media/video/tuner-core.c
+++ b/drivers/media/video/tuner-core.c
@@ -34,7 +34,7 @@
34#define PREFIX t->i2c->driver->driver.name 34#define PREFIX t->i2c->driver->driver.name
35 35
36/** This macro allows us to probe dynamically, avoiding static links */ 36/** This macro allows us to probe dynamically, avoiding static links */
37#ifdef CONFIG_DVB_CORE_ATTACH 37#ifdef CONFIG_MEDIA_ATTACH
38#define tuner_symbol_probe(FUNCTION, ARGS...) ({ \ 38#define tuner_symbol_probe(FUNCTION, ARGS...) ({ \
39 int __r = -EINVAL; \ 39 int __r = -EINVAL; \
40 typeof(&FUNCTION) __a = symbol_request(FUNCTION); \ 40 typeof(&FUNCTION) __a = symbol_request(FUNCTION); \