summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb/dvb-usb
diff options
context:
space:
mode:
authorPatrick Boettcher <devnull@localhost>2005-04-15 12:06:09 +0000
committerPatrick Boettcher <devnull@localhost>2005-04-15 12:06:09 +0000
commitb5833bcf1184221ce9ff84d4787d77ce1cbacafa (patch)
treeb1242864168df16859484a231e6bdcee64f0d82d /linux/drivers/media/dvb/dvb-usb
parent717a1066fcaa19eecb124fa58510e02dee4b4456 (diff)
downloadmediapointer-dvb-s2-b5833bcf1184221ce9ff84d4787d77ce1cbacafa.tar.gz
mediapointer-dvb-s2-b5833bcf1184221ce9ff84d4787d77ce1cbacafa.tar.bz2
Corrected the THIS_MODULE handling for the flexcop-stuff and dvb-usb which lead to oopses because of misorganized module dependencies.
Diffstat (limited to 'linux/drivers/media/dvb/dvb-usb')
-rw-r--r--linux/drivers/media/dvb/dvb-usb/dtt200u.c3
-rw-r--r--linux/drivers/media/dvb/dvb-usb/dvb-usb-dvb.c2
-rw-r--r--linux/drivers/media/dvb/dvb-usb/dvb-usb-init.c3
-rw-r--r--linux/drivers/media/dvb/dvb-usb/dvb-usb.h4
-rw-r--r--linux/drivers/media/dvb/dvb-usb/vp7045.c2
5 files changed, 8 insertions, 6 deletions
diff --git a/linux/drivers/media/dvb/dvb-usb/dtt200u.c b/linux/drivers/media/dvb/dvb-usb/dtt200u.c
index 3b5785380..8827ddb40 100644
--- a/linux/drivers/media/dvb/dvb-usb/dtt200u.c
+++ b/linux/drivers/media/dvb/dvb-usb/dtt200u.c
@@ -94,13 +94,12 @@ static struct dvb_usb_properties dtt200u_properties;
static int dtt200u_usb_probe(struct usb_interface *intf,
const struct usb_device_id *id)
{
- return dvb_usb_device_init(intf,&dtt200u_properties);
+ return dvb_usb_device_init(intf,&dtt200u_properties,THIS_MODULE);
}
static struct usb_device_id dtt200u_usb_table [] = {
{ USB_DEVICE(USB_VID_AVERMEDIA_UNK, USB_PID_DTT200U_COLD) },
{ USB_DEVICE(USB_VID_AVERMEDIA_UNK, USB_PID_DTT200U_WARM) },
- { USB_DEVICE(USB_VID_CYPRESS, USB_PID_ULTIMA_TVBOX_USB2_FX_COLD) },
{ 0 },
};
MODULE_DEVICE_TABLE(usb, dtt200u_usb_table);
diff --git a/linux/drivers/media/dvb/dvb-usb/dvb-usb-dvb.c b/linux/drivers/media/dvb/dvb-usb/dvb-usb-dvb.c
index 643aeb3d2..600317cf0 100644
--- a/linux/drivers/media/dvb/dvb-usb/dvb-usb-dvb.c
+++ b/linux/drivers/media/dvb/dvb-usb/dvb-usb-dvb.c
@@ -81,7 +81,7 @@ int dvb_usb_dvb_init(struct dvb_usb_device *d)
int ret;
if ((ret = dvb_register_adapter(&d->dvb_adap, d->desc->name,
- THIS_MODULE)) < 0) {
+ d->owner)) < 0) {
deb_info("dvb_register_adapter failed: error %d", ret);
goto err;
}
diff --git a/linux/drivers/media/dvb/dvb-usb/dvb-usb-init.c b/linux/drivers/media/dvb/dvb-usb/dvb-usb-init.c
index d4cea6e30..5c80bad4e 100644
--- a/linux/drivers/media/dvb/dvb-usb/dvb-usb-init.c
+++ b/linux/drivers/media/dvb/dvb-usb/dvb-usb-init.c
@@ -110,7 +110,7 @@ static struct dvb_usb_device_description * dvb_usb_find_device(struct usb_device
/*
* USB
*/
-int dvb_usb_device_init(struct usb_interface *intf, struct dvb_usb_properties *props)
+int dvb_usb_device_init(struct usb_interface *intf, struct dvb_usb_properties *props, struct module *owner)
{
struct usb_device *udev = interface_to_usbdev(intf);
struct dvb_usb_device *d = NULL;
@@ -139,6 +139,7 @@ int dvb_usb_device_init(struct usb_interface *intf, struct dvb_usb_properties *p
d->udev = udev;
memcpy(&d->props,props,sizeof(struct dvb_usb_properties));
d->desc = desc;
+ d->owner = owner;
/* store parameters to structures */
/* d->rc_query_interval = rc_query_interval;
diff --git a/linux/drivers/media/dvb/dvb-usb/dvb-usb.h b/linux/drivers/media/dvb/dvb-usb/dvb-usb.h
index 89cc0c5a0..7d493c5c0 100644
--- a/linux/drivers/media/dvb/dvb-usb/dvb-usb.h
+++ b/linux/drivers/media/dvb/dvb-usb/dvb-usb.h
@@ -174,10 +174,12 @@ struct dvb_usb_device {
u32 last_event;
int last_state;
+ struct module *owner;
+
void *priv;
};
-extern int dvb_usb_device_init(struct usb_interface *, struct dvb_usb_properties *);
+extern int dvb_usb_device_init(struct usb_interface *, struct dvb_usb_properties *, struct module *);
extern void dvb_usb_device_exit(struct usb_interface *);
/* the generic read/write method for device control */
diff --git a/linux/drivers/media/dvb/dvb-usb/vp7045.c b/linux/drivers/media/dvb/dvb-usb/vp7045.c
index bcb1dd397..20ddac696 100644
--- a/linux/drivers/media/dvb/dvb-usb/vp7045.c
+++ b/linux/drivers/media/dvb/dvb-usb/vp7045.c
@@ -186,7 +186,7 @@ static struct dvb_usb_properties vp7045_properties;
static int vp7045_usb_probe(struct usb_interface *intf,
const struct usb_device_id *id)
{
- return dvb_usb_device_init(intf,&vp7045_properties);
+ return dvb_usb_device_init(intf,&vp7045_properties,THIS_MODULE);
}
static struct usb_device_id vp7045_usb_table [] = {