[PATCH]: Fix for SB100/SB150 bootup hangs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Anyone with a SunBlade100 or SunBlade150 trying to use
kernels built with gcc-4.1.x or later and seeing hangs
should try out this patch.

GCC-4.1.x and later optimize away this poorly constructed
delay, so there is no delay, and the chip hangs.

I'll put a proper version of this fix, using a udelay(),
upstream very soon.

Thanks.

diff --git a/drivers/video/aty/mach64_ct.c b/drivers/video/aty/mach64_ct.c
index f3b487b..96e91ee 100644
--- a/drivers/video/aty/mach64_ct.c
+++ b/drivers/video/aty/mach64_ct.c
@@ -614,7 +614,8 @@ static void aty_resume_pll_ct(const struct fb_info *info,
 		 * helps for Rage Mobilities that sometimes crash when
 		 * we switch to sclk. (Daniel Mantione, 13-05-2003)
 		 */
-		for (i=0;i<=0x1ffff;i++);
+		for (i=0;i<=0x1ffff;i++)
+			barrier();
 	}
 
 	aty_st_pll_ct(PLL_REF_DIV, pll->ct.pll_ref_div, par);
-
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux