Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7460d703 authored by Ben Skeggs's avatar Ben Skeggs
Browse files

drm/nvc0: gpuobj_new need only check validity and init the relevant engine



Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 587107b6
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -643,10 +643,13 @@ nouveau_gpuobj_gr_new(struct nouveau_channel *chan, u32 handle, int class)
found:
	switch (oc->engine) {
	case NVOBJ_ENGINE_SW:
		if (dev_priv->card_type < NV_C0) {
			ret = nouveau_gpuobj_sw_new(chan, class, &gpuobj);
			if (ret)
				return ret;
			goto insert;
		}
		break;
	case NVOBJ_ENGINE_GR:
		if (dev_priv->card_type >= NV_50 && !chan->ramin_grctx) {
			struct nouveau_pgraph_engine *pgraph =
@@ -669,6 +672,10 @@ found:
		break;
	}

	/* we're done if this is fermi */
	if (dev_priv->card_type >= NV_C0)
		return 0;

	ret = nouveau_gpuobj_new(dev, chan,
				 nouveau_gpuobj_class_instmem_size(dev, class),
				 16,