Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: TT Premium-T 1.2 problems
On Wednesday 27 October 2004 23:55, Jason Flynn wrote:
> Hi all,
> my first venture into Linux DVB ;)
> I have two cards, a budget and a premium.
> I have the budget working OK but the premium
> never seems to FE_LOCK :(
>
> Anyway, I did some digging and reading these
> registers from the sp8870 may help:
>
> Data Valid register returns 0x0010 after
> about 40 or 50uSec then the status just is :
>
> read 0x0200 (status) returns 0x0200
> read 0x0303 (signal) returns 0x0000
>
> Using lastest code from CVS + fw-16 etc..
> I've read previous posts about this board
> but cannot lay my hands on the manual for
> the sp8870 even using archive.org etc...
> If someone could mail it to me ;)
>
> Card works 100% under windoze.
>
> I'm grateful for any help, Jason
>
> Send instant messages to your online friends http://uk.messenger.yahoo.com
Hi,
this patch could help. Please apply it directly in the frontends directory.
Maybe you have to rename the firmware file to "dvb-fe-tdlb7.fw" and switch
off your computer completly once before the changes work.
Juergen
------------------------------------------------------------------------------
--- alps_tdlb7.c_org 2004-08-26 19:36:56.000000000 +0200
+++ alps_tdlb7.c 2004-10-20 11:17:48.000000000 +0200
@@ -24,7 +24,7 @@
* "<kerneldir>/Documentation/dvb/get_dvb_firmware alps_tdlb7" to
* download/extract it, and then copy it to /usr/lib/hotplug/firmware.
*/
-#define SP887X_DEFAULT_FIRMWARE "dvb-fe-tdlb7-2.16.fw"
+#define SP8870_DEFAULT_FIRMWARE "dvb-fe-tdlb7.fw"
#include <linux/init.h>
#include <linux/module.h>
@@ -580,19 +580,14 @@ static int tdlb7_ioctl (struct dvb_front
return sp8870_sleep(i2c);
case FE_INIT:
- sp8870_wake_up(i2c);
- if (fe->data == NULL) { // first time initialisation...
- fe->data = (void*) ~0;
- sp8870_init (i2c);
- }
- break;
+ return sp8870_wake_up(i2c);
case FE_GET_TUNE_SETTINGS:
{
struct dvb_frontend_tune_settings* fesettings = (struct
dvb_frontend_tune_settings*) arg;
- fesettings->min_delay_ms = 150;
- fesettings->step_size = 166667;
- fesettings->max_drift = 166667*2;
+ fesettings->min_delay_ms = 350;
+ fesettings->step_size = 0;
+ fesettings->max_drift = 0;
return 0;
}
@@ -648,7 +643,7 @@ static int attach_adapter(struct i2c_ada
/* request the firmware, this will block until someone uploads it */
printk("tdlb7: waiting for firmware upload...\n");
- ret = request_firmware(&fw, SP887X_DEFAULT_FIRMWARE, &client->dev);
+ ret = request_firmware(&fw, SP8870_DEFAULT_FIRMWARE, &client->dev);
if (ret) {
printk("tdlb7: no firmware upload (timeout or file not found?)\n");
goto out;
@@ -661,6 +656,8 @@ static int attach_adapter(struct i2c_ada
goto out;
}
+ sp8870_init (adapter);
+
ret = dvb_register_frontend(tdlb7_ioctl, state->dvb, state,
&tdlb7_info, THIS_MODULE);
if (ret) {
Home |
Main Index |
Thread Index