From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0EA056E126 for ; Wed, 3 Jul 2019 12:02:40 +0000 (UTC) From: Simon Ser Date: Wed, 3 Jul 2019 15:02:23 +0300 Message-Id: <20190703120226.24693-3-simon.ser@intel.com> In-Reply-To: <20190703120226.24693-1-simon.ser@intel.com> References: <20190703120226.24693-1-simon.ser@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2 3/6] lib/igt_edid: add hdmi_vsdb 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: VGhlIEhETUkgVmVuZG9yLVNwZWNpZmljIERhdGEgQmxvY2ssIGRlZmluZWQgYXMgYW4gb3BhcXVl IGJsb2IgaW4gdGhlIEVESUQKc3BlYywgaXMgZGVzY3JpYmVkIGluIHRoZSBIRE1JIDEuNCBzcGVj LgoKTW9zdCBvZiB0aGUgZXh0ZW5zaW9uIGZpZWxkcyBhcmUgb3B0aW9uYWwsIHNvIGl0IGRvZXNu J3QgdHJhbnNsYXRlIHdlbGwgdG8gYSBDCnN0cnVjdC4gRm9yIG5vdyBjYWxsZXJzIG5lZWQgdG8g bWFudWFsbHkgZmlsbCB0aGUgaGRtaV92c2RiLmRhdGEgZmllbGQuCgpTaWduZWQtb2ZmLWJ5OiBT aW1vbiBTZXIgPHNpbW9uLnNlckBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBWaWxsZSBTeXJqw6Rs w6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgotLS0KIGxpYi9pZ3RfZWRpZC5jIHwg MzYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tCiBsaWIvaWd0X2VkaWQuaCB8 IDUwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tCiAy IGZpbGVzIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2xpYi9pZ3RfZWRpZC5jIGIvbGliL2lndF9lZGlkLmMKaW5kZXggZGY1YjY2MTFlMjJj Li4wOTY2NjhlNjg5NTYgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfZWRpZC5jCisrKyBiL2xpYi9pZ3Rf ZWRpZC5jCkBAIC00Miw2ICs0Miw4IEBAIHN0YXRpYyBjb25zdCBjaGFyIG1vbml0b3JfcmFuZ2Vf cGFkZGluZ1tdID0gewogCTB4MGEsIDB4MjAsIDB4MjAsIDB4MjAsIDB4MjAsIDB4MjAsIDB4MjAK IH07CiAKK2NvbnN0IHVpbnQ4X3QgaGRtaV9pZWVlX291aVszXSA9IHsweDAzLCAweDBDLCAweDAw fTsKKwogLyogdmZyZXEgaXMgaW4gSHogKi8KIHN0YXRpYyB2b2lkIHN0ZF90aW1pbmdfc2V0KHN0 cnVjdCBzdGRfdGltaW5nICpzdCwgaW50IGhzaXplLCBpbnQgdmZyZXEsCiAJCQkgICBlbnVtIHN0 ZF90aW1pbmdfYXNwZWN0IGFzcGVjdCkKQEAgLTMyMSwyMSArMzIzLDIzIEBAIHZvaWQgY2VhX3Nh ZF9pbml0X3BjbShzdHJ1Y3QgY2VhX3NhZCAqc2FkLCBpbnQgY2hhbm5lbHMsCiAgKi8KIGNvbnN0 IHN0cnVjdCBjZWFfdnNkYiAqY2VhX3ZzZGJfZ2V0X2hkbWlfZGVmYXVsdChzaXplX3QgKnNpemUp CiB7Ci0Jc3RhdGljIGNoYXIgcmF3W3NpemVvZihzdHJ1Y3QgY2VhX3ZzZGIpICsgNF0gPSB7MH07 CisJLyogV2UnbGwgZ2VuZXJhdGUgYSBWU0RCIHdpdGggMiBleHRlbnNpb24gZmllbGRzLiAqLwor CXN0YXRpYyBjaGFyIHJhd1tDRUFfVlNEQl9IRE1JX01JTl9TSVpFICsgMl0gPSB7MH07CiAJc3Ry dWN0IGNlYV92c2RiICp2c2RiOworCXN0cnVjdCBoZG1pX3ZzZGIgKmhkbWk7CiAKIAkqc2l6ZSA9 IHNpemVvZihyYXcpOwogCiAJLyogTWFnaWMgaW5jYW50YXRpb24uIFdvcmtzIGJldHRlciBpZiB5 b3Ugb3JpZW50IHlvdXIgc2NyZWVuIGluIHRoZQogCSAqIGRpcmVjdGlvbiBvZiB0aGUgVkVTQSBo ZWFkcXVhcnRlcnMuICovCiAJdnNkYiA9IChzdHJ1Y3QgY2VhX3ZzZGIgKikgcmF3OwotCXZzZGIt PmllZWVfb3VpWzBdID0gMHgwMzsKLQl2c2RiLT5pZWVlX291aVsxXSA9IDB4MEM7Ci0JdnNkYi0+ aWVlZV9vdWlbMl0gPSAweDAwOwotCXZzZGItPmRhdGFbMF0gPSAweDEwOwotCXZzZGItPmRhdGFb MV0gPSAweDAwOwotCXZzZGItPmRhdGFbMl0gPSAweDM4OwotCXZzZGItPmRhdGFbM10gPSAweDJE OworCW1lbWNweSh2c2RiLT5pZWVlX291aSwgaGRtaV9pZWVlX291aSwgc2l6ZW9mKGhkbWlfaWVl ZV9vdWkpKTsKKwloZG1pID0gJnZzZGItPmRhdGEuaGRtaTsKKwloZG1pLT5zcmNfcGh5X2FkZHJb MF0gPSAweDEwOworCWhkbWktPnNyY19waHlfYWRkclsxXSA9IDB4MDA7CisJLyogMiBWU0RCIGV4 dGVuc2lvbiBmaWVsZHMgKi8KKwloZG1pLT5mbGFnczEgPSAweDM4OworCWhkbWktPm1heF90ZG1z X2Nsb2NrID0gMHgyRDsKIAogCXJldHVybiB2c2RiOwogfQpAQCAtMzcxLDYgKzM3NSwyMiBAQCBz aXplX3QgZWRpZF9jZWFfZGF0YV9ibG9ja19zZXRfdnNkYihzdHJ1Y3QgZWRpZF9jZWFfZGF0YV9i bG9jayAqYmxvY2ssCiAJcmV0dXJuIHNpemVvZihzdHJ1Y3QgZWRpZF9jZWFfZGF0YV9ibG9jaykg KyB2c2RiX3NpemU7CiB9CiAKK3NpemVfdCBlZGlkX2NlYV9kYXRhX2Jsb2NrX3NldF9oZG1pX3Zz ZGIoc3RydWN0IGVkaWRfY2VhX2RhdGFfYmxvY2sgKmJsb2NrLAorCQkJCQkgY29uc3Qgc3RydWN0 IGhkbWlfdnNkYiAqaGRtaSwKKwkJCQkJIHNpemVfdCBoZG1pX3NpemUpCit7CisJY2hhciByYXdf dnNkYltDRUFfVlNEQl9IRE1JX01BWF9TSVpFXSA9IHswfTsKKwlzdHJ1Y3QgY2VhX3ZzZGIgKnZz ZGIgPSAoc3RydWN0IGNlYV92c2RiICopIHJhd192c2RiOworCisJYXNzZXJ0KGhkbWlfc2l6ZSA+ PSBIRE1JX1ZTREJfTUlOX1NJWkUgJiYKKwkgICAgICAgaGRtaV9zaXplIDw9IEhETUlfVlNEQl9N QVhfU0laRSk7CisJbWVtY3B5KHZzZGItPmllZWVfb3VpLCBoZG1pX2llZWVfb3VpLCBzaXplb2Yo aGRtaV9pZWVlX291aSkpOworCW1lbWNweSgmdnNkYi0+ZGF0YS5oZG1pLCBoZG1pLCBoZG1pX3Np emUpOworCisJcmV0dXJuIGVkaWRfY2VhX2RhdGFfYmxvY2tfc2V0X3ZzZGIoYmxvY2ssIHZzZGIs CisJCQkJCSAgICBDRUFfVlNEQl9IRUFERVJfU0laRSArIGhkbWlfc2l6ZSk7Cit9CisKIHNpemVf dCBlZGlkX2NlYV9kYXRhX2Jsb2NrX3NldF9zcGVha2VyX2FsbG9jKHN0cnVjdCBlZGlkX2NlYV9k YXRhX2Jsb2NrICpibG9jaywKIAkJCQkJICAgICBjb25zdCBzdHJ1Y3QgY2VhX3NwZWFrZXJfYWxs b2MgKnNwZWFrZXJzKQogewpkaWZmIC0tZ2l0IGEvbGliL2lndF9lZGlkLmggYi9saWIvaWd0X2Vk aWQuaAppbmRleCA2ZmNiNTBhM2U5NWUuLjc5MDdiYWVlMDhhOSAxMDA2NDQKLS0tIGEvbGliL2ln dF9lZGlkLmgKKysrIGIvbGliL2lndF9lZGlkLmgKQEAgLTE5MSwxMSArMTkxLDUyIEBAIHN0cnVj dCBjZWFfc2FkIHsKIAl1aW50OF90IGJpdHJhdGU7CiB9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkp OwogCitlbnVtIGhkbWlfdnNkYl9mbGFnczEgeworCUhETUlfVlNEQl9EVklfRFVBTCA9IDEgPDwg MCwKKwlIRE1JX1ZTREJfRENfWTQ0NCA9IDEgPDwgMywgLyogc3VwcG9ydHMgWUNiQ3IgNDo0OjQg Ki8KKwlIRE1JX1ZTREJfRENfMzBCSVQgPSAxIDw8IDQsIC8qIDMwIGJpdHMgcGVyIHBpeGVsICov CisJSERNSV9WU0RCX0RDXzM2QklUID0gMSA8PCA1LCAvKiAzNiBiaXRzIHBlciBwaXhlbCAqLwor CUhETUlfVlNEQl9EQ180OEJJVCA9IDEgPDwgNiwgLyogNDggYml0cyBwZXIgcGl4ZWwgKi8KKwlI RE1JX1ZTREJfU1VQUE9SVFNfQUkgPSAxIDw8IDcsIC8qIHN1cHBvcnRzIEFDUCwgSVNSQzEgb3Ig SVNSQzIgcGFja2V0cyAqLworfTsKKworZW51bSBoZG1pX3ZzZGJfZmxhZ3MyIHsKKwlIRE1JX1ZT REJfQ05DX0dSQVBISUNTID0gMSA8PCAwLAorCUhETUlfVlNEQl9DTkNfUEhPVE8gPSAxIDw8IDEs CisJSERNSV9WU0RCX0NOQ19DSU5FTUEgPSAxIDw8IDIsCisJSERNSV9WU0RCX0NOQ19HQU1FID0g MSA8PCAzLAorCUhETUlfVlNEQl9WSURFT19QUkVTRU5UID0gMSA8PCA1LAorCUhETUlfVlNEQl9J TlRFUkxBQ0VEX0xBVEVOQ1lfUFJFU0VOVCA9IDEgPDwgNiwKKwlIRE1JX1ZTREJfTEFURU5DWV9Q UkVTRU5UID0gMSA8PCA3LAorfTsKKworLyogSERNSSdzIElFRUUgUmVnaXN0cmF0aW9uIElkZW50 aWZpZXIgKi8KK2V4dGVybiBjb25zdCB1aW50OF90IGhkbWlfaWVlZV9vdWlbM107CisKKy8qIEhE TUkgVmVuZG9yLVNwZWNpZmljIERhdGEgQmxvY2sgKGRlZmluZWQgaW4gdGhlIEhETUkgc3BlYykg Ki8KK3N0cnVjdCBoZG1pX3ZzZGIgeworCXVpbnQ4X3Qgc3JjX3BoeV9hZGRyWzJdOyAvKiBzb3Vy Y2UgcGh5c2ljYWwgYWRkcmVzcyAqLworCisJLyogRXh0ZW5zaW9uIGZpZWxkcyAqLworCXVpbnQ4 X3QgZmxhZ3MxOyAvKiBlbnVtIGhkbWlfdnNkYl9mbGFnczEgKi8KKwl1aW50OF90IG1heF90ZG1z X2Nsb2NrOyAvKiBtdWx0aXBseSBieSA1TUh6ICovCisJdWludDhfdCBmbGFnczI7IC8qIGVudW0g aGRtaV92c2RiX2ZsYWdzMiAqLworCWNoYXIgZGF0YVtdOyAvKiBsYXRlbmN5LCBtaXNjLCBWSUMs IDNEICovCit9IF9fYXR0cmlidXRlX18oKHBhY2tlZCkpOworCisjZGVmaW5lIEhETUlfVlNEQl9N SU5fU0laRSAyIC8qIGp1c3QgdGhlIHNvdXJjZSBwaHlzaWNhbCBhZGRyZXNzICovCisjZGVmaW5l IEhETUlfVlNEQl9NQVhfU0laRSAyOAorI2RlZmluZSBDRUFfVlNEQl9IRUFERVJfU0laRSAzIC8q IElFRUUgT1VJICovCisjZGVmaW5lIENFQV9WU0RCX0hETUlfTUlOX1NJWkUgKENFQV9WU0RCX0hF QURFUl9TSVpFICsgSERNSV9WU0RCX01JTl9TSVpFKQorI2RlZmluZSBDRUFfVlNEQl9IRE1JX01B WF9TSVpFIChDRUFfVlNEQl9IRUFERVJfU0laRSArIEhETUlfVlNEQl9NQVhfU0laRSkKKwogLyog VmVuZG9yLVNwZWNpZmljIERhdGEgQmxvY2sgKi8KIHN0cnVjdCBjZWFfdnNkYiB7Ci0JdWludDhf dCBpZWVlX291aVszXTsKLQljaGFyIGRhdGFbXTsKLX07CisJdWludDhfdCBpZWVlX291aVszXTsg LyogMjQtYml0IElFRUUgUmVnaXN0cmF0aW9uIElkZW50aWZpZXIsIExTQiAqLworCXVuaW9uIHsK KwkJc3RydWN0IGhkbWlfdnNkYiBoZG1pOworCX0gZGF0YTsKK30gX19hdHRyaWJ1dGVfXygocGFj a2VkKSk7CiAKIGVudW0gY2VhX3NwZWFrZXJfYWxsb2NfaXRlbSB7CiAJQ0VBX1NQRUFLRVJfRlJP TlRfTEVGVF9SSUdIVCA9IDEgPDwgMCwKQEAgLTMxNSw2ICszNTYsOSBAQCBzaXplX3QgZWRpZF9j ZWFfZGF0YV9ibG9ja19zZXRfc2FkKHN0cnVjdCBlZGlkX2NlYV9kYXRhX2Jsb2NrICpibG9jaywK IAkJCQkgICBjb25zdCBzdHJ1Y3QgY2VhX3NhZCAqc2Fkcywgc2l6ZV90IHNhZHNfbGVuKTsKIHNp emVfdCBlZGlkX2NlYV9kYXRhX2Jsb2NrX3NldF92c2RiKHN0cnVjdCBlZGlkX2NlYV9kYXRhX2Js b2NrICpibG9jaywKIAkJCQkgICBjb25zdCBzdHJ1Y3QgY2VhX3ZzZGIgKnZzZGIsIHNpemVfdCB2 c2RiX3NpemUpOworc2l6ZV90IGVkaWRfY2VhX2RhdGFfYmxvY2tfc2V0X2hkbWlfdnNkYihzdHJ1 Y3QgZWRpZF9jZWFfZGF0YV9ibG9jayAqYmxvY2ssCisJCQkJCSBjb25zdCBzdHJ1Y3QgaGRtaV92 c2RiICpoZG1pLAorCQkJCQkgc2l6ZV90IGhkbWlfc2l6ZSk7CiBzaXplX3QgZWRpZF9jZWFfZGF0 YV9ibG9ja19zZXRfc3BlYWtlcl9hbGxvYyhzdHJ1Y3QgZWRpZF9jZWFfZGF0YV9ibG9jayAqYmxv Y2ssCiAJCQkJCSAgICAgY29uc3Qgc3RydWN0IGNlYV9zcGVha2VyX2FsbG9jICpzcGVha2Vycyk7 CiB2b2lkIGVkaWRfZXh0X3NldF9jZWEoc3RydWN0IGVkaWRfZXh0ICpleHQsIHNpemVfdCBkYXRh X2Jsb2Nrc19zaXplLAotLSAKMi4yMi4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2lndC1kZXY=