Subversion Repositories Kolibri OS

Rev

Rev 1268 | Rev 1403 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1268 Rev 1313
Line 140... Line 140...
140
	return -1;
140
	return -1;
141
}
141
}
Line 142... Line 142...
142
 
142
 
143
void rv515_vga_render_disable(struct radeon_device *rdev)
143
void rv515_vga_render_disable(struct radeon_device *rdev)
144
{
-
 
145
	WREG32(R_000330_D1VGA_CONTROL, 0);
-
 
146
	WREG32(R_000338_D2VGA_CONTROL, 0);
144
{
147
	WREG32(R_000300_VGA_RENDER_CONTROL,
145
	WREG32(R_000300_VGA_RENDER_CONTROL,
148
		RREG32(R_000300_VGA_RENDER_CONTROL) & C_000300_VGA_VSTATUS_CNTL);
146
		RREG32(R_000300_VGA_RENDER_CONTROL) & C_000300_VGA_VSTATUS_CNTL);
Line 149... Line 147...
149
}
147
}
Line 389... Line 387...
389
	save->vga_hdp_control = RREG32(R_000328_VGA_HDP_CONTROL);
387
	save->vga_hdp_control = RREG32(R_000328_VGA_HDP_CONTROL);
390
	save->d1crtc_control = RREG32(R_006080_D1CRTC_CONTROL);
388
	save->d1crtc_control = RREG32(R_006080_D1CRTC_CONTROL);
391
	save->d2crtc_control = RREG32(R_006880_D2CRTC_CONTROL);
389
	save->d2crtc_control = RREG32(R_006880_D2CRTC_CONTROL);
Line 392... Line 390...
392
 
390
 
393
	/* Stop all video */
-
 
394
	WREG32(R_000330_D1VGA_CONTROL, 0);
391
	/* Stop all video */
395
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 0);
392
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 0);
396
	WREG32(R_000300_VGA_RENDER_CONTROL, 0);
393
	WREG32(R_000300_VGA_RENDER_CONTROL, 0);
397
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 1);
394
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 1);
398
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 1);
395
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 1);
399
	WREG32(R_006080_D1CRTC_CONTROL, 0);
396
	WREG32(R_006080_D1CRTC_CONTROL, 0);
400
	WREG32(R_006880_D2CRTC_CONTROL, 0);
397
	WREG32(R_006880_D2CRTC_CONTROL, 0);
401
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 0);
398
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 0);
-
 
399
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 0);
-
 
400
	WREG32(R_000330_D1VGA_CONTROL, 0);
402
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 0);
401
	WREG32(R_000338_D2VGA_CONTROL, 0);
Line 403... Line 402...
403
}
402
}
404
 
403
 
405
void rv515_mc_resume(struct radeon_device *rdev, struct rv515_mc_save *save)
404
void rv515_mc_resume(struct radeon_device *rdev, struct rv515_mc_save *save)
Line 411... Line 410...
411
	WREG32(R_000310_VGA_MEMORY_BASE_ADDRESS, rdev->mc.vram_start);
410
	WREG32(R_000310_VGA_MEMORY_BASE_ADDRESS, rdev->mc.vram_start);
412
	/* Unlock host access */
411
	/* Unlock host access */
413
	WREG32(R_000328_VGA_HDP_CONTROL, save->vga_hdp_control);
412
	WREG32(R_000328_VGA_HDP_CONTROL, save->vga_hdp_control);
414
	mdelay(1);
413
	mdelay(1);
415
	/* Restore video state */
414
	/* Restore video state */
-
 
415
	WREG32(R_000330_D1VGA_CONTROL, save->d1vga_control);
-
 
416
	WREG32(R_000338_D2VGA_CONTROL, save->d2vga_control);
416
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 1);
417
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 1);
417
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 1);
418
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 1);
418
	WREG32(R_006080_D1CRTC_CONTROL, save->d1crtc_control);
419
	WREG32(R_006080_D1CRTC_CONTROL, save->d1crtc_control);
419
	WREG32(R_006880_D2CRTC_CONTROL, save->d2crtc_control);
420
	WREG32(R_006880_D2CRTC_CONTROL, save->d2crtc_control);
420
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 0);
421
	WREG32(R_0060E8_D1CRTC_UPDATE_LOCK, 0);
421
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 0);
422
	WREG32(R_0068E8_D2CRTC_UPDATE_LOCK, 0);
422
	WREG32(R_000330_D1VGA_CONTROL, save->d1vga_control);
-
 
423
	WREG32(R_000338_D2VGA_CONTROL, save->d2vga_control);
-
 
424
	WREG32(R_000300_VGA_RENDER_CONTROL, save->vga_render_control);
423
	WREG32(R_000300_VGA_RENDER_CONTROL, save->vga_render_control);
425
}
424
}
Line 426... Line 425...
426
 
425
 
427
void rv515_mc_program(struct radeon_device *rdev)
426
void rv515_mc_program(struct radeon_device *rdev)