@ -1229,24 +1229,8 @@ void evergreen_agp_enable(struct radeon_device *rdev)
void evergreen_mc_stop ( struct radeon_device * rdev , struct evergreen_mc_save * save )
{
save - > vga_control [ 0 ] = RREG32 ( D1VGA_CONTROL ) ;
save - > vga_control [ 1 ] = RREG32 ( D2VGA_CONTROL ) ;
save - > vga_render_control = RREG32 ( VGA_RENDER_CONTROL ) ;
save - > vga_hdp_control = RREG32 ( VGA_HDP_CONTROL ) ;
save - > crtc_control [ 0 ] = RREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC0_REGISTER_OFFSET ) ;
save - > crtc_control [ 1 ] = RREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC1_REGISTER_OFFSET ) ;
if ( rdev - > num_crtc > = 4 ) {
save - > vga_control [ 2 ] = RREG32 ( EVERGREEN_D3VGA_CONTROL ) ;
save - > vga_control [ 3 ] = RREG32 ( EVERGREEN_D4VGA_CONTROL ) ;
save - > crtc_control [ 2 ] = RREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC2_REGISTER_OFFSET ) ;
save - > crtc_control [ 3 ] = RREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC3_REGISTER_OFFSET ) ;
}
if ( rdev - > num_crtc > = 6 ) {
save - > vga_control [ 4 ] = RREG32 ( EVERGREEN_D5VGA_CONTROL ) ;
save - > vga_control [ 5 ] = RREG32 ( EVERGREEN_D6VGA_CONTROL ) ;
save - > crtc_control [ 4 ] = RREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC4_REGISTER_OFFSET ) ;
save - > crtc_control [ 5 ] = RREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC5_REGISTER_OFFSET ) ;
}
/* Stop all video */
WREG32 ( VGA_RENDER_CONTROL , 0 ) ;
@ -1357,47 +1341,6 @@ void evergreen_mc_resume(struct radeon_device *rdev, struct evergreen_mc_save *s
/* Unlock host access */
WREG32 ( VGA_HDP_CONTROL , save - > vga_hdp_control ) ;
mdelay ( 1 ) ;
/* Restore video state */
WREG32 ( D1VGA_CONTROL , save - > vga_control [ 0 ] ) ;
WREG32 ( D2VGA_CONTROL , save - > vga_control [ 1 ] ) ;
if ( rdev - > num_crtc > = 4 ) {
WREG32 ( EVERGREEN_D3VGA_CONTROL , save - > vga_control [ 2 ] ) ;
WREG32 ( EVERGREEN_D4VGA_CONTROL , save - > vga_control [ 3 ] ) ;
}
if ( rdev - > num_crtc > = 6 ) {
WREG32 ( EVERGREEN_D5VGA_CONTROL , save - > vga_control [ 4 ] ) ;
WREG32 ( EVERGREEN_D6VGA_CONTROL , save - > vga_control [ 5 ] ) ;
}
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC0_REGISTER_OFFSET , 1 ) ;
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC1_REGISTER_OFFSET , 1 ) ;
if ( rdev - > num_crtc > = 4 ) {
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC2_REGISTER_OFFSET , 1 ) ;
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC3_REGISTER_OFFSET , 1 ) ;
}
if ( rdev - > num_crtc > = 6 ) {
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC4_REGISTER_OFFSET , 1 ) ;
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC5_REGISTER_OFFSET , 1 ) ;
}
WREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC0_REGISTER_OFFSET , save - > crtc_control [ 0 ] ) ;
WREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC1_REGISTER_OFFSET , save - > crtc_control [ 1 ] ) ;
if ( rdev - > num_crtc > = 4 ) {
WREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC2_REGISTER_OFFSET , save - > crtc_control [ 2 ] ) ;
WREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC3_REGISTER_OFFSET , save - > crtc_control [ 3 ] ) ;
}
if ( rdev - > num_crtc > = 6 ) {
WREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC4_REGISTER_OFFSET , save - > crtc_control [ 4 ] ) ;
WREG32 ( EVERGREEN_CRTC_CONTROL + EVERGREEN_CRTC5_REGISTER_OFFSET , save - > crtc_control [ 5 ] ) ;
}
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC0_REGISTER_OFFSET , 0 ) ;
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC1_REGISTER_OFFSET , 0 ) ;
if ( rdev - > num_crtc > = 4 ) {
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC2_REGISTER_OFFSET , 0 ) ;
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC3_REGISTER_OFFSET , 0 ) ;
}
if ( rdev - > num_crtc > = 6 ) {
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC4_REGISTER_OFFSET , 0 ) ;
WREG32 ( EVERGREEN_CRTC_UPDATE_LOCK + EVERGREEN_CRTC5_REGISTER_OFFSET , 0 ) ;
}
WREG32 ( VGA_RENDER_CONTROL , save - > vga_render_control ) ;
}