diff options
Diffstat (limited to 'drivers/media/common')
-rw-r--r-- | drivers/media/common/tuners/xc5000.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/media/common/tuners/xc5000.c b/drivers/media/common/tuners/xc5000.c index a9493e1f0f60..c956c82524ec 100644 --- a/drivers/media/common/tuners/xc5000.c +++ b/drivers/media/common/tuners/xc5000.c | |||
@@ -83,7 +83,7 @@ struct xc5000_priv { | |||
83 | #define XREG_D_CODE 0x04 | 83 | #define XREG_D_CODE 0x04 |
84 | #define XREG_IF_OUT 0x05 | 84 | #define XREG_IF_OUT 0x05 |
85 | #define XREG_SEEK_MODE 0x07 | 85 | #define XREG_SEEK_MODE 0x07 |
86 | #define XREG_POWER_DOWN 0x0A | 86 | #define XREG_POWER_DOWN 0x0A /* Obsolete */ |
87 | #define XREG_SIGNALSOURCE 0x0D /* 0=Air, 1=Cable */ | 87 | #define XREG_SIGNALSOURCE 0x0D /* 0=Air, 1=Cable */ |
88 | #define XREG_SMOOTHEDCVBS 0x0E | 88 | #define XREG_SMOOTHEDCVBS 0x0E |
89 | #define XREG_XTALFREQ 0x0F | 89 | #define XREG_XTALFREQ 0x0F |
@@ -841,12 +841,14 @@ static int xc_load_fw_and_init_tuner(struct dvb_frontend *fe) | |||
841 | 841 | ||
842 | static int xc5000_sleep(struct dvb_frontend *fe) | 842 | static int xc5000_sleep(struct dvb_frontend *fe) |
843 | { | 843 | { |
844 | struct xc5000_priv *priv = fe->tuner_priv; | ||
845 | int ret; | 844 | int ret; |
846 | 845 | ||
847 | dprintk(1, "%s()\n", __func__); | 846 | dprintk(1, "%s()\n", __func__); |
848 | 847 | ||
849 | ret = xc_write_reg(priv, XREG_POWER_DOWN, 0); | 848 | /* According to Xceive technical support, the "powerdown" register |
849 | was removed in newer versions of the firmware. The "supported" | ||
850 | way to sleep the tuner is to pull the reset pin low for 10ms */ | ||
851 | ret = xc5000_TunerReset(fe); | ||
850 | if (ret != XC_RESULT_SUCCESS) { | 852 | if (ret != XC_RESULT_SUCCESS) { |
851 | printk(KERN_ERR | 853 | printk(KERN_ERR |
852 | "xc5000: %s() unable to shutdown tuner\n", | 854 | "xc5000: %s() unable to shutdown tuner\n", |