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

Commit 2fa67f12 authored by Francisco Jerez's avatar Francisco Jerez Committed by Ben Skeggs
Browse files

drm/nouveau: Put the dithering check back in nouveau_connector_create.



a7b9f9e5adef dropped it by accident.

Signed-off-by: default avatarFrancisco Jerez <currojerez@riseup.net>
Tested-by: default avatarThibaut Girka <thib@sitedethib.com>
Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
parent 7a2e4e03
Loading
Loading
Loading
Loading
+22 −4
Original line number Diff line number Diff line
@@ -737,7 +737,7 @@ nouveau_connector_create(struct drm_device *dev,
	struct nouveau_connector *nv_connector = NULL;
	struct drm_connector *connector;
	struct drm_encoder *encoder;
	int type;
	int type, ret = 0;

	NV_DEBUG_KMS(dev, "\n");

@@ -813,9 +813,21 @@ nouveau_connector_create(struct drm_device *dev,

	if (!connector->encoder_ids[0]) {
		NV_WARN(dev, "  no encoders, ignoring\n");
		drm_connector_cleanup(connector);
		kfree(connector);
		return 0;
		goto fail;
	}

	/* Check if we need dithering enabled */
	if (dcb->type == DCB_CONNECTOR_LVDS) {
		bool dummy, is_24bit = false;

		ret = nouveau_bios_parse_lvds_table(dev, 0, &dummy, &is_24bit);
		if (ret) {
			NV_ERROR(dev, "Error parsing LVDS table, disabling "
				 "LVDS\n");
			goto fail;
		}

		nv_connector->use_dithering = !is_24bit;
	}

	/* Init DVI-I specific properties */
@@ -865,4 +877,10 @@ nouveau_connector_create(struct drm_device *dev,

	drm_sysfs_connector_add(connector);
	return 0;

fail:
	drm_connector_cleanup(connector);
	kfree(connector);
	return ret;

}