diff options
Diffstat (limited to 'drivers/gpu')
| -rw-r--r-- | drivers/gpu/drm/exynos/exynos_drm_drv.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.c b/drivers/gpu/drm/exynos/exynos_drm_drv.c index 76a111f54ccb..58820ebd3558 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_drv.c +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.c | |||
| @@ -151,6 +151,17 @@ static void exynos_drm_preclose(struct drm_device *dev, | |||
| 151 | 151 | ||
| 152 | } | 152 | } |
| 153 | 153 | ||
| 154 | static void exynos_drm_postclose(struct drm_device *dev, struct drm_file *file) | ||
| 155 | { | ||
| 156 | DRM_DEBUG_DRIVER("%s\n", __FILE__); | ||
| 157 | |||
| 158 | if (!file->driver_priv) | ||
| 159 | return; | ||
| 160 | |||
| 161 | kfree(file->driver_priv); | ||
| 162 | file->driver_priv = NULL; | ||
| 163 | } | ||
| 164 | |||
| 154 | static void exynos_drm_lastclose(struct drm_device *dev) | 165 | static void exynos_drm_lastclose(struct drm_device *dev) |
| 155 | { | 166 | { |
| 156 | DRM_DEBUG_DRIVER("%s\n", __FILE__); | 167 | DRM_DEBUG_DRIVER("%s\n", __FILE__); |
| @@ -193,6 +204,7 @@ static struct drm_driver exynos_drm_driver = { | |||
| 193 | .unload = exynos_drm_unload, | 204 | .unload = exynos_drm_unload, |
| 194 | .preclose = exynos_drm_preclose, | 205 | .preclose = exynos_drm_preclose, |
| 195 | .lastclose = exynos_drm_lastclose, | 206 | .lastclose = exynos_drm_lastclose, |
| 207 | .postclose = exynos_drm_postclose, | ||
| 196 | .get_vblank_counter = drm_vblank_count, | 208 | .get_vblank_counter = drm_vblank_count, |
| 197 | .enable_vblank = exynos_drm_crtc_enable_vblank, | 209 | .enable_vblank = exynos_drm_crtc_enable_vblank, |
| 198 | .disable_vblank = exynos_drm_crtc_disable_vblank, | 210 | .disable_vblank = exynos_drm_crtc_disable_vblank, |
