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

Commit e517cd77 authored by Monk Liu's avatar Monk Liu Committed by Alex Deucher
Browse files

drm/amdgpu: fix gfx 7 ucode mem leak

parent 13331ac3
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -991,6 +991,22 @@ static int gfx_v7_0_init_microcode(struct amdgpu_device *adev)
	return err;
}

static void gfx_v7_0_free_microcode(struct amdgpu_device *adev)
{
	release_firmware(adev->gfx.pfp_fw);
	adev->gfx.pfp_fw = NULL;
	release_firmware(adev->gfx.me_fw);
	adev->gfx.me_fw = NULL;
	release_firmware(adev->gfx.ce_fw);
	adev->gfx.ce_fw = NULL;
	release_firmware(adev->gfx.mec_fw);
	adev->gfx.mec_fw = NULL;
	release_firmware(adev->gfx.mec2_fw);
	adev->gfx.mec2_fw = NULL;
	release_firmware(adev->gfx.rlc_fw);
	adev->gfx.rlc_fw = NULL;
}

/**
 * gfx_v7_0_tiling_mode_table_init - init the hw tiling table
 *
@@ -4489,6 +4505,7 @@ static int gfx_v7_0_sw_fini(void *handle)
	gfx_v7_0_cp_compute_fini(adev);
	gfx_v7_0_rlc_fini(adev);
	gfx_v7_0_mec_fini(adev);
	gfx_v7_0_free_microcode(adev);

	return 0;
}