diff --git a/drivers/media/dvb-frontends/cxd2841er.c b/drivers/media/dvb-frontends/cxd2841er.c index 74c1efb544b8..190d73eadfef 100644 --- a/drivers/media/dvb-frontends/cxd2841er.c +++ b/drivers/media/dvb-frontends/cxd2841er.c @@ -3518,6 +3518,10 @@ static int cxd2841er_set_frontend_tc(struct dvb_frontend *fe) cxd2841er_tuner_set(fe); cxd2841er_tune_done(priv); + + if (priv->flags & CXD2841ER_NO_WAIT_LOCK) + goto done; + timeout = 2500; while (timeout > 0) { ret = cxd2841er_read_status_tc(fe, &status); diff --git a/drivers/media/dvb-frontends/cxd2841er.h b/drivers/media/dvb-frontends/cxd2841er.h index 9ef732224057..f5a5bc5d2e76 100644 --- a/drivers/media/dvb-frontends/cxd2841er.h +++ b/drivers/media/dvb-frontends/cxd2841er.h @@ -30,6 +30,7 @@ #define CXD2841ER_ASCOT 8 /* bit 3 */ #define CXD2841ER_EARLY_TUNE 16 /* bit 4 */ #define CXD2841ER_SLEEPONSWITCH 32 /* bit 5 */ +#define CXD2841ER_NO_WAIT_LOCK 64 /* bit 6 */ #define CXD2841ER_HW_DDB 8388608 /* bit 23 */ enum cxd2841er_xtal {