diff options
Diffstat (limited to 'drivers/media/dvb-frontends/tda1004x.c')
-rw-r--r-- | drivers/media/dvb-frontends/tda1004x.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/media/dvb-frontends/tda1004x.c b/drivers/media/dvb-frontends/tda1004x.c index a2631be7ffa..08e0f0dd872 100644 --- a/drivers/media/dvb-frontends/tda1004x.c +++ b/drivers/media/dvb-frontends/tda1004x.c | |||
@@ -903,9 +903,18 @@ static int tda1004x_get_fe(struct dvb_frontend *fe) | |||
903 | { | 903 | { |
904 | struct dtv_frontend_properties *fe_params = &fe->dtv_property_cache; | 904 | struct dtv_frontend_properties *fe_params = &fe->dtv_property_cache; |
905 | struct tda1004x_state* state = fe->demodulator_priv; | 905 | struct tda1004x_state* state = fe->demodulator_priv; |
906 | int status; | ||
906 | 907 | ||
907 | dprintk("%s\n", __func__); | 908 | dprintk("%s\n", __func__); |
908 | 909 | ||
910 | status = tda1004x_read_byte(state, TDA1004X_STATUS_CD); | ||
911 | if (status == -1) | ||
912 | return -EIO; | ||
913 | |||
914 | /* Only update the properties cache if device is locked */ | ||
915 | if (!(status & 8)) | ||
916 | return 0; | ||
917 | |||
909 | // inversion status | 918 | // inversion status |
910 | fe_params->inversion = INVERSION_OFF; | 919 | fe_params->inversion = INVERSION_OFF; |
911 | if (tda1004x_read_byte(state, TDA1004X_CONFC1) & 0x20) | 920 | if (tda1004x_read_byte(state, TDA1004X_CONFC1) & 0x20) |