diff options
author | rnoland <rnoland@FreeBSD.org> | 2009-06-23 17:38:28 +0000 |
---|---|---|
committer | rnoland <rnoland@FreeBSD.org> | 2009-06-23 17:38:28 +0000 |
commit | e2c228d3d4948d533b13dc10d4146c5a7b8c23c3 (patch) | |
tree | f9bdfd9bb262bfbf9a2e2d3d0477d73018877ef8 /sys/dev/drm | |
parent | 0808d0b1a67c8f05c240f53f38787bd0ab1209dd (diff) | |
download | FreeBSD-src-e2c228d3d4948d533b13dc10d4146c5a7b8c23c3.zip FreeBSD-src-e2c228d3d4948d533b13dc10d4146c5a7b8c23c3.tar.gz |
Hold the lock while we save/restore register for suspend/resume.
MFC after: 3 days
Diffstat (limited to 'sys/dev/drm')
-rw-r--r-- | sys/dev/drm/i915_drv.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/drm/i915_drv.c b/sys/dev/drm/i915_drv.c index 39db236..b84e018 100644 --- a/sys/dev/drm/i915_drv.c +++ b/sys/dev/drm/i915_drv.c @@ -52,7 +52,10 @@ static int i915_suspend(device_t kdev) return -ENODEV; } + DRM_LOCK(); + DRM_DEBUG("starting suspend\n"); i915_save_state(dev); + DRM_UNLOCK(); return (bus_generic_suspend(kdev)); } @@ -61,7 +64,10 @@ static int i915_resume(device_t kdev) { struct drm_device *dev = device_get_softc(kdev); + DRM_LOCK(); i915_restore_state(dev); + DRM_DEBUG("finished resume\n"); + DRM_UNLOCK(); return (bus_generic_resume(kdev)); } |