atyfb: Fix XCLK frequency on Apple iBook1
authorVille Syrjala <syrjala@sci.fi>
Wed, 27 Jun 2007 21:09:46 +0000 (14:09 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Thu, 28 Jun 2007 18:34:53 +0000 (11:34 -0700)
Fix a regression on Apple iBook1.  Changes in the clock init code caused an
incorrect XCLK frequency to be used leading to a corrupted display.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Cc: Olaf Hering <olaf@aepfle.de>
Cc: Antonino Daplas <adaplas@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/video/aty/atyfb_base.c

index 8d3455da663aa6261545e6368e5fab78f8edd081..2fbff63174333b08909c87d438ab0e1ac708efad 100644 (file)
@@ -2290,15 +2290,6 @@ static int __devinit aty_init(struct fb_info *info)
        init_waitqueue_head(&par->vblank.wait);
        spin_lock_init(&par->int_lock);
 
        init_waitqueue_head(&par->vblank.wait);
        spin_lock_init(&par->int_lock);
 
-#ifdef CONFIG_PPC_PMAC
-       /* The Apple iBook1 uses non-standard memory frequencies. We detect it
-        * and set the frequency manually. */
-       if (machine_is_compatible("PowerBook2,1")) {
-               par->pll_limits.mclk = 70;
-               par->pll_limits.xclk = 53;
-       }
-#endif
-
 #ifdef CONFIG_FB_ATY_GX
        if (!M64_HAS(INTEGRATED)) {
                u32 stat0;
 #ifdef CONFIG_FB_ATY_GX
        if (!M64_HAS(INTEGRATED)) {
                u32 stat0;
@@ -2383,6 +2374,14 @@ static int __devinit aty_init(struct fb_info *info)
                        par->pll_limits.xclk = (par->pll_limits.xclk + 1) >> 1;
        }
 #endif
                        par->pll_limits.xclk = (par->pll_limits.xclk + 1) >> 1;
        }
 #endif
+#ifdef CONFIG_PPC_PMAC
+       /* The Apple iBook1 uses non-standard memory frequencies. We detect it
+        * and set the frequency manually. */
+       if (machine_is_compatible("PowerBook2,1")) {
+               par->pll_limits.mclk = 70;
+               par->pll_limits.xclk = 53;
+       }
+#endif
 
        /* Allow command line to override clocks. */
        if (pll)
 
        /* Allow command line to override clocks. */
        if (pll)