Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 367193
b: refs/heads/master
c: 746f7ae
h: refs/heads/master
i:
  367191: 9d4eab8
v: v3
  • Loading branch information
Mauro Carvalho Chehab committed Apr 25, 2013
1 parent 2b7e2ee commit cfe9d54
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 5 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c82056d0b4ac7b805ac4e7d3870c42bb19e3b3d5
refs/heads/master: 746f7ae0e9ca500f8be888675d88befed5740413
14 changes: 10 additions & 4 deletions trunk/drivers/media/dvb-frontends/dib8000.c
Original file line number Diff line number Diff line change
Expand Up @@ -2355,7 +2355,7 @@ static void dib8000_set_isdbt_common_channel(struct dib8000_state *state, u8 seq
/* TSB or ISDBT ? apply it now */
if (c->isdbt_sb_mode) {
dib8000_set_sb_channel(state);
if (c->isdbt_sb_subchannel != -1)
if (c->isdbt_sb_subchannel < 14)
init_prbs = dib8000_get_init_prbs(state, c->isdbt_sb_subchannel);
else
init_prbs = 0;
Expand Down Expand Up @@ -3102,7 +3102,9 @@ static int dib8000_tune(struct dvb_frontend *fe)
dib8000_set_isdbt_loop_params(state, LOOP_TUNE_2);

/* mpeg will never lock on this condition because init_prbs is not set : search for it !*/
if (c->isdbt_sb_mode && c->isdbt_sb_subchannel == -1 && !state->differential_constellation) {
if (c->isdbt_sb_mode
&& c->isdbt_sb_subchannel < 14
&& !state->differential_constellation) {
state->subchannel = 0;
*tune_state = CT_DEMOD_STEP_11;
} else {
Expand Down Expand Up @@ -3146,14 +3148,18 @@ static int dib8000_tune(struct dvb_frontend *fe)
locks = dib8000_read_lock(fe);
if (locks&(1<<(7-state->longest_intlv_layer))) { /* mpeg lock : check the longest one */
dprintk("Mpeg locks [ L0 : %d | L1 : %d | L2 : %d ]", (locks>>7)&0x1, (locks>>6)&0x1, (locks>>5)&0x1);
if (c->isdbt_sb_mode && c->isdbt_sb_subchannel == -1 && !state->differential_constellation)
if (c->isdbt_sb_mode
&& c->isdbt_sb_subchannel < 14
&& !state->differential_constellation)
/* signal to the upper layer, that there was a channel found and the parameters can be read */
state->status = FE_STATUS_DEMOD_SUCCESS;
else
state->status = FE_STATUS_DATA_LOCKED;
*tune_state = CT_DEMOD_STOP;
} else if (now > *timeout) {
if (c->isdbt_sb_mode && c->isdbt_sb_subchannel == -1 && !state->differential_constellation) { /* continue to try init prbs autosearch */
if (c->isdbt_sb_mode
&& c->isdbt_sb_subchannel < 14
&& !state->differential_constellation) { /* continue to try init prbs autosearch */
state->subchannel += 3;
*tune_state = CT_DEMOD_STEP_11;
} else { /* we are done mpeg of the longest interleaver xas not locking but let's try if an other layer has locked in the same time */
Expand Down

0 comments on commit cfe9d54

Please sign in to comment.