mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 14:53:58 -04:00
drm/amdgpu/userq: rework front end call sequence
Split out the queue map from the mqd create call and split out the queue unmap from the mqd destroy call. This splits the queue setup and teardown with the actual enablement in the firmware. Reviewed-by: Sunil Khatri <sunil.khatri@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
@@ -320,13 +320,6 @@ static int mes_userq_mqd_create(struct amdgpu_userq_mgr *uq_mgr,
|
||||
goto free_ctx;
|
||||
}
|
||||
|
||||
/* Map userqueue into FW using MES */
|
||||
r = mes_userq_map(uq_mgr, queue);
|
||||
if (r) {
|
||||
DRM_ERROR("Failed to init MQD\n");
|
||||
goto free_ctx;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
free_ctx:
|
||||
@@ -350,9 +343,6 @@ mes_userq_mqd_destroy(struct amdgpu_userq_mgr *uq_mgr,
|
||||
{
|
||||
struct amdgpu_device *adev = uq_mgr->adev;
|
||||
|
||||
if (queue->queue_active)
|
||||
mes_userq_unmap(uq_mgr, queue);
|
||||
|
||||
amdgpu_userqueue_destroy_object(uq_mgr, &queue->fw_obj);
|
||||
kfree(queue->userq_prop);
|
||||
amdgpu_userqueue_destroy_object(uq_mgr, &queue->mqd);
|
||||
|
||||
Reference in New Issue
Block a user