aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/frontend.cpp
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2008-11-16 12:23:21 +0100
committerghost <andreas.monzner@multimedia-labs.de>2008-11-16 12:57:27 +0100
commit6347d817582886ab7c7535b44601538749d06d5b (patch)
treec0b6512ac86822afd65e67ee828524713e4e9eb2 /lib/dvb/frontend.cpp
parent369086956b791ab97d2e60e2c820f7045650c236 (diff)
downloadenigma2-6347d817582886ab7c7535b44601538749d06d5b.tar.gz
enigma2-6347d817582886ab7c7535b44601538749d06d5b.zip
Add possibility to set Pilot also for DVB-S2 non 8PSK Transponders (i.e. the new Euro1080 Transponder on 7°E)
But this needs also new drivers!
Diffstat (limited to 'lib/dvb/frontend.cpp')
-rw-r--r--lib/dvb/frontend.cpp29
1 files changed, 13 insertions, 16 deletions
diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp
index 27ea66ec..b0e92d39 100644
--- a/lib/dvb/frontend.cpp
+++ b/lib/dvb/frontend.cpp
@@ -1014,22 +1014,19 @@ void fillDictWithSatelliteData(ePyObject dict, const FRONTENDPARAMETERS &parm, e
break;
}
PutToDict(dict, "rolloff", tmp);
- if (parm_u_qpsk_fec_inner > FEC_S2_QPSK_9_10)
+ switch(parm_inversion & 0x30)
{
- switch(parm_inversion & 0x30)
- {
- case 0: // pilot off
- tmp = "PILOT_OFF";
- break;
- case 0x10: // pilot on
- tmp = "PILOT_ON";
- break;
- case 0x20: // pilot auto
- tmp = "PILOT_AUTO";
- break;
- }
- PutToDict(dict, "pilot", tmp);
+ case 0: // pilot off
+ tmp = "PILOT_OFF";
+ break;
+ case 0x10: // pilot on
+ tmp = "PILOT_ON";
+ break;
+ case 0x20: // pilot auto
+ tmp = "PILOT_AUTO";
+ break;
}
+ PutToDict(dict, "pilot", tmp);
tmp = "DVB-S2";
}
else
@@ -1310,7 +1307,7 @@ void eDVBFrontend::getTransponderData(ePyObject dest, bool original)
{
const FRONTENDPARAMETERS &parm = original || m_simulate ? this->parm : front;
const char *tmp = "INVERSION_AUTO";
- switch(parm_inversion)
+ switch(parm_inversion & 3)
{
case INVERSION_ON:
tmp = "INVERSION_ON";
@@ -1916,10 +1913,10 @@ RESULT eDVBFrontend::prepare_sat(const eDVBFrontendParametersSatellite &feparm,
return -EINVAL;
}
parm_inversion |= (feparm.rolloff << 2); // Hack.. we use bit 2..3 of inversion param for rolloff
+ parm_inversion |= (feparm.pilot << 4); // Hack.. we use bit 4..5 of inversion param for pilot
if (feparm.modulation == eDVBFrontendParametersSatellite::Modulation::M8PSK) {
parm_u_qpsk_fec_inner = (fe_code_rate_t)((int)parm_u_qpsk_fec_inner+9);
// 8PSK fec driver values are decimal 9 bigger
- parm_inversion |= (feparm.pilot << 4); // Hack.. we use bit 4..5 of inversion param for pilot
}
}
#endif