search for: nvkm_gsp_mem_dtor

Displaying 13 results from an estimated 13 matches for "nvkm_gsp_mem_dtor".

2024 Jun 12
2
[PATCH 1/2] [v2] drm/nouveau: retain device pointer in nvkm_gsp_mem object
Store the struct device pointer used to allocate the DMA buffer in the nvkm_gsp_mem object. This allows nvkm_gsp_mem_dtor() to release the buffer without needing the nvkm_gsp. This is needed so that we can retain DMA buffers even after the nvkm_gsp object is deleted. Signed-off-by: Timur Tabi <ttabi at nvidia.com> --- v2: rebased to drm-misc-next .../gpu/drm/nouveau/include/nvkm/subdev/gsp.h | 1 + .../gpu/...
2024 Jul 29
2
[PATCH 1/2] [v2] drm/nouveau: retain device pointer in nvkm_gsp_mem object
Store the struct device pointer used to allocate the DMA buffer in the nvkm_gsp_mem object. This allows nvkm_gsp_mem_dtor() to release the buffer without needing the nvkm_gsp. This is needed so that we can retain DMA buffers even after the nvkm_gsp object is deleted. Signed-off-by: Timur Tabi <ttabi at nvidia.com> v2: added get/put_device calls --- .../gpu/drm/nouveau/include/nvkm/subdev/gsp.h | 1 + .../gp...
2024 Aug 02
1
[PATCH 1/2] [v2] drm/nouveau: retain device pointer in nvkm_gsp_mem object
Store the struct device pointer used to allocate the DMA buffer in the nvkm_gsp_mem object. This allows nvkm_gsp_mem_dtor() to release the buffer without needing the nvkm_gsp. This is needed so that we can retain DMA buffers even after the nvkm_gsp object is deleted. Signed-off-by: Timur Tabi <ttabi at nvidia.com> --- Notes: v2: added get/put_device calls .../gpu/drm/nouveau/include/nvkm/subdev/gsp....
2024 Sep 10
1
[PATCH 1/2] [v2] drm/nouveau: retain device pointer in nvkm_gsp_mem object
Store the struct device pointer used to allocate the DMA buffer in the nvkm_gsp_mem object. This allows nvkm_gsp_mem_dtor() to release the buffer without needing the nvkm_gsp. This is needed so that we can retain DMA buffers even after the nvkm_gsp object is deleted. Signed-off-by: Timur Tabi <ttabi at nvidia.com> --- .../gpu/drm/nouveau/include/nvkm/subdev/gsp.h | 1 + .../gpu/drm/nouveau/nvkm/subdev/gsp/r5...
2024 Mar 03
0
[PATCH] drm/nouveau: keep DMA buffers required for suspend/resume
...ndex a64c81385..a73a5b589 100644 > --- a/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c > +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c > @@ -1054,8 +1054,6 @@ r535_gsp_postinit(struct nvkm_gsp *gsp) > /* Release the DMA buffers that were needed only for boot and init */ > nvkm_gsp_mem_dtor(gsp, &gsp->boot.fw); > nvkm_gsp_mem_dtor(gsp, &gsp->libos); > - nvkm_gsp_mem_dtor(gsp, &gsp->rmargs); > - nvkm_gsp_mem_dtor(gsp, &gsp->wpr_meta); > > return ret; > } > @@ -2163,6 +2161,8 @@ r535_gsp_dtor(struct nvkm_gsp *gsp) > > r53...
2024 Jul 29
1
[PATCH 2/2] [v6] drm/nouveau: expose GSP-RM logging buffers via debugfs
...libos_debugfs_fini(struct nvkm_gsp __maybe_unused *gsp) +{ +#ifdef CONFIG_DEBUG_FS + r535_gsp_retain_logging(gsp); + + kfree(gsp->blob_pmu.data); + gsp->blob_pmu.data = NULL; +#endif +} + void r535_gsp_dtor(struct nvkm_gsp *gsp) { @@ -2528,6 +2925,9 @@ r535_gsp_dtor(struct nvkm_gsp *gsp) nvkm_gsp_mem_dtor(&gsp->rmargs); nvkm_gsp_mem_dtor(&gsp->wpr_meta); nvkm_gsp_mem_dtor(&gsp->shm.mem); + + r535_gsp_libos_debugfs_fini(gsp); + nvkm_gsp_mem_dtor(&gsp->loginit); nvkm_gsp_mem_dtor(&gsp->logintr); nvkm_gsp_mem_dtor(&gsp->logrm); -- 2.34.1
2024 Jun 18
1
[PATCH 2/2] [v5] drm/nouveau: expose GSP-RM logging buffers via debugfs
...a value of 2 is an offset of 8, etc. I'll update the docs. + * GSP-RM is shut down, that means that it was never written do, so it "written to" Fixed, thanks. void r535_gsp_dtor(struct nvkm_gsp *gsp) { @@ -2514,6 +2864,14 @@ r535_gsp_dtor(struct nvkm_gsp *gsp) nvkm_gsp_mem_dtor(&gsp->rmargs); nvkm_gsp_mem_dtor(&gsp->wpr_meta); nvkm_gsp_mem_dtor(&gsp->shm.mem); + +#ifdef CONFIG_DEBUG_FS + r535_gsp_retain_logging(gsp); + + kfree(gsp->blob_pmu.data); + gsp->blob_pmu.data = NULL; Please move this to r535_g...
2024 Oct 30
1
[PATCH 2/2] [v9] drm/nouveau: expose GSP-RM logging buffers via debugfs
...her buffers, the PMU blob is a kmalloc'd buffer that + * exists only if the debugfs entries were created. + */ + kfree(gsp->blob_pmu.data); + gsp->blob_pmu.data = NULL; +#endif +} + void r535_gsp_dtor(struct nvkm_gsp *gsp) { @@ -2528,6 +2967,9 @@ r535_gsp_dtor(struct nvkm_gsp *gsp) nvkm_gsp_mem_dtor(&gsp->rmargs); nvkm_gsp_mem_dtor(&gsp->wpr_meta); nvkm_gsp_mem_dtor(&gsp->shm.mem); + + r535_gsp_libos_debugfs_fini(gsp); + nvkm_gsp_mem_dtor(&gsp->loginit); nvkm_gsp_mem_dtor(&gsp->logintr); nvkm_gsp_mem_dtor(&gsp->logrm); -- 2.34.1
2024 Jul 29
1
[PATCH 1/2] [v2] drm/nouveau: retain device pointer in nvkm_gsp_mem object
On Mon, 2024-07-29 at 18:07 -0500, Timur Tabi wrote: Store the struct device pointer used to allocate the DMA buffer in the nvkm_gsp_mem object. This allows nvkm_gsp_mem_dtor() to release the buffer without needing the nvkm_gsp. This is needed so that we can retain DMA buffers even after the nvkm_gsp object is deleted. Signed-off-by: Timur Tabi <ttabi at nvidia.com<mailto:ttabi at nvidia.com>> v2: added get/put_device calls Ugh, I forgot to move thi...
2024 Apr 26
3
[PATCH 1/2] drm/nouveau/firmware: Fix SG_DEBUG error with nvkm_firmware_ctor()
Currently, enabling SG_DEBUG in the kernel will cause nouveau to hit a BUG() on startup: kernel BUG at include/linux/scatterlist.h:187! invalid opcode: 0000 [#1] PREEMPT SMP NOPTI CPU: 7 PID: 930 Comm: (udev-worker) Not tainted 6.9.0-rc3Lyude-Test+ #30 Hardware name: MSI MS-7A39/A320M GAMING PRO (MS-7A39), BIOS 1.I0 01/22/2019 RIP: 0010:sg_init_one+0x85/0xa0 Code: 69 88 32 01 83 e1 03
2024 Jul 30
1
[PATCH 2/2] [v6] drm/nouveau: expose GSP-RM logging buffers via debugfs
...#ifdef CONFIG_DEBUG_FS > + r535_gsp_retain_logging(gsp); > + > + kfree(gsp->blob_pmu.data); > + gsp->blob_pmu.data = NULL; > +#endif > +} > + > void > r535_gsp_dtor(struct nvkm_gsp *gsp) > { > @@ -2528,6 +2925,9 @@ r535_gsp_dtor(struct nvkm_gsp *gsp) > nvkm_gsp_mem_dtor(&gsp->rmargs); > nvkm_gsp_mem_dtor(&gsp->wpr_meta); > nvkm_gsp_mem_dtor(&gsp->shm.mem); > + > + r535_gsp_libos_debugfs_fini(gsp); > + > nvkm_gsp_mem_dtor(&gsp->loginit); > nvkm_gsp_mem_dtor(&gsp->logintr); > nvkm_gsp_mem_dtor(&amp...
2024 Oct 03
1
[PATCH 2/2] [v8] drm/nouveau: expose GSP-RM logging buffers via debugfs
...; + * exists only if the debugfs entries were created. > + */ > + kfree(gsp->blob_pmu.data); > + gsp->blob_pmu.data = NULL; > +#endif > +} > + > void > r535_gsp_dtor(struct nvkm_gsp *gsp) > { > @@ -2528,6 +3019,9 @@ r535_gsp_dtor(struct nvkm_gsp *gsp) > nvkm_gsp_mem_dtor(&gsp->rmargs); > nvkm_gsp_mem_dtor(&gsp->wpr_meta); > nvkm_gsp_mem_dtor(&gsp->shm.mem); > + > + r535_gsp_libos_debugfs_fini(gsp); > + > nvkm_gsp_mem_dtor(&gsp->loginit); > nvkm_gsp_mem_dtor(&gsp->logintr); > nvkm_gsp_mem_dtor(&amp...
2023 Dec 04
1
[PATCH] nouveau/gsp: add three notifier callbacks that we see in normal operation
...print(void *priv, u32 fn, void *repv, u32 repc) +{ + /* work out what we should do here. */ + return 0; +} + +static int +r535_gsp_msg_gsp_send_user_shared_data(void *priv, u32 fn, void *repv, u32 repc) +{ + /* this seems to send some sort of assert counts from gsp */ + return 0; +} + static void nvkm_gsp_mem_dtor(struct nvkm_gsp *gsp, struct nvkm_gsp_mem *mem) { @@ -2104,7 +2124,9 @@ r535_gsp_oneinit(struct nvkm_gsp *gsp) r535_gsp_msg_ntfy_add(gsp, NV_VGPU_MSG_EVENT_MMU_FAULT_QUEUED, r535_gsp_msg_mmu_fault_queued, gsp); r535_gsp_msg_ntfy_add(gsp, NV_VGPU_MSG_EVENT_OS_ERROR_LOG, r535_gsp_msg_o...