Hi Tim, On Thu, 2 Feb 2006, Tim Davies wrote: > Okay, I think I've kinda solved this one... Thanks for looking into that. After reading your email, I found the real problem. I'm so sorry - that is ugly. The problem is, that the fe->ops->init (and sleep) is overridden, but before I assigned a static pointer to fe->ops. So, your problem desription is right, but not your fix. Can you please try the attached one? thanks again for your investigations, Patrick. -------------- next part -------------- Index: linux/drivers/media/dvb/dvb-usb/vp7045.c =================================================================== RCS file: /cvs/linuxtv/dvb-kernel/linux/drivers/media/dvb/dvb-usb/vp7045.c,v retrieving revision 1.18 diff -u -3 -p -r1.18 vp7045.c --- linux/drivers/media/dvb/dvb-usb/vp7045.c 16 Aug 2005 10:35:17 -0000 1.18 +++ linux/drivers/media/dvb/dvb-usb/vp7045.c 26 Aug 2005 17:27:12 -0000 @@ -131,8 +131,11 @@ static struct dvb_usb_rc_key vp7045_rc_k static int vp7045_rc_query(struct dvb_usb_device *d, u32 *event, int *state) { u8 key; - int i; - vp7045_usb_op(d,RC_VAL_READ,NULL,0,&key,1,20); + int i,ret; + if ((ret = vp7045_usb_op(d,RC_VAL_READ,NULL,0,&key,1,20)) < 0) { + err("remote control poll failed."); + return ret; + } deb_rc("remote query key: %x %d\n",key,key);