From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id 732D76EC08 for ; Fri, 13 Mar 2020 16:12:05 +0000 (UTC) From: Ville Syrjala Date: Fri, 13 Mar 2020 18:11:32 +0200 Message-Id: <20200313161133.2012-4-ville.syrjala@linux.intel.com> In-Reply-To: <20200313161133.2012-1-ville.syrjala@linux.intel.com> References: <20200313161133.2012-1-ville.syrjala@linux.intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 4/5] lib/edid: Add support for making DisplayID tile blocks List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org List-ID: RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCldl IHdhbnQgdG8gdGVzdCB0aWxlZCBkaXNwbGF5IHN1cHBvcnQgd2l0aG91dCBhY3R1YWxseSBoYXZp bmcgdGlsZWQKZGlzcGxheXMuIFRvIHRoYXQgZW5kIHdlIHdpbGwgd2FudCB0byBjb25zdHJ1Y3Qg ZmFrZSB0aWxlIGluZnJvbWF0aW9uCmFuZCBhcHBlbmQgaXQgdG8gdGhlIEVESUQuCgpTaWduZWQt b2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgot LS0KIGxpYi9pZ3RfZWRpZC5jIHwgNzkgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKIGxpYi9pZ3RfZWRpZC5oIHwgNDkgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAxMjggaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL2xpYi9pZ3RfZWRpZC5jIGIvbGliL2lndF9lZGlkLmMKaW5kZXggMWM4NTQ4NmRmMTFi Li5kMWNhMzkxNjQ0M2QgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfZWRpZC5jCisrKyBiL2xpYi9pZ3Rf ZWRpZC5jCkBAIC0zMTMsNiArMzEzLDEwIEBAIHZvaWQgZWRpZF91cGRhdGVfY2hlY2tzdW0oc3Ry dWN0IGVkaWQgKmVkaWQpCiAJCQlleHQtPmRhdGEuY2VhLmNoZWNrc3VtID0KIAkJCQljb21wdXRl X2NoZWNrc3VtKCh1aW50OF90ICopIGV4dCwKIAkJCQkJCSBzaXplb2Yoc3RydWN0IGVkaWRfZXh0 KSk7CisJCWlmIChleHQtPnRhZyA9PSBFRElEX0VYVF9ESVNQSUQpCisJCQlleHQtPmRhdGEuZGlz cGlkLmNoZWNrc3VtID0KKwkJCQljb21wdXRlX2NoZWNrc3VtKCh1aW50OF90ICopIGV4dCwKKwkJ CQkJCSBzaXplb2Yoc3RydWN0IGVkaWRfZGlzcGlkKSk7CiAJfQogfQogCkBAIC00NzcsMyArNDgx LDc4IEBAIHZvaWQgZWRpZF9leHRfc2V0X2NlYShzdHJ1Y3QgZWRpZF9leHQgKmV4dCwgc2l6ZV90 IGRhdGFfYmxvY2tzX3NpemUsCiAJY2VhLT5kdGRfc3RhcnQgPSA0ICsgZGF0YV9ibG9ja3Nfc2l6 ZTsKIAljZWEtPm1pc2MgPSBmbGFncyB8IG51bV9uYXRpdmVfZHRkczsKIH0KKwordm9pZCAqZGlz cGlkX2Jsb2NrX3RpbGVkKHZvaWQgKnB0ciwKKwkJCSBpbnQgbnVtX2h0aWxlcywgaW50IG51bV92 dGlsZXMsCisJCQkgaW50IGh0aWxlLCBpbnQgdnRpbGUsCisJCQkgaW50IGhzaXplLCBpbnQgdnNp emUsCisJCQkgY29uc3QgY2hhciAqdG9wb2xvZ3lfaWQpCit7CisJc3RydWN0IGRpc3BpZF9ibG9j a19oZWFkZXIgKmJsb2NrID0gcHRyOworCXN0cnVjdCBkaXNwaWRfdGlsZWRfYmxvY2sgKnRpbGVk ID0gKHZvaWQqKShibG9jayArIDEpOworCisJYmxvY2stPnRhZyA9IDB4MTI7CisJYmxvY2stPnJl diA9IDA7CisJYmxvY2stPm51bV9ieXRlcyA9IHNpemVvZigqdGlsZWQpOworCisJbnVtX2h0aWxl cy0tOworCW51bV92dGlsZXMtLTsKKwloc2l6ZS0tOworCXZzaXplLS07CisKKwl0aWxlZC0+dGls ZV9jYXBzID0KKwkJRElTUElEX01VTFRJX1RJTEVfQVRfVElMRV9MT0NBVElPTiB8CisJCURJU1BJ RF9TSU5HTEVfVElMRV9BVF9USUxFX0xPQ0FUSU9OOworCisJdGlsZWQtPnRvcG9bMF0gPSAobnVt X2h0aWxlcyAmIDB4ZikgPDwgNCB8CisJCShudW1fdnRpbGVzICYgMHhmKSA8PCAwOworCisJdGls ZWQtPnRvcG9bMV0gPSAoaHRpbGUgJiAweGYpIDw8IDQgfAorCQkodnRpbGUgJiAweGYpIDw8IDA7 CisKKwl0aWxlZC0+dG9wb1syXSA9IChudW1faHRpbGVzID4+IDQpIDw8IDYgfAorCQkobnVtX3Z0 aWxlcyA+PiA0KSA8PCA0IHwKKwkJKGh0aWxlID4+IDQpIDw8IDIgfAorCQkodnRpbGUgPj4gNCkg PDwgMDsKKworCXRpbGVkLT50aWxlX3NpemVbMF0gPSBoc2l6ZTsKKwl0aWxlZC0+dGlsZV9zaXpl WzFdID0gaHNpemUgPj4gODsKKwl0aWxlZC0+dGlsZV9zaXplWzJdID0gdnNpemU7CisJdGlsZWQt PnRpbGVfc2l6ZVszXSA9IHZzaXplID4+IDg7CisKKwlzdHJuY3B5KChjaGFyICopdGlsZWQtPnRv cG9sb2d5X2lkLCB0b3BvbG9neV9pZCwKKwkJc2l6ZW9mKHRpbGVkLT50b3BvbG9neV9pZCkpOwor CisJcmV0dXJuIHRpbGVkICsgMTsKK30KKwordm9pZCAqZWRpZF9leHRfZGlzcGlkKHN0cnVjdCBl ZGlkX2V4dCAqZXh0KQoreworCXN0cnVjdCBlZGlkX2Rpc3BpZCAqZGlzcGlkID0gJmV4dC0+ZGF0 YS5kaXNwaWQ7CisKKwlleHQtPnRhZyA9IEVESURfRVhUX0RJU1BJRDsKKworCXJldHVybiBkaXNw aWQ7Cit9CisKK3ZvaWQgKmRpc3BpZF9pbml0KHZvaWQgKnB0cikKK3sKKwlzdHJ1Y3QgZGlzcGlk X2hlYWRlciAqZGlzcGlkID0gcHRyOworCisJZGlzcGlkLT5yZXYgPSAweDEwOworCWRpc3BpZC0+ cHJvZF9pZCA9IDB4MzsKKwlkaXNwaWQtPmV4dF9jb3VudCA9IDA7CisKKwlyZXR1cm4gZGlzcGlk ICsgMTsKK30KKwordm9pZCAqZGlzcGlkX2RvbmUoc3RydWN0IGRpc3BpZF9oZWFkZXIgKmRpc3Bp ZCwgdm9pZCAqcHRyKQoreworCWludCBieXRlcyA9IHB0ciAtICh2b2lkICopZGlzcGlkOworCisJ ZGlzcGlkLT5udW1fYnl0ZXMgPSBieXRlcyAtIHNpemVvZigqZGlzcGlkKTsKKworCSoodWludDhf dCAqKXB0ciA9IGNvbXB1dGVfY2hlY2tzdW0oKHZvaWQqKWRpc3BpZCwgYnl0ZXMgKyAxKTsKKwor CXJldHVybiBwdHIgKyAxOworfQpkaWZmIC0tZ2l0IGEvbGliL2lndF9lZGlkLmggYi9saWIvaWd0 X2VkaWQuaAppbmRleCA1OWI0N2E5NzdmZTMuLjhlNzQwNTJmNTRhYiAxMDA2NDQKLS0tIGEvbGli L2lndF9lZGlkLmgKKysrIGIvbGliL2lndF9lZGlkLmgKQEAgLTMwMiwxNCArMzAyLDU0IEBAIHN0 cnVjdCBlZGlkX2NlYSB7CiAJdWludDhfdCBjaGVja3N1bTsKIH0gX19hdHRyaWJ1dGVfXygocGFj a2VkKSk7CiAKK2VudW0gZGlzcGlkX3RpbGVfY2FwcyB7CisJRElTUElEX1NJTkdMRV9QSFlTSUNB TF9FTkNMT1NVUkUgPSAxIDw8IDcsCisJRElTUElEX0JFWkVMX0lORk9STUFUSU9OX1BSRVNFTlQg PSAxIDw8IDYsCisJRElTUElEX01VTFRJX1RJTEVfVU5LTk9XTiA9IDAgPDwgMywKKwlESVNQSURf TVVMVElfVElMRV9BVF9USUxFX0xPQ0FUSU9OID0gMSA8PCAzLAorCURJU1BJRF9TSU5HTEVfVElM RV9VTktOT1dOID0gMSA8PCAwLAorCURJU1BJRF9TSU5HTEVfVElMRV9BVF9USUxFX0xPQ0FUSU9O ID0gMSA8PCAwLAorCURJU1BJRF9TSU5HTEVfVElMRV9TQ0FMRURfRlVMTFNDUkVFTiA9IDIgPDwg MCwKKwlESVNQSURfU0lOR0xFX1RJTEVfQ0xPTkVEX1RPX0FMTF9USUxFUyA9IDMgPDwgMCwKK307 CisKK3N0cnVjdCBkaXNwaWRfaGVhZGVyIHsKKwl1aW50OF90IHJldjsKKwl1aW50OF90IG51bV9i eXRlczsKKwl1aW50OF90IHByb2RfaWQ7CisJdWludDhfdCBleHRfY291bnQ7Cit9IF9fYXR0cmli dXRlX18oKHBhY2tlZCkpOworCitzdHJ1Y3QgZGlzcGlkX2Jsb2NrX2hlYWRlciB7CisJdWludDhf dCB0YWc7CisJdWludDhfdCByZXY7CisJdWludDhfdCBudW1fYnl0ZXM7Cit9IF9fYXR0cmlidXRl X18oKHBhY2tlZCkpOworCitzdHJ1Y3QgZGlzcGlkX3RpbGVkX2Jsb2NrIHsKKwl1aW50OF90IHRp bGVfY2FwczsKKwl1aW50OF90IHRvcG9bM107CisJdWludDhfdCB0aWxlX3NpemVbNF07CisJdWlu dDhfdCB0aWxlX3BpeGVsX2JlemVsWzVdOworCXVpbnQ4X3QgdG9wb2xvZ3lfaWRbOV07Cit9IF9f YXR0cmlidXRlX18oKHBhY2tlZCkpOworCitzdHJ1Y3QgZWRpZF9kaXNwaWQgeworCXN0cnVjdCBk aXNwaWRfaGVhZGVyIGhlYWRlcjsKKwljaGFyIGRhdGFbMTIyXTsKKwl1aW50OF90IGNoZWNrc3Vt OworfSBfX2F0dHJpYnV0ZV9fKChwYWNrZWQpKTsKKwogZW51bSBlZGlkX2V4dF90YWcgewogCUVE SURfRVhUX0NFQSA9IDB4MDIsCisJRURJRF9FWFRfRElTUElEID0gMHg3MCwKIH07CiAKIHN0cnVj dCBlZGlkX2V4dCB7CiAJdWludDhfdCB0YWc7IC8qIGVudW0gZWRpZF9leHRfdGFnICovCiAJdW5p b24gewogCQlzdHJ1Y3QgZWRpZF9jZWEgY2VhOworCQlzdHJ1Y3QgZWRpZF9kaXNwaWQgZGlzcGlk OwogCX0gZGF0YTsKIH0gX19hdHRyaWJ1dGVfXygocGFja2VkKSk7CiAKQEAgLTM4Myw0ICs0MjMs MTMgQEAgc2l6ZV90IGVkaWRfY2VhX2RhdGFfYmxvY2tfc2V0X3NwZWFrZXJfYWxsb2Moc3RydWN0 IGVkaWRfY2VhX2RhdGFfYmxvY2sgKmJsb2NrLAogdm9pZCBlZGlkX2V4dF9zZXRfY2VhKHN0cnVj dCBlZGlkX2V4dCAqZXh0LCBzaXplX3QgZGF0YV9ibG9ja3Nfc2l6ZSwKIAkJICAgICAgdWludDhf dCBudW1fbmF0aXZlX2R0ZHMsIHVpbnQ4X3QgZmxhZ3MpOwogCit2b2lkICplZGlkX2V4dF9kaXNw aWQoc3RydWN0IGVkaWRfZXh0ICpleHQpOwordm9pZCAqZGlzcGlkX2luaXQodm9pZCAqcHRyKTsK K3ZvaWQgKmRpc3BpZF9kb25lKHN0cnVjdCBkaXNwaWRfaGVhZGVyICpkaXNwaWQsIHZvaWQgKnB0 cik7Cit2b2lkICpkaXNwaWRfYmxvY2tfdGlsZWQodm9pZCAqcHRyLAorCQkJIGludCBudW1faHRp bGVzLCBpbnQgbnVtX3Z0aWxlcywKKwkJCSBpbnQgaHRpbGUsIGludCB2dGlsZSwKKwkJCSBpbnQg aHNpemUsIGludCB2c2l6ZSwKKwkJCSBjb25zdCBjaGFyICp0b3BvbG9neV9pZCk7CisKICNlbmRp ZgotLSAKMi4yNC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXYK