Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93b4cc56 authored by Dave Airlie's avatar Dave Airlie
Browse files

cirrus: avoid crash if driver fails to load



If we haven't inited the mm code, don't try and tear it down.

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent bc42aabc
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -145,7 +145,7 @@ struct cirrus_device {
		struct ttm_bo_device bdev;
		atomic_t validate_sequence;
	} ttm;

	bool mm_inited;
};


+5 −0
Original line number Diff line number Diff line
@@ -275,12 +275,17 @@ int cirrus_mm_init(struct cirrus_device *cirrus)
				    pci_resource_len(dev->pdev, 0),
				    DRM_MTRR_WC);

	cirrus->mm_inited = true;
	return 0;
}

void cirrus_mm_fini(struct cirrus_device *cirrus)
{
	struct drm_device *dev = cirrus->dev;

	if (!cirrus->mm_inited)
		return;

	ttm_bo_device_release(&cirrus->ttm.bdev);

	cirrus_ttm_global_release(cirrus);