diff options
-rw-r--r-- | drivers/video/aty/radeon_pm.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/video/aty/radeon_pm.c b/drivers/video/aty/radeon_pm.c index 59a1b6f85067..097d668c4fe5 100644 --- a/drivers/video/aty/radeon_pm.c +++ b/drivers/video/aty/radeon_pm.c | |||
@@ -62,9 +62,9 @@ static void radeon_pm_disable_dynamic_mode(struct radeonfb_info *rinfo) | |||
62 | OUTPLL(pllSCLK_CNTL, tmp); | 62 | OUTPLL(pllSCLK_CNTL, tmp); |
63 | return; | 63 | return; |
64 | } | 64 | } |
65 | /* RV350 (M10) */ | 65 | /* RV350 (M10/M11) */ |
66 | if (rinfo->family == CHIP_FAMILY_RV350) { | 66 | if (rinfo->family == CHIP_FAMILY_RV350) { |
67 | /* for RV350/M10, no delays are required. */ | 67 | /* for RV350/M10/M11, no delays are required. */ |
68 | tmp = INPLL(pllSCLK_CNTL2); | 68 | tmp = INPLL(pllSCLK_CNTL2); |
69 | tmp |= (SCLK_CNTL2__R300_FORCE_TCL | | 69 | tmp |= (SCLK_CNTL2__R300_FORCE_TCL | |
70 | SCLK_CNTL2__R300_FORCE_GA | | 70 | SCLK_CNTL2__R300_FORCE_GA | |
@@ -248,7 +248,7 @@ static void radeon_pm_enable_dynamic_mode(struct radeonfb_info *rinfo) | |||
248 | return; | 248 | return; |
249 | } | 249 | } |
250 | 250 | ||
251 | /* M10 */ | 251 | /* M10/M11 */ |
252 | if (rinfo->family == CHIP_FAMILY_RV350) { | 252 | if (rinfo->family == CHIP_FAMILY_RV350) { |
253 | tmp = INPLL(pllSCLK_CNTL2); | 253 | tmp = INPLL(pllSCLK_CNTL2); |
254 | tmp &= ~(SCLK_CNTL2__R300_FORCE_TCL | | 254 | tmp &= ~(SCLK_CNTL2__R300_FORCE_TCL | |
@@ -1155,7 +1155,7 @@ static void radeon_pm_full_reset_sdram(struct radeonfb_info *rinfo) | |||
1155 | OUTREG( CRTC_GEN_CNTL, (crtcGenCntl | CRTC_GEN_CNTL__CRTC_DISP_REQ_EN_B) ); | 1155 | OUTREG( CRTC_GEN_CNTL, (crtcGenCntl | CRTC_GEN_CNTL__CRTC_DISP_REQ_EN_B) ); |
1156 | OUTREG( CRTC2_GEN_CNTL, (crtcGenCntl2 | CRTC2_GEN_CNTL__CRTC2_DISP_REQ_EN_B) ); | 1156 | OUTREG( CRTC2_GEN_CNTL, (crtcGenCntl2 | CRTC2_GEN_CNTL__CRTC2_DISP_REQ_EN_B) ); |
1157 | 1157 | ||
1158 | /* This is the code for the Aluminium PowerBooks M10 */ | 1158 | /* This is the code for the Aluminium PowerBooks M10 / iBooks M11 */ |
1159 | if (rinfo->family == CHIP_FAMILY_RV350) { | 1159 | if (rinfo->family == CHIP_FAMILY_RV350) { |
1160 | u32 sdram_mode_reg = rinfo->save_regs[35]; | 1160 | u32 sdram_mode_reg = rinfo->save_regs[35]; |
1161 | static u32 default_mrtable[] = | 1161 | static u32 default_mrtable[] = |
@@ -2741,9 +2741,11 @@ void radeonfb_pm_init(struct radeonfb_info *rinfo, int dynclk) | |||
2741 | rinfo->pm_mode |= radeon_pm_d2; | 2741 | rinfo->pm_mode |= radeon_pm_d2; |
2742 | 2742 | ||
2743 | /* We can restart Jasper (M10 chip in albooks), BlueStone (7500 chip | 2743 | /* We can restart Jasper (M10 chip in albooks), BlueStone (7500 chip |
2744 | * in some desktop G4s), and Via (M9+ chip on iBook G4) | 2744 | * in some desktop G4s), Via (M9+ chip on iBook G4) and |
2745 | * Snowy (M11 chip on iBook G4 manufactured after July 2005) | ||
2745 | */ | 2746 | */ |
2746 | if (!strcmp(rinfo->of_node->name, "ATY,JasperParent")) { | 2747 | if (!strcmp(rinfo->of_node->name, "ATY,JasperParent") || |
2748 | !strcmp(rinfo->of_node->name, "ATY,SnowyParent")) { | ||
2747 | rinfo->reinit_func = radeon_reinitialize_M10; | 2749 | rinfo->reinit_func = radeon_reinitialize_M10; |
2748 | rinfo->pm_mode |= radeon_pm_off; | 2750 | rinfo->pm_mode |= radeon_pm_off; |
2749 | } | 2751 | } |