From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stanislav Lisovskiy Subject: [PATCH v2 3/3] drm/i915: Send hotplug event if edid had changed. Date: Fri, 28 Jun 2019 11:24:54 +0300 Message-ID: <20190628082454.16345-4-stanislav.lisovskiy@intel.com> References: <20190628082454.16345-1-stanislav.lisovskiy@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190628082454.16345-1-stanislav.lisovskiy@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org Cc: paul.kocialkowski@bootlin.com, daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org, martin.peres@intel.com, ppaalanen@gmail.com, simon.ser@intel.com List-Id: intel-gfx@lists.freedesktop.org QWRkZWQgZWRpZCBjaGVja2luZyB0byBkcCBhbmQgaGRtaSBlZGlkIHNldHRpbmcgZnVuY3Rpb25z LCB3aGljaAphcmUgY2FsbGVkIGZyb20gZGV0ZWN0IGhvb2tzLiBUaGUgcmVzdWx0IGN1cnJlbnRs eSBpcyBwcm9wYWdhdGVkCnRvIGNhbGxpbmcgbGF5ZXIgdXNpbmcgZHJtX2Nvbm5lY3Rvci0+Y2hh bmdlX2NvdW50ZXIocHJvcG9zZWQgYnkgRGFuaWVsIFZldHRlcikuCmRybV9oZWxwZXJfaHBkX2ly cV9ldmVudCBhbmQgaW50ZWxfZW5jb2Rlcl9ob3RwbHVnIGFyZSBjdXJyZW50bHkgYm90aApyZXNw b25zaWJsZSBmb3IgY2hlY2tpbmcgaWYgdGhpcyBjb3VudGVyIG9yIGNvbm5lY3Rpb24gc3RhdHVz IGlzIGNoYW5nZWQuCgpUaGVyZSBhcmUgY29uZmxpY3RpbmcgcGFydHMgaW4gZHJtIGFuZCBpOTE1 IHdoaWNoIGF0dGVtcHQKdG8gZG8gdGhlIHNhbWUgam9iIC0gZHJtX2hlbHBlcl9ocGRfaXJxX2V2 ZW50IGF0dGVtcHRzIHRvCmNoZWNrIGNvbm5lY3RvciBzdGF0dXMgY2hhbmdlcyBhbmQgdGhlbiBj YWxsIGhvdHBsdWcsCmp1c3QgYXMgaTkxNV9ob3RwbHVnX3dvcmtfZnVuYywgd2hpY2ggY2FsbHMg ZW5jb2Rlci0+aG90cGx1Zwpob29rIHdoaWNoIGluIHR1cm4gY2FsbHMgZ2VuZXJpYyBpbnRlbF9l bmNvZGVyX2hvdHBsdWcgZnVuY3Rpb24Kd2hpY2ggYXR0ZW1wdHMgdG8gcHJvYmUgaWYgb3V0cHV0 IGhhcyBjaGFuZ2VkLgpMb29rcyBsaWtlIGJvdGggbmVlZHMgdG8gYmUgY2hhbmdlZCwgc28gYWRk ZWQgZWRpZCBjaGVja2luZwphbHNvIHRvIGludGVsX2VuY29kZXJfaG90cGx1ZyBmdW5jdGlvbiB3 aGljaCBpcyBjYWxsZWQgYm90aApmb3IgaGRtaSBhbmQgZHAuCgp2MjogUmVuYW1lZCBjaGFuZ2Ug Y291bnRlciB0byBlcG9jaCBjb3VudGVyLiBGaXhlZCB0eXBlIG5hbWUuCgpCdWd6aWxsYTogaHR0 cHM6Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1NTQwClNpZ25lZC1v ZmYtYnk6IFN0YW5pc2xhdiBMaXNvdnNraXkgPHN0YW5pc2xhdi5saXNvdnNraXlAaW50ZWwuY29t PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfZHAuYyAgICAgIHwgMTYg KysrKysrKysrKysrKysrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9oZG1p LmMgICAgfCAxNiArKysrKysrKysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2hvdHBsdWcuYyB8IDIwICsrKysrKysrKysrKysrKy0tLS0tCiAzIGZpbGVzIGNoYW5n ZWQsIDQzIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv ZGlzcGxheS9pbnRlbF9kcC5jCmluZGV4IDQzMzZkZjQ2ZmU3OC4uYzJlZDAyNDc4Y2Y5IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2RwLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZGlzcGxheS9pbnRlbF9kcC5jCkBAIC01NTEwLDEwICs1NTEwLDI0 IEBAIHN0YXRpYyB2b2lkCiBpbnRlbF9kcF9zZXRfZWRpZChzdHJ1Y3QgaW50ZWxfZHAgKmludGVs X2RwKQogewogCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IGludGVs X2RwLT5hdHRhY2hlZF9jb25uZWN0b3I7CisJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rv ciA9ICZpbnRlbF9jb25uZWN0b3ItPmJhc2U7CiAJc3RydWN0IGVkaWQgKmVkaWQ7CisJc3RydWN0 IGVkaWQgKm9sZF9lZGlkOwogCi0JaW50ZWxfZHBfdW5zZXRfZWRpZChpbnRlbF9kcCk7CiAJZWRp ZCA9IGludGVsX2RwX2dldF9lZGlkKGludGVsX2RwKTsKKwlvbGRfZWRpZCA9IGludGVsX2Nvbm5l Y3Rvci0+ZGV0ZWN0X2VkaWQ7CisKKwlpZiAoIWRybV9lZGlkX2FyZV9lcXVhbChlZGlkLCBvbGRf ZWRpZCkpIHsKKwkJRFJNX0RFQlVHX0tNUygiW0NPTk5FQ1RPUjolZDolc10gRWRpZCB3YXMgY2hh bmdlZCEgVXBkYXRpbmcgYmxvYiBwcm9wZXJ0eS5cbiIsCisJCSAgICBjb25uZWN0b3ItPmJhc2Uu aWQsIGNvbm5lY3Rvci0+bmFtZSk7CisKKwkJY29ubmVjdG9yLT5lcG9jaF9jb3VudGVyICs9IDE7 CisJCURSTV9ERUJVR19LTVMoIlVwZGF0aW5nIGNoYW5nZSBjb3VudGVyIHRvICVsbHVcbiIsIGNv bm5lY3Rvci0+ZXBvY2hfY291bnRlcik7CisKKwkJaW50ZWxfY29ubmVjdG9yX3VwZGF0ZV9tb2Rl cygmaW50ZWxfY29ubmVjdG9yLT5iYXNlLCBlZGlkKTsKKwl9CisKKwlpbnRlbF9kcF91bnNldF9l ZGlkKGludGVsX2RwKTsKIAlpbnRlbF9jb25uZWN0b3ItPmRldGVjdF9lZGlkID0gZWRpZDsKIAog CWludGVsX2RwLT5oYXNfYXVkaW8gPSBkcm1fZGV0ZWN0X21vbml0b3JfYXVkaW8oZWRpZCk7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hkbWkuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkvaW50ZWxfaGRtaS5jCmluZGV4IDBlYmVjNjliYmJm Yy4uZjg5MmM3Yjc5NWNlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5 L2ludGVsX2hkbWkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hk bWkuYwpAQCAtMjUwMyw3ICsyNTAzLDcgQEAgaW50ZWxfaGRtaV9zZXRfZWRpZChzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUoY29ubmVjdG9yLT5kZXYpOwogCXN0cnVjdCBpbnRlbF9oZG1pICppbnRlbF9o ZG1pID0gaW50ZWxfYXR0YWNoZWRfaGRtaShjb25uZWN0b3IpOwogCWludGVsX3dha2VyZWZfdCB3 YWtlcmVmOwotCXN0cnVjdCBlZGlkICplZGlkOworCXN0cnVjdCBlZGlkICplZGlkLCAqb2xkX2Vk aWQ7CiAJYm9vbCBjb25uZWN0ZWQgPSBmYWxzZTsKIAlzdHJ1Y3QgaTJjX2FkYXB0ZXIgKmkyYzsK IApAQCAtMjUyNCwxMSArMjUyNCwyMiBAQCBpbnRlbF9oZG1pX3NldF9lZGlkKHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IpCiAKIAlpbnRlbF9kaXNwbGF5X3Bvd2VyX3B1dChkZXZfcHJp diwgUE9XRVJfRE9NQUlOX0dNQlVTLCB3YWtlcmVmKTsKIAorCW9sZF9lZGlkID0gdG9faW50ZWxf Y29ubmVjdG9yKGNvbm5lY3RvciktPmRldGVjdF9lZGlkOworCisJaWYgKCFkcm1fZWRpZF9hcmVf ZXF1YWwoZWRpZCwgb2xkX2VkaWQpKSB7CisJCWludGVsX2Nvbm5lY3Rvcl91cGRhdGVfbW9kZXMo Y29ubmVjdG9yLCBlZGlkKTsKKwkJRFJNX0RFQlVHX0tNUygiVXBkYXRpbmcgY2hhbmdlIGNvdW50 ZXIgdG8gJWxsdVxuIiwgY29ubmVjdG9yLT5lcG9jaF9jb3VudGVyKTsKKwkJY29ubmVjdG9yLT5l cG9jaF9jb3VudGVyICs9IDE7CisKKwkJRFJNX0RFQlVHX0tNUygiW0NPTk5FQ1RPUjolZDolc10g RWRpZCB3YXMgY2hhbmdlZCEgVXBkYXRpbmcgYmxvYiBwcm9wZXJ0eS5cbiIsCisJCSAgICBjb25u ZWN0b3ItPmJhc2UuaWQsIGNvbm5lY3Rvci0+bmFtZSk7CisJfQorCWludGVsX2hkbWlfdW5zZXRf ZWRpZChjb25uZWN0b3IpOwogCXRvX2ludGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpLT5kZXRlY3Rf ZWRpZCA9IGVkaWQ7CisKIAlpZiAoZWRpZCAmJiBlZGlkLT5pbnB1dCAmIERSTV9FRElEX0lOUFVU X0RJR0lUQUwpIHsKIAkJaW50ZWxfaGRtaS0+aGFzX2F1ZGlvID0gZHJtX2RldGVjdF9tb25pdG9y X2F1ZGlvKGVkaWQpOwogCQlpbnRlbF9oZG1pLT5oYXNfaGRtaV9zaW5rID0gZHJtX2RldGVjdF9o ZG1pX21vbml0b3IoZWRpZCk7Ci0KIAkJY29ubmVjdGVkID0gdHJ1ZTsKIAl9CiAKQEAgLTI1NTUs NyArMjU2Niw2IEBAIGludGVsX2hkbWlfZGV0ZWN0KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25u ZWN0b3IsIGJvb2wgZm9yY2UpCiAJICAgICFpbnRlbF9kaWdpdGFsX3BvcnRfY29ubmVjdGVkKGVu Y29kZXIpKQogCQlnb3RvIG91dDsKIAotCWludGVsX2hkbWlfdW5zZXRfZWRpZChjb25uZWN0b3Ip OwogCiAJaWYgKGludGVsX2hkbWlfc2V0X2VkaWQoY29ubmVjdG9yKSkKIAkJc3RhdHVzID0gY29u bmVjdG9yX3N0YXR1c19jb25uZWN0ZWQ7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9kaXNwbGF5L2ludGVsX2hvdHBsdWcuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2Rpc3BsYXkv aW50ZWxfaG90cGx1Zy5jCmluZGV4IGVhM2RlNGFjYzg1MC4uZjlkOWU5NjMxOTZhIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hvdHBsdWcuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2hvdHBsdWcuYwpAQCAtMjcxLDIzICsy NzEsMzMgQEAgYm9vbCBpbnRlbF9lbmNvZGVyX2hvdHBsdWcoc3RydWN0IGludGVsX2VuY29kZXIg KmVuY29kZXIsCiB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNvbm5lY3Rvci0+YmFzZS5k ZXY7CiAJZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBvbGRfc3RhdHVzOworCXU2NCBvbGRfZXBv Y2hfY291bnRlcjsKKwlib29sIHJldCA9IGZhbHNlOwogCiAJV0FSTl9PTighbXV0ZXhfaXNfbG9j a2VkKCZkZXYtPm1vZGVfY29uZmlnLm11dGV4KSk7CiAJb2xkX3N0YXR1cyA9IGNvbm5lY3Rvci0+ YmFzZS5zdGF0dXM7CiAKKwlvbGRfZXBvY2hfY291bnRlciA9IGNvbm5lY3Rvci0+YmFzZS5lcG9j aF9jb3VudGVyOworCiAJY29ubmVjdG9yLT5iYXNlLnN0YXR1cyA9CiAJCWRybV9oZWxwZXJfcHJv YmVfZGV0ZWN0KCZjb25uZWN0b3ItPmJhc2UsIE5VTEwsIGZhbHNlKTsKIAotCWlmIChvbGRfc3Rh dHVzID09IGNvbm5lY3Rvci0+YmFzZS5zdGF0dXMpCi0JCXJldHVybiBmYWxzZTsKKwlpZiAob2xk X2Vwb2NoX2NvdW50ZXIgIT0gY29ubmVjdG9yLT5iYXNlLmVwb2NoX2NvdW50ZXIpCisJCXJldCA9 IHRydWU7CiAKLQlEUk1fREVCVUdfS01TKCJbQ09OTkVDVE9SOiVkOiVzXSBzdGF0dXMgdXBkYXRl ZCBmcm9tICVzIHRvICVzXG4iLAorCWlmIChvbGRfc3RhdHVzICE9IGNvbm5lY3Rvci0+YmFzZS5z dGF0dXMpCisJCXJldCA9IHRydWU7CisKKwlpZiAocmV0KSB7CisJCURSTV9ERUJVR19LTVMoIltD T05ORUNUT1I6JWQ6JXNdIHN0YXR1cyB1cGRhdGVkIGZyb20gJXMgdG8gJXMoY2hhbmdlIGNvdW50 ZXIgJWxsdSlcbiIsCiAJCSAgICAgIGNvbm5lY3Rvci0+YmFzZS5iYXNlLmlkLAogCQkgICAgICBj b25uZWN0b3ItPmJhc2UubmFtZSwKIAkJICAgICAgZHJtX2dldF9jb25uZWN0b3Jfc3RhdHVzX25h bWUob2xkX3N0YXR1cyksCi0JCSAgICAgIGRybV9nZXRfY29ubmVjdG9yX3N0YXR1c19uYW1lKGNv bm5lY3Rvci0+YmFzZS5zdGF0dXMpKTsKKwkJICAgICAgZHJtX2dldF9jb25uZWN0b3Jfc3RhdHVz X25hbWUoY29ubmVjdG9yLT5iYXNlLnN0YXR1cyksCisJCSAgICAgIGNvbm5lY3Rvci0+YmFzZS5l cG9jaF9jb3VudGVyKTsKKwl9CiAKLQlyZXR1cm4gdHJ1ZTsKKwlyZXR1cm4gcmV0OwogfQogCiBz dGF0aWMgYm9vbCBpbnRlbF9lbmNvZGVyX2hhc19ocGRfcHVsc2Uoc3RydWN0IGludGVsX2VuY29k ZXIgKmVuY29kZXIpCi0tIAoyLjE3LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeA==