summaryrefslogtreecommitdiff
path: root/linux/drivers/media/common/tuners/tuner-xc2028.c
diff options
context:
space:
mode:
authorDevin Heitmueller <dheitmueller@kernellabs.com>2009-08-03 21:52:59 -0400
committerDevin Heitmueller <dheitmueller@kernellabs.com>2009-08-03 21:52:59 -0400
commitaa7df40721e36bcf9d4f1a60b9e58e69c08aac48 (patch)
tree684ecf471a7632f7ced931ef14b0185c1b0eedc8 /linux/drivers/media/common/tuners/tuner-xc2028.c
parentf0b81434ee6e958e7ffc72aa28d580c3d08cb31c (diff)
downloadmediapointer-dvb-s2-aa7df40721e36bcf9d4f1a60b9e58e69c08aac48.tar.gz
mediapointer-dvb-s2-aa7df40721e36bcf9d4f1a60b9e58e69c08aac48.tar.bz2
cx88: Disable xc3028 power management for Geniatech x8000
From: Devin Heitmueller <dheitmueller@kernellabs.com> A user discovered that the Geniatech x8000 encountered a regression when the xc3028 power management was introduced. The xc3028 never recovers after setting the powerdown register, which is probably because the xc3028 reset GPIO is not properly configured. Since I do not have access to the hardware and thus cannot determine the correct GPIO configuration, just disable xc3028 power management on this board, which fixes the regression. Thanks to user "ritec" for reporting the issue and testing the fix. Priority: high Cc: rictec <rictec@netcabo.pt> Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Diffstat (limited to 'linux/drivers/media/common/tuners/tuner-xc2028.c')
-rw-r--r--linux/drivers/media/common/tuners/tuner-xc2028.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/linux/drivers/media/common/tuners/tuner-xc2028.c b/linux/drivers/media/common/tuners/tuner-xc2028.c
index 3de5d6685..3cf380e6b 100644
--- a/linux/drivers/media/common/tuners/tuner-xc2028.c
+++ b/linux/drivers/media/common/tuners/tuner-xc2028.c
@@ -1123,8 +1123,8 @@ static int xc2028_sleep(struct dvb_frontend *fe)
struct xc2028_data *priv = fe->tuner_priv;
int rc = 0;
- /* Avoid firmware reload on slow devices */
- if (no_poweroff)
+ /* Avoid firmware reload on slow devices or if PM disabled */
+ if (no_poweroff || priv->ctrl.disable_power_mgmt)
return 0;
tuner_dbg("Putting xc2028/3028 into poweroff mode.\n");