diff options
-rw-r--r-- | linux/Documentation/dvb/ttusb-dec.txt | 6 | ||||
-rw-r--r-- | linux/drivers/media/dvb/ttusb-dec/ttusb_dec.c | 14 |
2 files changed, 11 insertions, 9 deletions
diff --git a/linux/Documentation/dvb/ttusb-dec.txt b/linux/Documentation/dvb/ttusb-dec.txt index 1eca96907..b8e24995c 100644 --- a/linux/Documentation/dvb/ttusb-dec.txt +++ b/linux/Documentation/dvb/ttusb-dec.txt @@ -49,9 +49,9 @@ For 2.4 kernels the firmware for the DECs is compiled into the driver itself. The firmwares are expected to be in the build-2.4 directory at compilation time. -mv STB_PC_T.bin build-2.4/dec2000t.bin -mv STB_PC_X.bin build-2.4/dec2540t.bin -mv STB_PC_S.bin build-2.4/dec3000s.bin +mv STB_PC_T.bin build-2.4/dvb-ttusb-dec-2000t.fw +mv STB_PC_X.bin build-2.4/dvb-ttusb-dec-2540t.fw +mv STB_PC_S.bin build-2.4/dvb-ttusb-dec-3000s.fw Hotplug Firmware Loading for 2.6 kernels diff --git a/linux/drivers/media/dvb/ttusb-dec/ttusb_dec.c b/linux/drivers/media/dvb/ttusb-dec/ttusb_dec.c index bb70b7e65..0a2b388d8 100644 --- a/linux/drivers/media/dvb/ttusb-dec/ttusb_dec.c +++ b/linux/drivers/media/dvb/ttusb-dec/ttusb_dec.c @@ -802,6 +802,7 @@ static int ttusb_dec_set_interface(struct ttusb_dec *dec, enum ttusb_dec_interface interface) { int result = 0; + u8 b[] = { 0x05 }; if (interface != dec->interface) { switch (interface) { @@ -809,6 +810,10 @@ static int ttusb_dec_set_interface(struct ttusb_dec *dec, result = usb_set_interface(dec->udev, 0, 0); break; case TTUSB_DEC_INTERFACE_IN: + result = ttusb_dec_send_command(dec, 0x80, sizeof(b), + b, NULL, NULL); + if (result) + return result; result = usb_set_interface(dec->udev, 0, 7); break; case TTUSB_DEC_INTERFACE_OUT: @@ -821,6 +826,7 @@ static int ttusb_dec_set_interface(struct ttusb_dec *dec, dec->interface = interface; } + return 0; } @@ -865,10 +871,6 @@ static int ttusb_dec_start_iso_xfer(struct ttusb_dec *dec) up(&dec->iso_sem); -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) - ttusb_dec_set_interface(dec, TTUSB_DEC_INTERFACE_IN); -#endif - return 0; } @@ -1786,11 +1788,11 @@ static int ttusb_dec_probe(struct usb_interface *intf, dec->active = 1; + ttusb_dec_set_interface(dec, TTUSB_DEC_INTERFACE_IN); + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) return (void *)dec; #else - ttusb_dec_set_interface(dec, TTUSB_DEC_INTERFACE_IN); - return 0; #endif } |