From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH] drm: Try loading builtin EDIDs first Date: Wed, 2 Oct 2013 11:12:53 +0100 Message-ID: <1380708773-32377-1-git-send-email-chris@chris-wilson.co.uk> References: <20131002095622.GV9395@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from relay.fireflyinternet.com (relay1.fireflyinternet.com [217.160.24.105]) by gabe.freedesktop.org (Postfix) with ESMTP id 7F4DFE5FC8 for ; Wed, 2 Oct 2013 03:13:00 -0700 (PDT) Received: from fireflyinternet.com (unverified [87.106.93.118]) by relay.fireflyinternet.com (Firefly Internet (R2)) with ESMTP id 14556-2000100 for ; Wed, 02 Oct 2013 11:13:13 +0100 In-Reply-To: <20131002095622.GV9395@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SWYgdGhlIGZpcm13YXJlIGlzIG5vdCBidWlsdGluIGFuZCB1c2Vyc3BhY2UgaXMgbm90IHlldCBy dW5uaW5nLCB3ZSBjYW4Kc3RhbGwgdGhlIGJvb3QgcHJvY2VzcyBmb3IgYSBtaW51dGUgd2hpbHN0 IHRoZSBmaXJtd2FyZSBsb2FkZXIgdGltZXMKb3V0LiBUaGlzIGlzIGNvbnRyYXJ5IHRvIGV4cGVj dGF0aW9ucyBvZiBwcm92aWRpbmcgYSBidWlsdGluIEVESUQhCgpJbiB0aGUgcHJvY2Vzcywgd2Ug Y2FuIHJlYXJyYW5nZSB0aGUgY29kZSB0byBtYWtlIHRoZSBlcnJvciBoYW5kbGluZwptb3JlIHJl c2lsaWVudCBhbmQgcHJldmVudCBnY2Mgd2FybmluZyBhYm91dCB1bml0aWFsaXNlZCB2YXJpYWJs ZXMgYWxvbmcKdGhlIGVycm9yIHBhdGhzLgoKdjI6IExvYWQgYnVpbHRpbnMgZmlyc3QsIGZpeCBn Y2Mgc2Vjb25kIChKYW5pKSBhbmQgY29zbWV0aWNzIChWaWxsZSkuCnYzOiBWZXJpZnkgdGhhdCB3 ZSBkbyBub3QgcmVhZCBiZXlvbmQgdGhlIGVuZCBvZiB0aGUgZndkYXRhIChWaWxsZSkKClNpZ25l ZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogVmls bGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KQ2M6IEphbmkgTmlr dWxhIDxqYW5pLm5pa3VsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2Ry bV9lZGlkX2xvYWQuYyB8ICAxMDggKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0t LS0tCiAxIGZpbGUgY2hhbmdlZCwgNTQgaW5zZXJ0aW9ucygrKSwgNTQgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkX2xvYWQuYyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZWRpZF9sb2FkLmMKaW5kZXggMjcxYjQyYi4uOTA4MTE3MiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkX2xvYWQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2VkaWRfbG9hZC5jCkBAIC0zMiw3ICszMiw3IEBAIE1PRFVMRV9QQVJNX0RFU0MoZWRpZF9maXJt d2FyZSwgIkRvIG5vdCBwcm9iZSBtb25pdG9yLCB1c2Ugc3BlY2lmaWVkIEVESUQgYmxvYiAiCiAJ ImZyb20gYnVpbHQtaW4gZGF0YSBvciAvbGliL2Zpcm13YXJlIGluc3RlYWQuICIpOwogCiAjZGVm aW5lIEdFTkVSSUNfRURJRFMgNQotc3RhdGljIGNoYXIgKmdlbmVyaWNfZWRpZF9uYW1lW0dFTkVS SUNfRURJRFNdID0geworc3RhdGljIGNvbnN0IGNoYXIgKmdlbmVyaWNfZWRpZF9uYW1lW0dFTkVS SUNfRURJRFNdID0gewogCSJlZGlkLzEwMjR4NzY4LmJpbiIsCiAJImVkaWQvMTI4MHgxMDI0LmJp biIsCiAJImVkaWQvMTYwMHgxMjAwLmJpbiIsCkBAIC00MCw3ICs0MCw3IEBAIHN0YXRpYyBjaGFy ICpnZW5lcmljX2VkaWRfbmFtZVtHRU5FUklDX0VESURTXSA9IHsKIAkiZWRpZC8xOTIweDEwODAu YmluIiwKIH07CiAKLXN0YXRpYyB1OCBnZW5lcmljX2VkaWRbR0VORVJJQ19FRElEU11bMTI4XSA9 IHsKK3N0YXRpYyBjb25zdCB1OCBnZW5lcmljX2VkaWRbR0VORVJJQ19FRElEU11bMTI4XSA9IHsK IAl7CiAJMHgwMCwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHhmZiwgMHgwMCwKIAkw eDMxLCAweGQ4LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLApAQCAtMTMzLDYz ICsxMzMsNjggQEAgc3RhdGljIHU4IGdlbmVyaWNfZWRpZFtHRU5FUklDX0VESURTXVsxMjhdID0g ewogCX0sCiB9OwogCitzdGF0aWMgaW50IGVkaWRfc2l6ZShjb25zdCB1OCAqZWRpZCwgaW50IGRh dGFfc2l6ZSkKK3sKKwlpZiAoZGF0YV9zaXplIDwgRURJRF9MRU5HVEgpCisJCXJldHVybiAwOwor CisJcmV0dXJuIChlZGlkWzB4N2VdICsgMSkgKiBFRElEX0xFTkdUSDsKK30KKwogc3RhdGljIHU4 ICplZGlkX2xvYWQoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvciwgY29uc3QgY2hhciAq bmFtZSwKIAkJCWNvbnN0IGNoYXIgKmNvbm5lY3Rvcl9uYW1lKQogewotCWNvbnN0IHN0cnVjdCBm aXJtd2FyZSAqZnc7Ci0Jc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldjsKLQl1OCAqZndkYXRh ID0gTlVMTCwgKmVkaWQsICpuZXdfZWRpZDsKLQlpbnQgZndzaXplLCBleHBlY3RlZDsKLQlpbnQg YnVpbHRpbiA9IDAsIGVyciA9IDA7CisJY29uc3Qgc3RydWN0IGZpcm13YXJlICpmdyA9IE5VTEw7 CisJY29uc3QgdTggKmZ3ZGF0YTsKKwl1OCAqZWRpZDsKKwlpbnQgZndzaXplLCBidWlsdGluOwog CWludCBpLCB2YWxpZF9leHRlbnNpb25zID0gMDsKIAlib29sIHByaW50X2JhZF9lZGlkID0gIWNv bm5lY3Rvci0+YmFkX2VkaWRfY291bnRlciB8fCAoZHJtX2RlYnVnICYgRFJNX1VUX0tNUyk7CiAK LQlwZGV2ID0gcGxhdGZvcm1fZGV2aWNlX3JlZ2lzdGVyX3NpbXBsZShjb25uZWN0b3JfbmFtZSwg LTEsIE5VTEwsIDApOwotCWlmIChJU19FUlIocGRldikpIHsKLQkJRFJNX0VSUk9SKCJGYWlsZWQg dG8gcmVnaXN0ZXIgRURJRCBmaXJtd2FyZSBwbGF0Zm9ybSBkZXZpY2UgIgotCQkgICAgImZvciBj b25uZWN0b3IgXCIlc1wiXG4iLCBjb25uZWN0b3JfbmFtZSk7Ci0JCWVyciA9IC1FSU5WQUw7Ci0J CWdvdG8gb3V0OwotCX0KLQotCWVyciA9IHJlcXVlc3RfZmlybXdhcmUoJmZ3LCBuYW1lLCAmcGRl di0+ZGV2KTsKLQlwbGF0Zm9ybV9kZXZpY2VfdW5yZWdpc3RlcihwZGV2KTsKLQotCWlmIChlcnIp IHsKLQkJaSA9IDA7Ci0JCXdoaWxlIChpIDwgR0VORVJJQ19FRElEUyAmJiBzdHJjbXAobmFtZSwg Z2VuZXJpY19lZGlkX25hbWVbaV0pKQotCQkJaSsrOwotCQlpZiAoaSA8IEdFTkVSSUNfRURJRFMp IHsKLQkJCWVyciA9IDA7Ci0JCQlidWlsdGluID0gMTsKKwlidWlsdGluID0gMDsKKwlmb3IgKGkg PSAwOyBpIDwgR0VORVJJQ19FRElEUzsgaSsrKSB7CisJCWlmIChzdHJjbXAobmFtZSwgZ2VuZXJp Y19lZGlkX25hbWVbaV0pID09IDApIHsKIAkJCWZ3ZGF0YSA9IGdlbmVyaWNfZWRpZFtpXTsKIAkJ CWZ3c2l6ZSA9IHNpemVvZihnZW5lcmljX2VkaWRbaV0pOworCQkJYnVpbHRpbiA9IDE7CisJCQli cmVhazsKIAkJfQogCX0KKwlpZiAoIWJ1aWx0aW4pIHsKKwkJc3RydWN0IHBsYXRmb3JtX2Rldmlj ZSAqcGRldjsKKwkJaW50IGVycjsKIAotCWlmIChlcnIpIHsKLQkJRFJNX0VSUk9SKCJSZXF1ZXN0 aW5nIEVESUQgZmlybXdhcmUgXCIlc1wiIGZhaWxlZCAoZXJyPSVkKVxuIiwKLQkJICAgIG5hbWUs IGVycik7Ci0JCWdvdG8gb3V0OwotCX0KKwkJcGRldiA9IHBsYXRmb3JtX2RldmljZV9yZWdpc3Rl cl9zaW1wbGUoY29ubmVjdG9yX25hbWUsIC0xLCBOVUxMLCAwKTsKKwkJaWYgKElTX0VSUihwZGV2 KSkgeworCQkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gcmVnaXN0ZXIgRURJRCBmaXJtd2FyZSBwbGF0 Zm9ybSBkZXZpY2UgIgorCQkJCSAgImZvciBjb25uZWN0b3IgXCIlc1wiXG4iLCBjb25uZWN0b3Jf bmFtZSk7CisJCQlyZXR1cm4gRVJSX0NBU1QocGRldik7CisJCX0KKworCQllcnIgPSByZXF1ZXN0 X2Zpcm13YXJlKCZmdywgbmFtZSwgJnBkZXYtPmRldik7CisJCXBsYXRmb3JtX2RldmljZV91bnJl Z2lzdGVyKHBkZXYpOworCQlpZiAoZXJyKSB7CisJCQlEUk1fRVJST1IoIlJlcXVlc3RpbmcgRURJ RCBmaXJtd2FyZSBcIiVzXCIgZmFpbGVkIChlcnI9JWQpXG4iLAorCQkJCSAgbmFtZSwgZXJyKTsK KwkJCXJldHVybiBFUlJfUFRSKGVycik7CisJCX0KIAotCWlmIChmd2RhdGEgPT0gTlVMTCkgewot CQlmd2RhdGEgPSAodTggKikgZnctPmRhdGE7CisJCWZ3ZGF0YSA9IGZ3LT5kYXRhOwogCQlmd3Np emUgPSBmdy0+c2l6ZTsKIAl9CiAKLQlleHBlY3RlZCA9IChmd2RhdGFbMHg3ZV0gKyAxKSAqIEVE SURfTEVOR1RIOwotCWlmIChleHBlY3RlZCAhPSBmd3NpemUpIHsKKwlpZiAoZWRpZF9zaXplKGZ3 ZGF0YSwgZndzaXplKSAhPSBmd3NpemUpIHsKIAkJRFJNX0VSUk9SKCJTaXplIG9mIEVESUQgZmly bXdhcmUgXCIlc1wiIGlzIGludmFsaWQgIgotCQkgICAgIihleHBlY3RlZCAlZCwgZ290ICVkKVxu IiwgbmFtZSwgZXhwZWN0ZWQsIChpbnQpIGZ3c2l6ZSk7Ci0JCWVyciA9IC1FSU5WQUw7Ci0JCWdv dG8gcmVsZndfb3V0OworCQkJICAiKGV4cGVjdGVkICVkLCBnb3QgJWRcbiIsIG5hbWUsCisJCQkg IGVkaWRfc2l6ZShmd2RhdGEsIGZ3c2l6ZSksIChpbnQpZndzaXplKTsKKwkJZWRpZCA9IEVSUl9Q VFIoLUVJTlZBTCk7CisJCWdvdG8gb3V0OwogCX0KIAogCWVkaWQgPSBrbWVtZHVwKGZ3ZGF0YSwg ZndzaXplLCBHRlBfS0VSTkVMKTsKIAlpZiAoZWRpZCA9PSBOVUxMKSB7Ci0JCWVyciA9IC1FTk9N RU07Ci0JCWdvdG8gcmVsZndfb3V0OworCQllZGlkID0gRVJSX1BUUigtRU5PTUVNKTsKKwkJZ290 byBvdXQ7CiAJfQogCiAJaWYgKCFkcm1fZWRpZF9ibG9ja192YWxpZChlZGlkLCAwLCBwcmludF9i YWRfZWRpZCkpIHsKQEAgLTE5Nyw4ICsyMDIsOCBAQCBzdGF0aWMgdTggKmVkaWRfbG9hZChzdHJ1 Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBjb25zdCBjaGFyICpuYW1lLAogCQlEUk1fRVJS T1IoIkJhc2UgYmxvY2sgb2YgRURJRCBmaXJtd2FyZSBcIiVzXCIgaXMgaW52YWxpZCAiLAogCQkg ICAgbmFtZSk7CiAJCWtmcmVlKGVkaWQpOwotCQllcnIgPSAtRUlOVkFMOwotCQlnb3RvIHJlbGZ3 X291dDsKKwkJZWRpZCA9IEVSUl9QVFIoLUVJTlZBTCk7CisJCWdvdG8gb3V0OwogCX0KIAogCWZv ciAoaSA9IDE7IGkgPD0gZWRpZFsweDdlXTsgaSsrKSB7CkBAIC0yMTAsMTkgKzIxNSwxOCBAQCBz dGF0aWMgdTggKmVkaWRfbG9hZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBjb25z dCBjaGFyICpuYW1lLAogCX0KIAogCWlmICh2YWxpZF9leHRlbnNpb25zICE9IGVkaWRbMHg3ZV0p IHsKKwkJdTggKm5ld19lZGlkOworCiAJCWVkaWRbRURJRF9MRU5HVEgtMV0gKz0gZWRpZFsweDdl XSAtIHZhbGlkX2V4dGVuc2lvbnM7CiAJCURSTV9JTkZPKCJGb3VuZCAlZCB2YWxpZCBleHRlbnNp b25zIGluc3RlYWQgb2YgJWQgaW4gRURJRCBkYXRhICIKIAkJICAgICJcIiVzXCIgZm9yIGNvbm5l Y3RvciBcIiVzXCJcbiIsIHZhbGlkX2V4dGVuc2lvbnMsCiAJCSAgICBlZGlkWzB4N2VdLCBuYW1l LCBjb25uZWN0b3JfbmFtZSk7CiAJCWVkaWRbMHg3ZV0gPSB2YWxpZF9leHRlbnNpb25zOworCiAJ CW5ld19lZGlkID0ga3JlYWxsb2MoZWRpZCwgKHZhbGlkX2V4dGVuc2lvbnMgKyAxKSAqIEVESURf TEVOR1RILAotCQkgICAgR0ZQX0tFUk5FTCk7Ci0JCWlmIChuZXdfZWRpZCA9PSBOVUxMKSB7Ci0J CQllcnIgPSAtRU5PTUVNOwotCQkJa2ZyZWUoZWRpZCk7Ci0JCQlnb3RvIHJlbGZ3X291dDsKLQkJ fQotCQllZGlkID0gbmV3X2VkaWQ7CisJCQkJICAgIEdGUF9LRVJORUwpOworCQlpZiAobmV3X2Vk aWQpCisJCQllZGlkID0gbmV3X2VkaWQ7CiAJfQogCiAJRFJNX0lORk8oIkdvdCAlcyBFRElEIGJh c2UgYmxvY2sgYW5kICVkIGV4dGVuc2lvbiVzIGZyb20gIgpAQCAtMjMwLDEzICsyMzQsOSBAQCBz dGF0aWMgdTggKmVkaWRfbG9hZChzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBjb25z dCBjaGFyICpuYW1lLAogCSAgICAiZXh0ZXJuYWwiLCB2YWxpZF9leHRlbnNpb25zLCB2YWxpZF9l eHRlbnNpb25zID09IDEgPyAiIiA6ICJzIiwKIAkgICAgbmFtZSwgY29ubmVjdG9yX25hbWUpOwog Ci1yZWxmd19vdXQ6Ci0JcmVsZWFzZV9maXJtd2FyZShmdyk7Ci0KIG91dDoKLQlpZiAoZXJyKQot CQlyZXR1cm4gRVJSX1BUUihlcnIpOwotCisJaWYgKGZ3KQorCQlyZWxlYXNlX2Zpcm13YXJlKGZ3 KTsKIAlyZXR1cm4gZWRpZDsKIH0KIAotLSAKMS43LjkuNQoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2 ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9kcmktZGV2ZWwK