forked from Minki/linux
drm/radeon/kms: resume AGP by calling init.
AGP resume was broken since we moved to the new init path, because we never re-enabled AGP on these systems at resume time. This patch just calls the AGP resume call which just does the reinit at resume time like the old path did. Since AGP is pretty much gpu independant I did it outside the gpu specific code. Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
a8a8a669ea
commit
0ebf17174b
@ -519,6 +519,7 @@ typedef int (*radeon_packet3_check_t)(struct radeon_cs_parser *p,
|
|||||||
* AGP
|
* AGP
|
||||||
*/
|
*/
|
||||||
int radeon_agp_init(struct radeon_device *rdev);
|
int radeon_agp_init(struct radeon_device *rdev);
|
||||||
|
void radeon_agp_resume(struct radeon_device *rdev);
|
||||||
void radeon_agp_fini(struct radeon_device *rdev);
|
void radeon_agp_fini(struct radeon_device *rdev);
|
||||||
|
|
||||||
|
|
||||||
|
@ -237,6 +237,18 @@ int radeon_agp_init(struct radeon_device *rdev)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void radeon_agp_resume(struct radeon_device *rdev)
|
||||||
|
{
|
||||||
|
#if __OS_HAS_AGP
|
||||||
|
int r;
|
||||||
|
if (rdev->flags & RADEON_IS_AGP) {
|
||||||
|
r = radeon_agp_init(rdev);
|
||||||
|
if (r)
|
||||||
|
dev_warn(rdev->dev, "radeon AGP reinit failed\n");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
void radeon_agp_fini(struct radeon_device *rdev)
|
void radeon_agp_fini(struct radeon_device *rdev)
|
||||||
{
|
{
|
||||||
#if __OS_HAS_AGP
|
#if __OS_HAS_AGP
|
||||||
|
@ -688,6 +688,8 @@ int radeon_resume_kms(struct drm_device *dev)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
pci_set_master(dev->pdev);
|
pci_set_master(dev->pdev);
|
||||||
|
/* resume AGP if in use */
|
||||||
|
radeon_agp_resume(rdev);
|
||||||
radeon_resume(rdev);
|
radeon_resume(rdev);
|
||||||
radeon_restore_bios_scratch_regs(rdev);
|
radeon_restore_bios_scratch_regs(rdev);
|
||||||
fb_set_suspend(rdev->fbdev_info, 0);
|
fb_set_suspend(rdev->fbdev_info, 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user