drm/amdgpu: rework suspend and resume to deal with atomic changes