summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/nouveau
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2011-07-21 15:52:52 +1000
committerBen Skeggs <bskeggs@redhat.com>2011-09-20 16:08:44 +1000
commit64e740bb3d43a3abcd0b51cda3ba46b35bff30b2 (patch)
tree5b61bb9487757d735a96661f847a451a3c32e53a /drivers/gpu/drm/nouveau
parentf2cbe46f14427914bdd191795da998588dee4b8c (diff)
drm/nva3/pm: use crystal freq where appropriate
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau')
-rw-r--r--drivers/gpu/drm/nouveau/nva3_pm.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/gpu/drm/nouveau/nva3_pm.c b/drivers/gpu/drm/nouveau/nva3_pm.c
index 16d574dbe369..ec684f56dfc6 100644
--- a/drivers/gpu/drm/nouveau/nva3_pm.c
+++ b/drivers/gpu/drm/nouveau/nva3_pm.c
@@ -42,11 +42,12 @@ read_vco(struct drm_device *dev, int clk)
static u32
read_clk(struct drm_device *dev, int clk, bool ignore_en)
{
+ struct drm_nouveau_private *dev_priv = dev->dev_private;
u32 sctl, sdiv, sclk;
- /* refclk for the 0xe8xx plls always 27KHz */
+ /* refclk for the 0xe8xx plls is a fixed frequency */
if (clk >= 0x40)
- return 27000;
+ return dev_priv->crystal;
sctl = nv_rd32(dev, 0x4120 + (clk * 4));
if (!ignore_en && !(sctl & 0x00000100))
@@ -54,7 +55,7 @@ read_clk(struct drm_device *dev, int clk, bool ignore_en)
switch (sctl & 0x00003000) {
case 0x00000000:
- return 27000;
+ return dev_priv->crystal;
case 0x00002000:
if (sctl & 0x00000040)
return 108000;