From: Ben Skeggs Date: Fri, 19 May 2017 13:59:35 +0000 (+1000) Subject: drm/nouveau/disp/gm200-: allow non-identity mapping of SOR <-> macro links X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=2863204c6208f8aabeeec163b9d9e827a3da0858;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git drm/nouveau/disp/gm200-: allow non-identity mapping of SOR <-> macro links Finally, everything should be in place to handle this. Signed-off-by: Ben Skeggs --- diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.c b/drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.c index ef201f1597c7..85aff85394ac 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.c @@ -137,7 +137,7 @@ nvkm_outp_acquire(struct nvkm_outp *outp, u8 user) /* Failing that, a completely unused OR is the next best thing. */ list_for_each_entry(ior, &outp->disp->ior, head) { if (!ior->asy.outp && ior->type == type && !ior->arm.outp && - ior->id == __ffs(outp->info.or)) + (ior->func->route.set || ior->id == __ffs(outp->info.or))) return nvkm_outp_acquire_ior(outp, user, ior); } @@ -146,7 +146,7 @@ nvkm_outp_acquire(struct nvkm_outp *outp, u8 user) */ list_for_each_entry(ior, &outp->disp->ior, head) { if (!ior->asy.outp && ior->type == type && - ior->id == __ffs(outp->info.or)) + (ior->func->route.set || ior->id == __ffs(outp->info.or))) return nvkm_outp_acquire_ior(outp, user, ior); }