mirror of
https://github.com/torvalds/linux
synced 2024-09-21 19:47:35 +00:00
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
This commit is contained in:
commit
0ff5ce7f30
|
@ -1,12 +1,17 @@
|
||||||
config MEDIA_ATTACH
|
config MEDIA_ATTACH
|
||||||
bool "Load and attach frontend driver modules as needed"
|
bool "Load and attach frontend and tuner driver modules as needed"
|
||||||
depends on DVB_CORE
|
depends on DVB_CORE
|
||||||
depends on MODULES
|
depends on MODULES
|
||||||
help
|
help
|
||||||
Remove the static dependency of DVB card drivers on all
|
Remove the static dependency of DVB card drivers on all
|
||||||
frontend modules for all possible card variants. Instead,
|
frontend modules for all possible card variants. Instead,
|
||||||
allow the card drivers to only load the frontend modules
|
allow the card drivers to only load the frontend modules
|
||||||
they require. This saves several KBytes of memory.
|
they require.
|
||||||
|
|
||||||
|
Also, tuner module will automatically load a tuner driver
|
||||||
|
when needed, for analog mode.
|
||||||
|
|
||||||
|
This saves several KBytes of memory.
|
||||||
|
|
||||||
Note: You will need module-init-tools v3.2 or later for this feature.
|
Note: You will need module-init-tools v3.2 or later for this feature.
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ config VIDEO_CX18
|
||||||
select I2C_ALGOBIT
|
select I2C_ALGOBIT
|
||||||
select FW_LOADER
|
select FW_LOADER
|
||||||
select VIDEO_IR
|
select VIDEO_IR
|
||||||
select VIDEO_TUNER
|
select MEDIA_TUNER
|
||||||
select VIDEO_TVEEPROM
|
select VIDEO_TVEEPROM
|
||||||
select VIDEO_CX2341X
|
select VIDEO_CX2341X
|
||||||
select VIDEO_CS5345
|
select VIDEO_CS5345
|
||||||
|
|
|
@ -567,7 +567,7 @@ static void cx18_load_and_init_modules(struct cx18 *cx)
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* load modules */
|
/* load modules */
|
||||||
#ifndef CONFIG_VIDEO_TUNER
|
#ifndef CONFIG_MEDIA_TUNER
|
||||||
hw = cx18_request_module(cx, hw, "tuner", CX18_HW_TUNER);
|
hw = cx18_request_module(cx, hw, "tuner", CX18_HW_TUNER);
|
||||||
#endif
|
#endif
|
||||||
#ifndef CONFIG_VIDEO_CS5345
|
#ifndef CONFIG_VIDEO_CS5345
|
||||||
|
|
|
@ -99,7 +99,6 @@ static int cx8800_bit_getsda(void *data)
|
||||||
|
|
||||||
static int attach_inform(struct i2c_client *client)
|
static int attach_inform(struct i2c_client *client)
|
||||||
{
|
{
|
||||||
struct tuner_setup tun_setup;
|
|
||||||
struct cx88_core *core = i2c_get_adapdata(client->adapter);
|
struct cx88_core *core = i2c_get_adapdata(client->adapter);
|
||||||
|
|
||||||
dprintk(1, "%s i2c attach [addr=0x%x,client=%s]\n",
|
dprintk(1, "%s i2c attach [addr=0x%x,client=%s]\n",
|
||||||
|
|
|
@ -1049,7 +1049,7 @@ static int __devinit ivtv_probe(struct pci_dev *dev,
|
||||||
IVTV_ENCODER_SIZE);
|
IVTV_ENCODER_SIZE);
|
||||||
if (!itv->enc_mem) {
|
if (!itv->enc_mem) {
|
||||||
IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
|
IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
|
||||||
IVTV_ERR("or disabling CONFIG_HIMEM4G into the kernel would help\n");
|
IVTV_ERR("or disabling CONFIG_HIGHMEM4G into the kernel would help\n");
|
||||||
retval = -ENOMEM;
|
retval = -ENOMEM;
|
||||||
goto free_mem;
|
goto free_mem;
|
||||||
}
|
}
|
||||||
|
@ -1061,7 +1061,7 @@ static int __devinit ivtv_probe(struct pci_dev *dev,
|
||||||
IVTV_DECODER_SIZE);
|
IVTV_DECODER_SIZE);
|
||||||
if (!itv->dec_mem) {
|
if (!itv->dec_mem) {
|
||||||
IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
|
IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
|
||||||
IVTV_ERR("or disabling CONFIG_HIMEM4G into the kernel would help\n");
|
IVTV_ERR("or disabling CONFIG_HIGHMEM4G into the kernel would help\n");
|
||||||
retval = -ENOMEM;
|
retval = -ENOMEM;
|
||||||
goto free_mem;
|
goto free_mem;
|
||||||
}
|
}
|
||||||
|
@ -1077,7 +1077,7 @@ static int __devinit ivtv_probe(struct pci_dev *dev,
|
||||||
ioremap_nocache(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE);
|
ioremap_nocache(itv->base_addr + IVTV_REG_OFFSET, IVTV_REG_SIZE);
|
||||||
if (!itv->reg_mem) {
|
if (!itv->reg_mem) {
|
||||||
IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
|
IVTV_ERR("ioremap failed, perhaps increasing __VMALLOC_RESERVE in page.h\n");
|
||||||
IVTV_ERR("or disabling CONFIG_HIMEM4G into the kernel would help\n");
|
IVTV_ERR("or disabling CONFIG_HIGHMEM4G into the kernel would help\n");
|
||||||
retval = -ENOMEM;
|
retval = -ENOMEM;
|
||||||
goto free_io;
|
goto free_io;
|
||||||
}
|
}
|
||||||
|
|
|
@ -755,8 +755,10 @@ unsigned int ivtv_v4l2_enc_poll(struct file *filp, poll_table * wait)
|
||||||
IVTV_DEBUG_HI_FILE("Encoder poll\n");
|
IVTV_DEBUG_HI_FILE("Encoder poll\n");
|
||||||
poll_wait(filp, &s->waitq, wait);
|
poll_wait(filp, &s->waitq, wait);
|
||||||
|
|
||||||
if (eof || s->q_full.length || s->q_io.length)
|
if (s->q_full.length || s->q_io.length)
|
||||||
return POLLIN | POLLRDNORM;
|
return POLLIN | POLLRDNORM;
|
||||||
|
if (eof)
|
||||||
|
return POLLHUP;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@
|
||||||
#define PREFIX t->i2c->driver->driver.name
|
#define PREFIX t->i2c->driver->driver.name
|
||||||
|
|
||||||
/** This macro allows us to probe dynamically, avoiding static links */
|
/** This macro allows us to probe dynamically, avoiding static links */
|
||||||
#ifdef CONFIG_DVB_CORE_ATTACH
|
#ifdef CONFIG_MEDIA_ATTACH
|
||||||
#define tuner_symbol_probe(FUNCTION, ARGS...) ({ \
|
#define tuner_symbol_probe(FUNCTION, ARGS...) ({ \
|
||||||
int __r = -EINVAL; \
|
int __r = -EINVAL; \
|
||||||
typeof(&FUNCTION) __a = symbol_request(FUNCTION); \
|
typeof(&FUNCTION) __a = symbol_request(FUNCTION); \
|
||||||
|
|
Loading…
Reference in a new issue