X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fdvb%2Ffrontend.cpp;h=47e1ab549c7e7b8ce86154a9a3a1a47d5463d961;hp=ebdad8a7599e734b0d6902df8deaee096ba715c0;hb=e19feb6903e6054302080ae40d2bcfa5c2d1628e;hpb=0cc396a9dd3478a71b7a0bff4f5a6fdfbc52f22d diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp old mode 100644 new mode 100755 index ebdad8a..47e1ab5 --- a/lib/dvb/frontend.cpp +++ b/lib/dvb/frontend.cpp @@ -490,6 +490,11 @@ void eDVBFrontend::reopenFrontend() openFrontend(); } +#ifdef BUILD_VUPLUS /* ikseong */ +int frontend0_fd; +int frontend1_fd; +#endif + int eDVBFrontend::openFrontend() { if (m_state != stateClosed) @@ -514,6 +519,15 @@ int eDVBFrontend::openFrontend() eWarning("failed! (%s) %m", m_filename); return -1; } +#ifdef BUILD_VUPLUS /* ikseong */ + else + { + if (m_dvbid==0) + frontend0_fd = m_fd; + else if (m_dvbid==1) + frontend1_fd = m_fd; + } +#endif } } else @@ -739,6 +753,10 @@ void eDVBFrontend::timeout() m_tuning = 0; if (m_state == stateTuning) { +#ifdef BUILD_VUPLUS /* ikseong */ + eDVBFrontend *sec_fe = this; + sec_fe->m_data[CSW] = sec_fe->m_data[UCSW] = sec_fe->m_data[TONEBURST] = -1; // reset diseqc +#endif m_state = stateFailed; m_stateChanged(this); } @@ -1860,11 +1878,11 @@ int eDVBFrontend::tuneLoopInt() // called by m_tuneTimer int slotid = sec_fe->m_slotid; // FIXMEEEEEE hardcoded i2c devices for dm7025 and dm8000 if (slotid < 2) - sprintf(dev, "/dev/i2c/%d", slotid); + sprintf(dev, "/dev/i2c-%d", slotid); else if (slotid == 2) - sprintf(dev, "/dev/i2c/2"); // first nim socket on DM8000 use /dev/i2c/2 + sprintf(dev, "/dev/i2c-2"); // first nim socket on DM8000 use /dev/i2c-2 else if (slotid == 3) - sprintf(dev, "/dev/i2c/4"); // second nim socket on DM8000 use /dev/i2c/4 + sprintf(dev, "/dev/i2c-4"); // second nim socket on DM8000 use /dev/i2c-4 int fd = ::open(dev, O_RDWR); unsigned char data[2]; @@ -2111,8 +2129,8 @@ RESULT eDVBFrontend::prepare_sat(const eDVBFrontendParametersSatellite &feparm, return -EINVAL; } #if HAVE_DVB_API_VERSION < 5 - 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 + parm_inversion = (fe_spectral_inversion_t)((feparm.rolloff << 2) | parm_inversion); // Hack.. we use bit 2..3 of inversion param for rolloff + parm_inversion = (fe_spectral_inversion_t)((feparm.pilot << 4) | parm_inversion); // Hack.. we use bit 4..5 of inversion param for pilot if (feparm.modulation == eDVBFrontendParametersSatellite::Modulation_8PSK) { parm_u_qpsk_fec_inner = (fe_code_rate_t)((int)parm_u_qpsk_fec_inner+9);