Dear visitor, welcome to VDR Portal. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.
Ich würde dann das dkms nochmal die Patches anpassen - bin aber knapp an Zeit momentan - kann also ein paar Tage dauern. @Johns: ja du hast vollkommen recht. Bei S2 funktioniert die SS auch mit signal strength Patch nicht.
This post has been edited 1 times, last edit by "johns" (Apr 6th 2011, 8:46pm)
da kommt man wohl auch ohne Datasheet nicht drauf@Johns: ja du hast vollkommen recht. Bei S2 funktioniert die SS auch mit signal strength Patch nicht.
Habe leider keinen offensichtlichen Fehler gefunden. Ist inzwischen auch auf der Mailingliste aufgetaucht.

This post has been edited 2 times, last edit by "jrie" (Apr 16th 2011, 12:33pm)
da kommt man wohl auch ohne Datasheet nicht drauf@Johns: ja du hast vollkommen recht. Bei S2 funktioniert die SS auch mit signal strength Patch nicht.
Habe leider keinen offensichtlichen Fehler gefunden. Ist inzwischen auch auf der Mailingliste aufgetaucht.
Seltsam, dass noch niemand auf deinen Patch reagiert hat.
|
|
Source code |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
--- s2-liplianin_test/v4l/stb0899_drv.c 2010-09-13 19:28:56.464248063 +0200
+++ s2-liplianin/v4l/stb0899_drv.c 2011-04-17 13:46:23.661594117 +0200
@@ -998,12 +998,19 @@
break;
case SYS_DVBS2:
if (internal->lock) {
- reg = STB0899_READ_S2REG(STB0899_DEMOD, IF_AGC_GAIN);
+ reg = STB0899_READ_S2REG(STB0899_S2DEMOD, IF_AGC_GAIN);
val = STB0899_GETFIELD(IF_AGC_GAIN, reg);
*strength = stb0899_table_lookup(stb0899_dvbs2rf_tab, ARRAY_SIZE(stb0899_dvbs2rf_tab) - 1, val);
*strength += 750;
- *strength = *strength << 4;
+ const int MIN_STRENGTH_DVBS2 = 0;
+ const int MAX_STRENGTH_DVBS2 = 680;
+ if (*strength < MIN_STRENGTH_DVBS2)
+ *strength = 0;
+ else if(*strength > MAX_STRENGTH_DVBS2)
+ *strength = 0xFFFF;
+ else
+ *strength = (*strength - MIN_STRENGTH_DVBS2) * 0xFFFF / (MAX_STRENGTH_DVBS2 - MIN_STRENGTH_DVBS2);
dprintk(state->verbose, FE_DEBUG, 1, "IF_AGC_GAIN = 0x%04x, C = %d * 0.1 dBm",
val & 0x3fff, *strength);
}
|
|
|
Source code |
1 2 |
cd /usr/src/s2-liplianin patch -p1 <stb0899_s2-liplianin_tuning_fix.diff |