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

Commit 4fa3b029 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "drm/edid: add checksum to connector"

parents 5fdcf80e baa90756
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -1566,6 +1566,9 @@ static void connector_bad_edid(struct drm_connector *connector,
			       u8 *edid, int num_blocks)
{
	int i;
	u32 csum = 0x100 | drm_edid_block_checksum(edid);

	connector->checksum = 0x100 - (csum - edid[EDID_LENGTH - 1]);

	if (connector->bad_edid_counter++ && !(drm_debug & DRM_UT_KMS))
		return;
@@ -1663,6 +1666,8 @@ struct edid *drm_do_get_edid(struct drm_connector *connector,
	u8 *edid, *new;
	struct edid *override;

	connector->checksum = 0;

	override = drm_get_override_edid(connector);
	if (override)
		return override;
+7 −0
Original line number Diff line number Diff line
@@ -1177,6 +1177,13 @@ struct drm_connector {
	 * Can find the panel which connected to drm_connector.
	 */
	struct drm_panel *panel;

	/**
	 * @checksum:
	 *
	 * The calculated checksum value of first 127 bytes of associated EDID.
	 */
	u8 checksum;
};

#define obj_to_connector(x) container_of(x, struct drm_connector, base)