From: Ben Skeggs Date: Tue, 14 Jan 2020 20:34:21 +0000 (+1000) Subject: drm/nouveau/flcn: fetch PRI address from TOP if not provided by constructor X-Git-Tag: v5.6-rc1~114^2~8^2~67 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=de048192130db2c02e3f16d49ed4cc1f20e6ba90;p=thirdparty%2Flinux.git drm/nouveau/flcn: fetch PRI address from TOP if not provided by constructor Shortcut to avoid each subdev having to do this itself. Signed-off-by: Ben Skeggs --- diff --git a/drivers/gpu/drm/nouveau/nvkm/falcon/base.c b/drivers/gpu/drm/nouveau/nvkm/falcon/base.c index 3ed421058b082..8f4c3aca2233c 100644 --- a/drivers/gpu/drm/nouveau/nvkm/falcon/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/falcon/base.c @@ -22,6 +22,7 @@ #include "priv.h" #include +#include void nvkm_falcon_load_imem(struct nvkm_falcon *falcon, void *data, u32 start, @@ -141,6 +142,12 @@ nvkm_falcon_oneinit(struct nvkm_falcon *falcon) u32 debug_reg; u32 reg; + if (!falcon->addr) { + falcon->addr = nvkm_top_addr(subdev->device, subdev->index); + if (WARN_ON(!falcon->addr)) + return -ENODEV; + } + reg = nvkm_falcon_rd32(falcon, 0x12c); falcon->version = reg & 0xf; falcon->secret = (reg >> 4) & 0x3;