Displaying 11 results from an estimated 11 matches for "nvkm_object_ctor".
2017 May 04
1
[bug report] drm/nouveau/object: merge with handle
Hello Ben Skeggs,
The patch fbd58ebda9c8: "drm/nouveau/object: merge with handle" from
Aug 20, 2015, leads to the following static checker warning:
drivers/gpu/drm/nouveau/nvkm/core/object.c:298 nvkm_object_ctor()
warn: 'object->engine' is an error pointer or valid
drivers/gpu/drm/nouveau/nvkm/core/object.c
283 void
284 nvkm_object_ctor(const struct nvkm_object_func *func,
285 const struct nvkm_oclass *oclass, struct nvkm_object *object)
286 {
287 o...
2019 Nov 08
1
[PATCH] RFC: drm/nouveau: Make BAR1 support optional
...struct nvkm_oclass *oclass,
+ struct nvkm_fifo_chan *chan)
{
struct nvkm_client *client = oclass->client;
struct nvkm_device *device = fifo->engine.subdev.device;
@@ -362,7 +456,6 @@ nvkm_fifo_chan_ctor(const struct nvkm_fifo_chan_func *func,
unsigned long flags;
int ret;
- nvkm_object_ctor(&nvkm_fifo_chan_func, oclass, &chan->object);
chan->func = func;
chan->fifo = fifo;
chan->engines = engines;
@@ -412,6 +505,26 @@ nvkm_fifo_chan_ctor(const struct nvkm_fifo_chan_func *func,
__set_bit(chan->chid, fifo->mask);
spin_unlock_irqrestore(&fifo->l...
2015 Feb 17
0
[PATCH v3 1/6] make RAM device optional
...vkm_object_ref(NULL, (struct nvkm_object **)&pfb->ram);
+ }
+
nvkm_subdev_destroy(&pfb->base);
}
@@ -127,6 +134,9 @@ nvkm_fb_create_(struct nvkm_object *parent, struct nvkm_object *engine,
pfb->memtype_valid = impl->memtype;
+ if (!impl->ram)
+ return 0;
+
ret = nvkm_object_ctor(nv_object(pfb), NULL, impl->ram, NULL, 0, &ram);
if (ret) {
nv_fatal(pfb, "error detecting memory configuration!!\n");
diff --git a/drm/nouveau/nvkm/subdev/ltc/gf100.c b/drm/nouveau/nvkm/subdev/ltc/gf100.c
index 8e7cc6200d60..7fb5ea0314cb 100644
--- a/drm/nouveau/nvkm/subdev/l...
2015 Jan 23
0
[PATCH 1/6] make RAM device optional
...vkm_object_ref(NULL, (struct nvkm_object **)&pfb->ram);
+ }
+
nvkm_subdev_destroy(&pfb->base);
}
@@ -127,6 +134,9 @@ nvkm_fb_create_(struct nvkm_object *parent, struct nvkm_object *engine,
pfb->memtype_valid = impl->memtype;
+ if (!impl->ram)
+ return 0;
+
ret = nvkm_object_ctor(nv_object(pfb), NULL, impl->ram, NULL, 0, &ram);
if (ret) {
nv_fatal(pfb, "error detecting memory configuration!!\n");
diff --git a/drm/nouveau/nvkm/subdev/ltc/gf100.c b/drm/nouveau/nvkm/subdev/ltc/gf100.c
index 8e7cc62..ceaa104 100644
--- a/drm/nouveau/nvkm/subdev/ltc/gf100.c...
2015 Feb 11
0
[PATCH v2 1/6] make RAM device optional
...vkm_object_ref(NULL, (struct nvkm_object **)&pfb->ram);
+ }
+
nvkm_subdev_destroy(&pfb->base);
}
@@ -127,6 +134,9 @@ nvkm_fb_create_(struct nvkm_object *parent, struct nvkm_object *engine,
pfb->memtype_valid = impl->memtype;
+ if (!impl->ram)
+ return 0;
+
ret = nvkm_object_ctor(nv_object(pfb), NULL, impl->ram, NULL, 0, &ram);
if (ret) {
nv_fatal(pfb, "error detecting memory configuration!!\n");
diff --git a/drm/nouveau/nvkm/subdev/ltc/gf100.c b/drm/nouveau/nvkm/subdev/ltc/gf100.c
index 8e7cc62..7ae8e91 100644
--- a/drm/nouveau/nvkm/subdev/ltc/gf100.c...
2015 Nov 10
21
[Bug 92892] New: KDE Plasma locks up: Nouveau reports error "resource sanity check" "unable to handle kernel paging request"
...fffff8105425e>]
__ioremap_caller+0x2de/0x360
Okt 27 15:42:10 linux-5rjk kernel: [<ffffffff810542f7>]
ioremap_nocache+0x17/0x20
Okt 27 15:42:10 linux-5rjk kernel: [<ffffffffa0234e72>]
nvkm_barobj_ctor+0xc2/0xf0 [nouveau]
Okt 27 15:42:10 linux-5rjk kernel: [<ffffffffa02338d1>]
nvkm_object_ctor+0x31/0xd0 [nouveau]
Okt 27 15:42:10 linux-5rjk kernel: [<ffffffffa0234ece>]
nvkm_bar_alloc+0x2e/0x40 [nouveau]
Okt 27 15:42:10 linux-5rjk kernel: [<ffffffffa023092d>]
nvkm_gpuobj_create_+0x26d/0x2a0 [nouveau]
Okt 27 15:42:10 linux-5rjk kernel: [<ffffffffa023099d>]
_nvkm_gpuobj_...
2015 Feb 17
2
[PATCH v3 1/6] make RAM device optional
..._subdev_destroy(&pfb->base);
> }
>
> @@ -127,6 +134,9 @@ nvkm_fb_create_(struct nvkm_object *parent, struct nvkm_object *engine,
>
> pfb->memtype_valid = impl->memtype;
>
> + if (!impl->ram)
> + return 0;
> +
> ret = nvkm_object_ctor(nv_object(pfb), NULL, impl->ram, NULL, 0, &ram);
> if (ret) {
> nv_fatal(pfb, "error detecting memory configuration!!\n");
> diff --git a/drm/nouveau/nvkm/subdev/ltc/gf100.c b/drm/nouveau/nvkm/subdev/ltc/gf100.c
> index 8e7cc6200d60..7fb5ea0314cb...
2015 Feb 17
8
[PATCH v3 0/6] nouveau/gk20a: RAM device removal & IOMMU support
Thanks Ilia for the v2 review! Here is the v3 of this IOMMU support for GK20A
series.
Changes since v2:
- Cleaner changes for ltc
- Fixed typos in gk20a instmem IOMMU comments
Changes since v1:
- Add missing else condition in ltc
- Remove extra flags that slipped into nouveau_display.c and nv84_fence.c.
Original cover letter:
Patches 1-3 make the presence of a RAM device optional, and remove
2015 Feb 20
6
[PATCH v4 0/6] nouveau/gk20a: RAM device removal & IOMMU support
Changes since v3:
- Use a single dma_attr for all DMA-API allocations in instmem instead of one
per allocation
- Use device.info.ram_size instead of pfb->ram to check whether VRAM is present
outside of nvkm
Changes since v2:
- Cleaner changes for ltc
- Fixed typos in gk20a instmem IOMMU comments
Changes since v1:
- Add missing else condition in ltc
- Remove extra flags that slipped into
2015 Feb 11
9
[PATCH v2 0/6] nouveau/gk20a: RAM device removal & IOMMU support
Changes since v1:
- Add missing else condition in ltc
- Remove extra flags that slipped into nouveau_display.c and nv84_fence.c.
Original cover letter:
Patches 1-3 make the presence of a RAM device optional, and remove GK20A's dummy
RAM driver we were using so far. On chips using shared memory, such a device
can confuse the driver into moving objects where there is no need to, and can
trick
2015 Jan 23
8
[PATCH 0/6] nouveau/gk20a: RAM device removal & IOMMU support
A series I have waited too long to submit, and the recent refactoring made
me pay the price of my perfectionism, so here are the features that are at least
completed
Patches 1-3 make the presence of a RAM device optional, and remove GK20A's dummy
RAM driver we were using so far. On chips using shared memory, such a device
can confuse the driver into moving objects where there is no need to,