rockchip: patches-6.6: refresh patches
Signed-off-by: sbwml <admin@cooluc.com>
This commit is contained in:
parent
762e3eb91d
commit
36f20719fb
@ -78,7 +78,7 @@ Subject: [PATCH] add hwrng for rk3568
|
|||||||
+...
|
+...
|
||||||
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||||
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||||
@@ -1807,6 +1807,16 @@
|
@@ -1808,6 +1808,16 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -3618,7 +3618,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-2-dakr@
|
|||||||
op->va.addr,
|
op->va.addr,
|
||||||
op->va.range);
|
op->va.range);
|
||||||
if (IS_ERR(op->ops)) {
|
if (IS_ERR(op->ops)) {
|
||||||
@@ -1836,11 +1836,11 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1838,11 +1838,11 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
uvmm->kernel_managed_addr = kernel_managed_addr;
|
uvmm->kernel_managed_addr = kernel_managed_addr;
|
||||||
uvmm->kernel_managed_size = kernel_managed_size;
|
uvmm->kernel_managed_size = kernel_managed_size;
|
||||||
|
|
||||||
@ -3635,7 +3635,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-2-dakr@
|
|||||||
|
|
||||||
ret = nvif_vmm_ctor(&cli->mmu, "uvmm",
|
ret = nvif_vmm_ctor(&cli->mmu, "uvmm",
|
||||||
cli->vmm.vmm.object.oclass, RAW,
|
cli->vmm.vmm.object.oclass, RAW,
|
||||||
@@ -1855,7 +1855,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1857,7 +1857,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
out_free_gpuva_mgr:
|
out_free_gpuva_mgr:
|
||||||
@ -3644,7 +3644,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-2-dakr@
|
|||||||
out_unlock:
|
out_unlock:
|
||||||
mutex_unlock(&cli->mutex);
|
mutex_unlock(&cli->mutex);
|
||||||
return ret;
|
return ret;
|
||||||
@@ -1877,7 +1877,7 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1879,7 +1879,7 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
wait_event(entity->job.wq, list_empty(&entity->job.list.head));
|
wait_event(entity->job.wq, list_empty(&entity->job.list.head));
|
||||||
|
|
||||||
nouveau_uvmm_lock(uvmm);
|
nouveau_uvmm_lock(uvmm);
|
||||||
@ -3653,7 +3653,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-2-dakr@
|
|||||||
struct nouveau_uvma *uvma = uvma_from_va(va);
|
struct nouveau_uvma *uvma = uvma_from_va(va);
|
||||||
struct drm_gem_object *obj = va->gem.obj;
|
struct drm_gem_object *obj = va->gem.obj;
|
||||||
|
|
||||||
@@ -1910,7 +1910,7 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1912,7 +1912,7 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
|
|
||||||
mutex_lock(&cli->mutex);
|
mutex_lock(&cli->mutex);
|
||||||
nouveau_vmm_fini(&uvmm->vmm);
|
nouveau_vmm_fini(&uvmm->vmm);
|
||||||
|
@ -122,7 +122,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-4-dakr@
|
|||||||
op->ops = NULL;
|
op->ops = NULL;
|
||||||
goto unwind_continue;
|
goto unwind_continue;
|
||||||
}
|
}
|
||||||
@@ -1404,7 +1404,7 @@ unwind:
|
@@ -1406,7 +1406,7 @@ unwind:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -131,7 +131,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-4-dakr@
|
|||||||
op->ops = NULL;
|
op->ops = NULL;
|
||||||
op->reg = NULL;
|
op->reg = NULL;
|
||||||
}
|
}
|
||||||
@@ -1509,7 +1509,7 @@ nouveau_uvmm_bind_job_free_work_fn(struc
|
@@ -1511,7 +1511,7 @@ nouveau_uvmm_bind_job_free_work_fn(struc
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!IS_ERR_OR_NULL(op->ops))
|
if (!IS_ERR_OR_NULL(op->ops))
|
||||||
@ -140,7 +140,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-4-dakr@
|
|||||||
|
|
||||||
if (obj)
|
if (obj)
|
||||||
drm_gem_object_put(obj);
|
drm_gem_object_put(obj);
|
||||||
@@ -1836,7 +1836,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1838,7 +1838,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
uvmm->kernel_managed_addr = kernel_managed_addr;
|
uvmm->kernel_managed_addr = kernel_managed_addr;
|
||||||
uvmm->kernel_managed_size = kernel_managed_size;
|
uvmm->kernel_managed_size = kernel_managed_size;
|
||||||
|
|
||||||
@ -149,7 +149,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-4-dakr@
|
|||||||
NOUVEAU_VA_SPACE_START,
|
NOUVEAU_VA_SPACE_START,
|
||||||
NOUVEAU_VA_SPACE_END,
|
NOUVEAU_VA_SPACE_END,
|
||||||
kernel_managed_addr, kernel_managed_size,
|
kernel_managed_addr, kernel_managed_size,
|
||||||
@@ -1855,7 +1855,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1857,7 +1857,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
out_free_gpuva_mgr:
|
out_free_gpuva_mgr:
|
||||||
@ -158,7 +158,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-4-dakr@
|
|||||||
out_unlock:
|
out_unlock:
|
||||||
mutex_unlock(&cli->mutex);
|
mutex_unlock(&cli->mutex);
|
||||||
return ret;
|
return ret;
|
||||||
@@ -1877,11 +1877,11 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1879,11 +1879,11 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
wait_event(entity->job.wq, list_empty(&entity->job.list.head));
|
wait_event(entity->job.wq, list_empty(&entity->job.list.head));
|
||||||
|
|
||||||
nouveau_uvmm_lock(uvmm);
|
nouveau_uvmm_lock(uvmm);
|
||||||
@ -172,7 +172,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20230920144343.64830-4-dakr@
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
drm_gpuva_remove(va);
|
drm_gpuva_remove(va);
|
||||||
@@ -1910,7 +1910,7 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1912,7 +1912,7 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
|
|
||||||
mutex_lock(&cli->mutex);
|
mutex_lock(&cli->mutex);
|
||||||
nouveau_vmm_fini(&uvmm->vmm);
|
nouveau_vmm_fini(&uvmm->vmm);
|
||||||
|
@ -116,7 +116,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-2-dakr@
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
@@ -1808,6 +1808,7 @@ int
|
@@ -1810,6 +1810,7 @@ int
|
||||||
nouveau_uvmm_init(struct nouveau_uvmm *uvmm, struct nouveau_cli *cli,
|
nouveau_uvmm_init(struct nouveau_uvmm *uvmm, struct nouveau_cli *cli,
|
||||||
u64 kernel_managed_addr, u64 kernel_managed_size)
|
u64 kernel_managed_addr, u64 kernel_managed_size)
|
||||||
{
|
{
|
||||||
@ -124,7 +124,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-2-dakr@
|
|||||||
int ret;
|
int ret;
|
||||||
u64 kernel_managed_end = kernel_managed_addr + kernel_managed_size;
|
u64 kernel_managed_end = kernel_managed_addr + kernel_managed_size;
|
||||||
|
|
||||||
@@ -1836,7 +1837,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1838,7 +1839,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
uvmm->kernel_managed_addr = kernel_managed_addr;
|
uvmm->kernel_managed_addr = kernel_managed_addr;
|
||||||
uvmm->kernel_managed_size = kernel_managed_size;
|
uvmm->kernel_managed_size = kernel_managed_size;
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-5-dakr@
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@@ -1834,9 +1822,6 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1836,9 +1824,6 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -118,7 +118,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-6-dakr@
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
@@ -1797,8 +1797,9 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1799,8 +1799,9 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
u64 kernel_managed_addr, u64 kernel_managed_size)
|
u64 kernel_managed_addr, u64 kernel_managed_size)
|
||||||
{
|
{
|
||||||
struct drm_device *drm = cli->drm->dev;
|
struct drm_device *drm = cli->drm->dev;
|
||||||
@ -129,7 +129,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-6-dakr@
|
|||||||
|
|
||||||
mutex_init(&uvmm->mutex);
|
mutex_init(&uvmm->mutex);
|
||||||
dma_resv_init(&uvmm->resv);
|
dma_resv_init(&uvmm->resv);
|
||||||
@@ -1822,11 +1823,19 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1824,11 +1825,19 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -96,7 +96,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-7-dakr@
|
|||||||
}
|
}
|
||||||
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
@@ -1802,7 +1802,6 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1804,7 +1804,6 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
mutex_init(&uvmm->mutex);
|
mutex_init(&uvmm->mutex);
|
||||||
@ -104,7 +104,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-7-dakr@
|
|||||||
mt_init_flags(&uvmm->region_mt, MT_FLAGS_LOCK_EXTERN);
|
mt_init_flags(&uvmm->region_mt, MT_FLAGS_LOCK_EXTERN);
|
||||||
mt_set_external_lock(&uvmm->region_mt, &uvmm->mutex);
|
mt_set_external_lock(&uvmm->region_mt, &uvmm->mutex);
|
||||||
|
|
||||||
@@ -1842,14 +1841,14 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1844,14 +1843,14 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
kernel_managed_addr, kernel_managed_size,
|
kernel_managed_addr, kernel_managed_size,
|
||||||
NULL, 0, &cli->uvmm.vmm.vmm);
|
NULL, 0, &cli->uvmm.vmm.vmm);
|
||||||
if (ret)
|
if (ret)
|
||||||
@ -121,7 +121,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-7-dakr@
|
|||||||
drm_gpuvm_destroy(&uvmm->base);
|
drm_gpuvm_destroy(&uvmm->base);
|
||||||
out_unlock:
|
out_unlock:
|
||||||
mutex_unlock(&cli->mutex);
|
mutex_unlock(&cli->mutex);
|
||||||
@@ -1907,6 +1906,4 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1909,6 +1908,4 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
nouveau_vmm_fini(&uvmm->vmm);
|
nouveau_vmm_fini(&uvmm->vmm);
|
||||||
drm_gpuvm_destroy(&uvmm->base);
|
drm_gpuvm_destroy(&uvmm->base);
|
||||||
mutex_unlock(&cli->mutex);
|
mutex_unlock(&cli->mutex);
|
||||||
|
@ -48,7 +48,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-8-dakr@
|
|||||||
gpuvm->r_obj = r_obj;
|
gpuvm->r_obj = r_obj;
|
||||||
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
@@ -1828,7 +1828,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1830,7 +1830,7 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-9-dakr@
|
|||||||
static inline struct nouveau_uvmm *
|
static inline struct nouveau_uvmm *
|
||||||
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
@@ -1636,18 +1636,6 @@ err_free:
|
@@ -1638,18 +1638,6 @@ err_free:
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -87,7 +87,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-9-dakr@
|
|||||||
static int
|
static int
|
||||||
nouveau_uvmm_vm_bind(struct nouveau_uvmm_bind_job_args *args)
|
nouveau_uvmm_vm_bind(struct nouveau_uvmm_bind_job_args *args)
|
||||||
{
|
{
|
||||||
@@ -1793,17 +1781,25 @@ nouveau_uvmm_bo_unmap_all(struct nouveau
|
@@ -1795,17 +1783,25 @@ nouveau_uvmm_bo_unmap_all(struct nouveau
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
@ -119,7 +119,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-9-dakr@
|
|||||||
|
|
||||||
mutex_lock(&cli->mutex);
|
mutex_lock(&cli->mutex);
|
||||||
|
|
||||||
@@ -1812,44 +1808,49 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
@@ -1814,44 +1810,49 @@ nouveau_uvmm_init(struct nouveau_uvmm *u
|
||||||
goto out_unlock;
|
goto out_unlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -180,7 +180,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-9-dakr@
|
|||||||
out_unlock:
|
out_unlock:
|
||||||
mutex_unlock(&cli->mutex);
|
mutex_unlock(&cli->mutex);
|
||||||
return ret;
|
return ret;
|
||||||
@@ -1864,9 +1865,6 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1866,9 +1867,6 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
struct nouveau_sched_entity *entity = &cli->sched_entity;
|
struct nouveau_sched_entity *entity = &cli->sched_entity;
|
||||||
struct drm_gpuva *va, *next;
|
struct drm_gpuva *va, *next;
|
||||||
|
|
||||||
@ -190,7 +190,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-9-dakr@
|
|||||||
rmb(); /* for list_empty to work without lock */
|
rmb(); /* for list_empty to work without lock */
|
||||||
wait_event(entity->job.wq, list_empty(&entity->job.list.head));
|
wait_event(entity->job.wq, list_empty(&entity->job.list.head));
|
||||||
|
|
||||||
@@ -1905,5 +1903,6 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1907,5 +1905,6 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
mutex_lock(&cli->mutex);
|
mutex_lock(&cli->mutex);
|
||||||
nouveau_vmm_fini(&uvmm->vmm);
|
nouveau_vmm_fini(&uvmm->vmm);
|
||||||
drm_gpuvm_destroy(&uvmm->base);
|
drm_gpuvm_destroy(&uvmm->base);
|
||||||
|
@ -118,7 +118,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-10-dakr
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
--- a/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
+++ b/drivers/gpu/drm/nouveau/nouveau_uvmm.c
|
||||||
@@ -1780,6 +1780,18 @@ nouveau_uvmm_bo_unmap_all(struct nouveau
|
@@ -1782,6 +1782,18 @@ nouveau_uvmm_bo_unmap_all(struct nouveau
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -137,7 +137,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-10-dakr
|
|||||||
int
|
int
|
||||||
nouveau_uvmm_ioctl_vm_init(struct drm_device *dev,
|
nouveau_uvmm_ioctl_vm_init(struct drm_device *dev,
|
||||||
void *data,
|
void *data,
|
||||||
@@ -1830,7 +1842,7 @@ nouveau_uvmm_ioctl_vm_init(struct drm_de
|
@@ -1832,7 +1844,7 @@ nouveau_uvmm_ioctl_vm_init(struct drm_de
|
||||||
NOUVEAU_VA_SPACE_END,
|
NOUVEAU_VA_SPACE_END,
|
||||||
init->kernel_managed_addr,
|
init->kernel_managed_addr,
|
||||||
init->kernel_managed_size,
|
init->kernel_managed_size,
|
||||||
@ -146,7 +146,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-10-dakr
|
|||||||
/* GPUVM takes care from here on. */
|
/* GPUVM takes care from here on. */
|
||||||
drm_gem_object_put(r_obj);
|
drm_gem_object_put(r_obj);
|
||||||
|
|
||||||
@@ -1849,8 +1861,7 @@ nouveau_uvmm_ioctl_vm_init(struct drm_de
|
@@ -1851,8 +1863,7 @@ nouveau_uvmm_ioctl_vm_init(struct drm_de
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
out_gpuvm_fini:
|
out_gpuvm_fini:
|
||||||
@ -156,7 +156,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-10-dakr
|
|||||||
out_unlock:
|
out_unlock:
|
||||||
mutex_unlock(&cli->mutex);
|
mutex_unlock(&cli->mutex);
|
||||||
return ret;
|
return ret;
|
||||||
@@ -1902,7 +1913,6 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
@@ -1904,7 +1915,6 @@ nouveau_uvmm_fini(struct nouveau_uvmm *u
|
||||||
|
|
||||||
mutex_lock(&cli->mutex);
|
mutex_lock(&cli->mutex);
|
||||||
nouveau_vmm_fini(&uvmm->vmm);
|
nouveau_vmm_fini(&uvmm->vmm);
|
||||||
|
@ -645,7 +645,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-11-dakr
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = bind_validate_op(job, op);
|
ret = bind_validate_op(job, op);
|
||||||
@@ -1352,7 +1367,7 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
@@ -1354,7 +1369,7 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
||||||
case OP_UNMAP_SPARSE:
|
case OP_UNMAP_SPARSE:
|
||||||
case OP_MAP:
|
case OP_MAP:
|
||||||
case OP_UNMAP:
|
case OP_UNMAP:
|
||||||
@ -654,7 +654,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-11-dakr
|
|||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@@ -1499,6 +1514,12 @@ nouveau_uvmm_bind_job_free_work_fn(struc
|
@@ -1501,6 +1516,12 @@ nouveau_uvmm_bind_job_free_work_fn(struc
|
||||||
if (!IS_ERR_OR_NULL(op->ops))
|
if (!IS_ERR_OR_NULL(op->ops))
|
||||||
drm_gpuva_ops_free(&uvmm->base, op->ops);
|
drm_gpuva_ops_free(&uvmm->base, op->ops);
|
||||||
|
|
||||||
@ -667,7 +667,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-11-dakr
|
|||||||
if (obj)
|
if (obj)
|
||||||
drm_gem_object_put(obj);
|
drm_gem_object_put(obj);
|
||||||
}
|
}
|
||||||
@@ -1752,15 +1773,18 @@ void
|
@@ -1754,15 +1775,18 @@ void
|
||||||
nouveau_uvmm_bo_map_all(struct nouveau_bo *nvbo, struct nouveau_mem *mem)
|
nouveau_uvmm_bo_map_all(struct nouveau_bo *nvbo, struct nouveau_mem *mem)
|
||||||
{
|
{
|
||||||
struct drm_gem_object *obj = &nvbo->bo.base;
|
struct drm_gem_object *obj = &nvbo->bo.base;
|
||||||
@ -690,7 +690,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231108001259.15123-11-dakr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1768,15 +1792,18 @@ void
|
@@ -1770,15 +1794,18 @@ void
|
||||||
nouveau_uvmm_bo_unmap_all(struct nouveau_bo *nvbo)
|
nouveau_uvmm_bo_unmap_all(struct nouveau_bo *nvbo)
|
||||||
{
|
{
|
||||||
struct drm_gem_object *obj = &nvbo->bo.base;
|
struct drm_gem_object *obj = &nvbo->bo.base;
|
||||||
|
@ -257,15 +257,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case DRM_GPUVA_OP_UNMAP:
|
case DRM_GPUVA_OP_UNMAP:
|
||||||
@@ -634,6 +636,7 @@ nouveau_uvmm_sm_prepare(struct nouveau_u
|
@@ -1135,12 +1137,53 @@ bind_link_gpuvas(struct bind_job_op *bop
|
||||||
goto unwind;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
+
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case DRM_GPUVA_OP_REMAP: {
|
|
||||||
@@ -1135,12 +1138,53 @@ bind_link_gpuvas(struct bind_job_op *bop
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -321,7 +313,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
struct bind_job_op *op;
|
struct bind_job_op *op;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
@@ -1157,6 +1201,8 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
@@ -1157,6 +1200,8 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
||||||
dma_resv_unlock(obj->resv);
|
dma_resv_unlock(obj->resv);
|
||||||
if (IS_ERR(op->vm_bo))
|
if (IS_ERR(op->vm_bo))
|
||||||
return PTR_ERR(op->vm_bo);
|
return PTR_ERR(op->vm_bo);
|
||||||
@ -330,7 +322,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = bind_validate_op(job, op);
|
ret = bind_validate_op(job, op);
|
||||||
@@ -1179,6 +1225,7 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
@@ -1179,6 +1224,7 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
||||||
* unwind all GPU VA space changes on failure.
|
* unwind all GPU VA space changes on failure.
|
||||||
*/
|
*/
|
||||||
nouveau_uvmm_lock(uvmm);
|
nouveau_uvmm_lock(uvmm);
|
||||||
@ -338,7 +330,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
list_for_each_op(op, &bind_job->ops) {
|
list_for_each_op(op, &bind_job->ops) {
|
||||||
switch (op->op) {
|
switch (op->op) {
|
||||||
case OP_MAP_SPARSE:
|
case OP_MAP_SPARSE:
|
||||||
@@ -1290,55 +1337,13 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
@@ -1290,57 +1336,13 @@ nouveau_uvmm_bind_job_submit(struct nouv
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -376,6 +368,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
-
|
-
|
||||||
- drm_gpuva_for_each_op(va_op, op->ops) {
|
- drm_gpuva_for_each_op(va_op, op->ops) {
|
||||||
- struct drm_gem_object *obj = op_gem_obj(va_op);
|
- struct drm_gem_object *obj = op_gem_obj(va_op);
|
||||||
|
- struct nouveau_bo *nvbo;
|
||||||
-
|
-
|
||||||
- if (unlikely(!obj))
|
- if (unlikely(!obj))
|
||||||
- continue;
|
- continue;
|
||||||
@ -386,8 +379,9 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
- if (unlikely(va_op->op == DRM_GPUVA_OP_UNMAP))
|
- if (unlikely(va_op->op == DRM_GPUVA_OP_UNMAP))
|
||||||
- continue;
|
- continue;
|
||||||
-
|
-
|
||||||
- ret = nouveau_bo_validate(nouveau_gem_object(obj),
|
- nvbo = nouveau_gem_object(obj);
|
||||||
- true, false);
|
- nouveau_bo_placement_set(nvbo, nvbo->valid_domains, 0);
|
||||||
|
- ret = nouveau_bo_validate(nvbo, true, false);
|
||||||
- if (ret) {
|
- if (ret) {
|
||||||
- op = list_last_op(&bind_job->ops);
|
- op = list_last_op(&bind_job->ops);
|
||||||
- goto unwind;
|
- goto unwind;
|
||||||
@ -400,7 +394,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1413,21 +1418,17 @@ unwind:
|
@@ -1415,21 +1417,17 @@ unwind:
|
||||||
}
|
}
|
||||||
|
|
||||||
nouveau_uvmm_unlock(uvmm);
|
nouveau_uvmm_unlock(uvmm);
|
||||||
@ -428,7 +422,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20231113221202.7203-1-dakr@r
|
|||||||
}
|
}
|
||||||
|
|
||||||
static struct dma_fence *
|
static struct dma_fence *
|
||||||
@@ -1815,8 +1816,17 @@ nouveau_uvmm_free(struct drm_gpuvm *gpuv
|
@@ -1817,8 +1815,17 @@ nouveau_uvmm_free(struct drm_gpuvm *gpuv
|
||||||
kfree(uvmm);
|
kfree(uvmm);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -63,7 +63,7 @@ Link: https://lore.kernel.org/r/20231023032251.164775-1-luben.tuikov@amd.com
|
|||||||
ring->sched_score, ring->name,
|
ring->sched_score, ring->name,
|
||||||
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
|
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
|
||||||
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
|
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_job.c
|
||||||
@@ -328,8 +328,8 @@ void amdgpu_job_stop_all_jobs_on_sched(s
|
@@ -327,8 +327,8 @@ void amdgpu_job_stop_all_jobs_on_sched(s
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
/* Signal all jobs not yet scheduled */
|
/* Signal all jobs not yet scheduled */
|
||||||
@ -76,7 +76,7 @@ Link: https://lore.kernel.org/r/20231023032251.164775-1-luben.tuikov@amd.com
|
|||||||
while ((s_job = to_drm_sched_job(spsc_queue_pop(&s_entity->job_queue)))) {
|
while ((s_job = to_drm_sched_job(spsc_queue_pop(&s_entity->job_queue)))) {
|
||||||
--- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
--- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
||||||
+++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
+++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
||||||
@@ -135,6 +135,7 @@ int etnaviv_sched_init(struct etnaviv_gp
|
@@ -134,6 +134,7 @@ int etnaviv_sched_init(struct etnaviv_gp
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops,
|
ret = drm_sched_init(&gpu->sched, &etnaviv_sched_ops,
|
||||||
|
@ -92,7 +92,7 @@ Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
|
|||||||
|
|
||||||
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
|
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
|
||||||
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
|
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
|
||||||
@@ -4613,7 +4613,7 @@ bool amdgpu_device_has_job_running(struc
|
@@ -4614,7 +4614,7 @@ bool amdgpu_device_has_job_running(struc
|
||||||
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
||||||
struct amdgpu_ring *ring = adev->rings[i];
|
struct amdgpu_ring *ring = adev->rings[i];
|
||||||
|
|
||||||
@ -101,7 +101,7 @@ Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
spin_lock(&ring->sched.job_list_lock);
|
spin_lock(&ring->sched.job_list_lock);
|
||||||
@@ -4755,7 +4755,7 @@ int amdgpu_device_pre_asic_reset(struct
|
@@ -4756,7 +4756,7 @@ int amdgpu_device_pre_asic_reset(struct
|
||||||
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
||||||
struct amdgpu_ring *ring = adev->rings[i];
|
struct amdgpu_ring *ring = adev->rings[i];
|
||||||
|
|
||||||
@ -110,7 +110,7 @@ Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
/* Clear job fence from fence drv to avoid force_completion
|
/* Clear job fence from fence drv to avoid force_completion
|
||||||
@@ -5295,7 +5295,7 @@ int amdgpu_device_gpu_recover(struct amd
|
@@ -5296,7 +5296,7 @@ int amdgpu_device_gpu_recover(struct amd
|
||||||
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
||||||
struct amdgpu_ring *ring = tmp_adev->rings[i];
|
struct amdgpu_ring *ring = tmp_adev->rings[i];
|
||||||
|
|
||||||
@ -119,7 +119,7 @@ Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
drm_sched_stop(&ring->sched, job ? &job->base : NULL);
|
drm_sched_stop(&ring->sched, job ? &job->base : NULL);
|
||||||
@@ -5370,7 +5370,7 @@ skip_hw_reset:
|
@@ -5371,7 +5371,7 @@ skip_hw_reset:
|
||||||
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
||||||
struct amdgpu_ring *ring = tmp_adev->rings[i];
|
struct amdgpu_ring *ring = tmp_adev->rings[i];
|
||||||
|
|
||||||
@ -128,7 +128,7 @@ Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
drm_sched_start(&ring->sched, true);
|
drm_sched_start(&ring->sched, true);
|
||||||
@@ -5696,7 +5696,7 @@ pci_ers_result_t amdgpu_pci_error_detect
|
@@ -5697,7 +5697,7 @@ pci_ers_result_t amdgpu_pci_error_detect
|
||||||
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
||||||
struct amdgpu_ring *ring = adev->rings[i];
|
struct amdgpu_ring *ring = adev->rings[i];
|
||||||
|
|
||||||
@ -137,7 +137,7 @@ Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
drm_sched_stop(&ring->sched, NULL);
|
drm_sched_stop(&ring->sched, NULL);
|
||||||
@@ -5824,7 +5824,7 @@ void amdgpu_pci_resume(struct pci_dev *p
|
@@ -5825,7 +5825,7 @@ void amdgpu_pci_resume(struct pci_dev *p
|
||||||
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
for (i = 0; i < AMDGPU_MAX_RINGS; ++i) {
|
||||||
struct amdgpu_ring *ring = adev->rings[i];
|
struct amdgpu_ring *ring = adev->rings[i];
|
||||||
|
|
||||||
|
@ -75,7 +75,7 @@ Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
|
|||||||
timeout, adev->reset_domain->wq,
|
timeout, adev->reset_domain->wq,
|
||||||
--- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
--- a/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
||||||
+++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
+++ b/drivers/gpu/drm/etnaviv/etnaviv_sched.c
|
||||||
@@ -134,7 +134,7 @@ int etnaviv_sched_init(struct etnaviv_gp
|
@@ -133,7 +133,7 @@ int etnaviv_sched_init(struct etnaviv_gp
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- a/arch/arm64/Kconfig
|
--- a/arch/arm64/Kconfig
|
||||||
+++ b/arch/arm64/Kconfig
|
+++ b/arch/arm64/Kconfig
|
||||||
@@ -1247,6 +1247,14 @@ config SOCIONEXT_SYNQUACER_PREITS
|
@@ -1285,6 +1285,14 @@ config SOCIONEXT_SYNQUACER_PREITS
|
||||||
|
|
||||||
If unsure, say Y.
|
If unsure, say Y.
|
||||||
|
|
||||||
@ -83,7 +83,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
usb_host0_ehci: usb@fd800000 {
|
usb_host0_ehci: usb@fd800000 {
|
||||||
@@ -991,7 +998,7 @@
|
@@ -992,7 +999,7 @@
|
||||||
num-ib-windows = <6>;
|
num-ib-windows = <6>;
|
||||||
num-ob-windows = <2>;
|
num-ob-windows = <2>;
|
||||||
max-link-speed = <2>;
|
max-link-speed = <2>;
|
||||||
|
@ -13,7 +13,7 @@ Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
|
|||||||
|
|
||||||
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||||
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
|
||||||
@@ -969,6 +969,13 @@
|
@@ -970,6 +970,13 @@
|
||||||
reg = <0x0 0xfe1a8100 0x0 0x20>;
|
reg = <0x0 0xfe1a8100 0x0 0x20>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user