Commit 9305ee6f authored by Alex Deucher's avatar Alex Deucher

drm/radeon: fix modeset tear down code

The ordering caused problems.

bug:
https://bugs.freedesktop.org/show_bug.cgi?id=98200Reviewed-and-Tested-by: default avatarMichel Dänzer <michel.daenzer@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent b0c80bd5
...@@ -1675,20 +1675,20 @@ int radeon_modeset_init(struct radeon_device *rdev) ...@@ -1675,20 +1675,20 @@ int radeon_modeset_init(struct radeon_device *rdev)
void radeon_modeset_fini(struct radeon_device *rdev) void radeon_modeset_fini(struct radeon_device *rdev)
{ {
radeon_fbdev_fini(rdev);
kfree(rdev->mode_info.bios_hardcoded_edid);
/* free i2c buses */
radeon_i2c_fini(rdev);
if (rdev->mode_info.mode_config_initialized) { if (rdev->mode_info.mode_config_initialized) {
radeon_afmt_fini(rdev);
drm_kms_helper_poll_fini(rdev->ddev); drm_kms_helper_poll_fini(rdev->ddev);
radeon_hpd_fini(rdev); radeon_hpd_fini(rdev);
drm_crtc_force_disable_all(rdev->ddev); drm_crtc_force_disable_all(rdev->ddev);
radeon_fbdev_fini(rdev);
radeon_afmt_fini(rdev);
drm_mode_config_cleanup(rdev->ddev); drm_mode_config_cleanup(rdev->ddev);
rdev->mode_info.mode_config_initialized = false; rdev->mode_info.mode_config_initialized = false;
} }
kfree(rdev->mode_info.bios_hardcoded_edid);
/* free i2c buses */
radeon_i2c_fini(rdev);
} }
static bool is_hdtv_mode(const struct drm_display_mode *mode) static bool is_hdtv_mode(const struct drm_display_mode *mode)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment