[RFC 8/8] drm/nouveau: introduce the scrubber on Ada in a kernel doc
Zhi Wang
zhiw at nvidia.com
Fri Nov 22 12:57:12 UTC 2024
Introduce a kernel doc to explain the scrubber on Ada.
Cc: Milos Tijanic <mtijanic at nvidia.com>
Signed-off-by: Zhi Wang <zhiw at nvidia.com>
---
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ad102.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ad102.c b/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ad102.c
index 80d6d73fe352..327e733e3e8b 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ad102.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ad102.c
@@ -24,6 +24,20 @@
#include <engine/sec2.h>
#include "priv.h"
+/*
+ * DOC: Pre-scrubbed FB memory on Ada
+ *
+ * https://github.com/NVIDIA/open-gpu-kernel-modules/blob/565.57.01/src/nvidia/src/kernel/gpu/gsp/kernel_gsp.c#L3151
+ *
+ * The size of the pre-scrubbed FB memory on Ada is 256MB. When allocating
+ * a GSP WPR2 heap larger than 256MB, the scrubber ucode image is required
+ * to be exeucted before executing any other ucode images. Or, GSP
+ * firmware hangs when booting.
+ *
+ * The large GSP WPR2 heap is required especially by vGPU when supporting
+ * max vGPU count. The required size on Ada is at least 549MB.
+ */
+
static bool is_scrubber_completed(struct nvkm_gsp *gsp)
{
return ((nvkm_rd32(gsp->subdev.device, 0x001180fc) >> 29) >= 0x3);
--
2.34.1
More information about the Nouveau
mailing list