From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wayne Lin Subject: [PATCH] drm/drm_edid: correct VIC and HDMI_VIC under HDMI 2.0 Date: Tue, 24 Sep 2019 13:26:21 +0800 Message-ID: <20190924052621.6851-1-Wayne.Lin@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Sunpeng.Li-5C7GfCeVMHo@public.gmane.org, harry.wentland-5C7GfCeVMHo@public.gmane.org, Nicholas.Kazlauskas-5C7GfCeVMHo@public.gmane.org, Wayne Lin SW4gSERNSSAxLjQgZGVmaW5lcyA0ayBtb2RlcyB3aXRob3V0IHNwZWNpZmljIGFzcGVjdCByYXRp by4KSG93ZXZlciwgaW4gSERNSSAyLjAsIGFkZHMgYXNwZWN0IHJhdGlvIGF0dHJpYnV0ZSB0byBk aXN0aW5ndWlzaCBkaWZmZXJlbnQKNGsgbW9kZXMuCgpBY2NvcmRpbmcgdG8gQXBwZW5kaXggRSBv ZiBIRE1JIDIuMCBzcGVjLCBzb3VyY2Ugc2hvdWxkIHVzZSBWU0lGIHRvCmluZGljYXRlIFZJQyBt b2RlIG9ubHkgd2hlbiB0aGUgbW9kZSBpcyBvbmUgZGVmaW5lZCBpbiBIRE1JIDEuNGIgNEsgbW9k ZXMuCk90aGVyd2lzZSwgdXNlIEFWSSBpbmZvZnJhbWVzIHRvIGNvbnZleSBWSUMuCgplZzogVklD XzEwMyBzaG91bGQgdXNlIEFWSSBpbmZvZnJhbWVzIGFuZCBWSUNfOTMgdXNlIFZTSUYKCldoZW4g dGhlIHNpbmsgaXMgSERNSSAyLjAsIGN1cnJlbnQgY29kZSBpbgpkcm1faGRtaV9hdmlfaW5mb2Zy YW1lX2Zyb21fZGlzcGxheV9tb2RlIHdpbGwgYWxzbyBmb3JjZSBtb2RlIFZJQ18xMDMgdG8KaGF2 ZSBWSUMgdmFsdWUgMC4gVGhpcyB2aW9sYXRlcyB0aGUgc3BlYyBhbmQgbmVlZHMgdG8gYmUgY29y cmVjdGVkLgpUaGUgc2FtZSBzaXR1YXRpb24gb2NjdXJzIGluIGRybV9oZG1pX3ZlbmRvcl9pbmZv ZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUKYW5kIHNob3VsZCBzZXQgSERNSV9WSUMgd2hlbiB0aGUg bW9kZSBpcyBvbmUgZGVmaW5lZCBpbiBIRE1JIDEuNGIgNEsKbW9kZXMuCi0tLQogZHJpdmVycy9n cHUvZHJtL2RybV9lZGlkLmMgfCA5NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLQogMSBmaWxlIGNoYW5nZWQsIDkyIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2VkaWQuYwppbmRleCA2NDljZmQ4YjQyMDAuLjBmZWE5YmY0ZWM2NyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlk LmMKQEAgLTEzMDYsNiArMTMwNiwzNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5 X21vZGUgZWRpZF80a19tb2Rlc1tdID0gewogCSAgLnZyZWZyZXNoID0gMjQsIH0sCiB9OwogCisv KgorICogNGsgbW9kZXMgb2YgSERNSSAxLjQgZGVmaW5lZCBpbiBIRE1JIDIuMC4gSW5kZXggdXNp bmcgdGhlIFZJQy4KKyAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlIGhk bWlfMV80X2VkaWRfNGtfbW9kZXNbXSA9IHsKKwkvKiAwIC0gZHVtbXksIFZJQ3Mgc3RhcnQgYXQg MSAqLworCXsgfSwKKwkvKiAxIC0gMzg0MHgyMTYwQDMwSHogKi8KKwl7IERSTV9NT0RFKCIzODQw eDIxNjAiLCBEUk1fTU9ERV9UWVBFX0RSSVZFUiwgMjk3MDAwLAorCQkgICAzODQwLCA0MDE2LCA0 MTA0LCA0NDAwLCAwLAorCQkgICAyMTYwLCAyMTY4LCAyMTc4LCAyMjUwLCAwLAorCQkgICBEUk1f TU9ERV9GTEFHX1BIU1lOQyB8IERSTV9NT0RFX0ZMQUdfUFZTWU5DKSwKKwkgIC52cmVmcmVzaCA9 IDMwLCAucGljdHVyZV9hc3BlY3RfcmF0aW8gPSBIRE1JX1BJQ1RVUkVfQVNQRUNUXzE2XzksIH0s CisJLyogMiAtIDM4NDB4MjE2MEAyNUh6ICovCisJeyBEUk1fTU9ERSgiMzg0MHgyMTYwIiwgRFJN X01PREVfVFlQRV9EUklWRVIsIDI5NzAwMCwKKwkJICAgMzg0MCwgNDg5NiwgNDk4NCwgNTI4MCwg MCwKKwkJICAgMjE2MCwgMjE2OCwgMjE3OCwgMjI1MCwgMCwKKwkJICAgRFJNX01PREVfRkxBR19Q SFNZTkMgfCBEUk1fTU9ERV9GTEFHX1BWU1lOQyksCisJICAudnJlZnJlc2ggPSAyNSwgLnBpY3R1 cmVfYXNwZWN0X3JhdGlvID0gSERNSV9QSUNUVVJFX0FTUEVDVF8xNl85LCB9LAorCS8qIDMgLSAz ODQweDIxNjBAMjRIeiAqLworCXsgRFJNX01PREUoIjM4NDB4MjE2MCIsIERSTV9NT0RFX1RZUEVf RFJJVkVSLCAyOTcwMDAsCisJCSAgIDM4NDAsIDUxMTYsIDUyMDQsIDU1MDAsIDAsCisJCSAgIDIx NjAsIDIxNjgsIDIxNzgsIDIyNTAsIDAsCisJCSAgIERSTV9NT0RFX0ZMQUdfUEhTWU5DIHwgRFJN X01PREVfRkxBR19QVlNZTkMpLAorCSAgLnZyZWZyZXNoID0gMjQsIC5waWN0dXJlX2FzcGVjdF9y YXRpbyA9IEhETUlfUElDVFVSRV9BU1BFQ1RfMTZfOSwgfSwKKwkvKiA0IC0gNDA5NngyMTYwQDI0 SHogKFNNUFRFKSAqLworCXsgRFJNX01PREUoIjQwOTZ4MjE2MCIsIERSTV9NT0RFX1RZUEVfRFJJ VkVSLCAyOTcwMDAsCisJCSAgIDQwOTYsIDUxMTYsIDUyMDQsIDU1MDAsIDAsCisJCSAgIDIxNjAs IDIxNjgsIDIxNzgsIDIyNTAsIDAsCisJCSAgIERSTV9NT0RFX0ZMQUdfUEhTWU5DIHwgRFJNX01P REVfRkxBR19QVlNZTkMpLAorCSAgLnZyZWZyZXNoID0gMjQsIC5waWN0dXJlX2FzcGVjdF9yYXRp byA9IEhETUlfUElDVFVSRV9BU1BFQ1RfMjU2XzEzNSwgfSwKK307CiAvKioqIEREQyBmZXRjaCBh bmQgYmxvY2sgdmFsaWRhdGlvbiAqKiovCiAKIHN0YXRpYyBjb25zdCB1OCBlZGlkX2hlYWRlcltd ID0gewpAQCAtMzA2MSw2ICszMDkyLDE5IEBAIGhkbWlfbW9kZV9hbHRlcm5hdGVfY2xvY2soY29u c3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmhkbWlfbW9kZSkKIAlyZXR1cm4gY2VhX21vZGVf YWx0ZXJuYXRlX2Nsb2NrKGhkbWlfbW9kZSk7CiB9CiAKKy8qCisgKiBDYWxjdWxhdGUgdGhlIGFs dGVybmF0ZSBjbG9jayBmb3IgSERNSSBtb2RlcyAodGhvc2UgZnJvbSB0aGUgSERNSSB2ZW5kb3IK KyAqIHNwZWNpZmljIGJsb2NrKS4KKyAqCisgKiBJdCdzIGFsbW9zdCBsaWtlIGhkbWlfbW9kZV9h bHRlcm5hdGVfY2xvY2soKSwgYnV0IG5vIGV4Y2VwdGlvbiBmb3IgVklDIDQgbW9kZS4KKyAqIFRo ZXJlIGlzIGFuIGFsdGVybmF0ZSBjbG9jayAoMjMuOThIeikgb2YgVklDIDQgbW9kZSAoNDA5Nngy MTYwQDI0SHopIGluIEhETUkgMi4wCisgKi8KK3N0YXRpYyB1bnNpZ25lZCBpbnQKK2hkbWlfMV80 X21vZGVfYWx0ZXJuYXRlX2Nsb2NrKGNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpoZG1p X21vZGUpCit7CisJcmV0dXJuIGNlYV9tb2RlX2FsdGVybmF0ZV9jbG9jayhoZG1pX21vZGUpOwor fQorCiBzdGF0aWMgdTggZHJtX21hdGNoX2hkbWlfbW9kZV9jbG9ja190b2xlcmFuY2UoY29uc3Qg c3RydWN0IGRybV9kaXNwbGF5X21vZGUgKnRvX21hdGNoLAogCQkJCQkgICAgICB1bnNpZ25lZCBp bnQgY2xvY2tfdG9sZXJhbmNlKQogewpAQCAtMzEyMSwxMSArMzE2NSw1MyBAQCBzdGF0aWMgdTgg ZHJtX21hdGNoX2hkbWlfbW9kZShjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqdG9fbWF0 Y2gpCiAJcmV0dXJuIDA7CiB9CiAKKy8qCisgKiBkcm1fbWF0Y2hfaGRtaV8xXzRfbW9kZSAtIGxv b2sgZm9yIGEgSERNSSAxLjQgbW9kZSBtYXRjaGluZyBnaXZlbiBtb2RlCisgKiBAdG9fbWF0Y2g6 IGRpc3BsYXkgbW9kZQorICoKKyAqIEFuIEhETUkgbW9kZSBpcyBvbmUgZGVmaW5lZCBpbiB0aGUg SERNSSB2ZW5kb3Igc3BlY2lmaWMgYmxvY2suCisgKiBJbiBIRE1JIDIuMCwgb25seSBmZXcgNGsg cmVzb2x1dGlvbnMgd2l0aCBzcGVjaWZpYyBhc3BlY3QgcmF0aW8gc2hvdWxkCisgKiB1dGlsaXpl IEgxNGIgVlNJRi4KKyAqCisgKiBSZXR1cm5zIHRoZSBIRE1JIFZpZGVvIElEIChWSUMpIG9mIHRo ZSBtb2RlIG9yIDAgaWYgaXQgaXNuJ3Qgb25lLgorICovCitzdGF0aWMgdTggZHJtX21hdGNoX2hk bWlfMV80X21vZGUoY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKnRvX21hdGNoKQorewor CXVuc2lnbmVkIGludCBtYXRjaF9mbGFncyA9IERSTV9NT0RFX01BVENIX1RJTUlOR1MgfCBEUk1f TU9ERV9NQVRDSF9GTEFHUzsKKwl1OCB2aWM7CisKKwlpZiAoIXRvX21hdGNoLT5jbG9jaykKKwkJ cmV0dXJuIDA7CisKKwlpZiAodG9fbWF0Y2gtPnBpY3R1cmVfYXNwZWN0X3JhdGlvKQorCQltYXRj aF9mbGFncyB8PSBEUk1fTU9ERV9NQVRDSF9BU1BFQ1RfUkFUSU87CisKKwlmb3IgKHZpYyA9IDE7 IHZpYyA8IEFSUkFZX1NJWkUoaGRtaV8xXzRfZWRpZF80a19tb2Rlcyk7IHZpYysrKSB7CisJCWNv bnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICpoZG1pXzFfNF9tb2RlID0gJmhkbWlfMV80X2Vk aWRfNGtfbW9kZXNbdmljXTsKKwkJdW5zaWduZWQgaW50IGNsb2NrMSwgY2xvY2syOworCisJCS8q IE1ha2Ugc3VyZSB0byBhbHNvIG1hdGNoIGFsdGVybmF0ZSBjbG9ja3MgKi8KKwkJY2xvY2sxID0g aGRtaV8xXzRfbW9kZS0+Y2xvY2s7CisJCWNsb2NrMiA9IGhkbWlfMV80X21vZGVfYWx0ZXJuYXRl X2Nsb2NrKGhkbWlfMV80X21vZGUpOworCisJCWlmICgoS0haMlBJQ09TKHRvX21hdGNoLT5jbG9j aykgPT0gS0haMlBJQ09TKGNsb2NrMSkgfHwKKwkJICAgICBLSFoyUElDT1ModG9fbWF0Y2gtPmNs b2NrKSA9PSBLSFoyUElDT1MoY2xvY2syKSkgJiYKKwkJICAgIGRybV9tb2RlX21hdGNoKHRvX21h dGNoLCBoZG1pXzFfNF9tb2RlLCBtYXRjaF9mbGFncykpCisJCQlyZXR1cm4gdmljOworCX0KKwly ZXR1cm4gMDsKK30KKwogc3RhdGljIGJvb2wgZHJtX3ZhbGlkX2hkbWlfdmljKHU4IHZpYykKIHsK IAlyZXR1cm4gdmljID4gMCAmJiB2aWMgPCBBUlJBWV9TSVpFKGVkaWRfNGtfbW9kZXMpOwogfQog CitzdGF0aWMgYm9vbCBkcm1fdmFsaWRfaGRtaV8xXzRfdmljKHU4IHZpYykKK3sKKwlyZXR1cm4g dmljID4gMCAmJiB2aWMgPCBBUlJBWV9TSVpFKGhkbWlfMV80X2VkaWRfNGtfbW9kZXMpOworfQor CiBzdGF0aWMgaW50CiBhZGRfYWx0ZXJuYXRlX2NlYV9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3Rv ciAqY29ubmVjdG9yLCBzdHJ1Y3QgZWRpZCAqZWRpZCkKIHsKQEAgLTQ4OTQsMTAgKzQ5ODAsMTIg QEAgZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZShzdHJ1Y3QgaGRtaV9h dmlfaW5mb2ZyYW1lICpmcmFtZSwKIAkgKiBIRE1JIDEuNGIgNEsgbW9kZXMKIAkgKi8KIAlpZiAo ZnJhbWUtPnZpZGVvX2NvZGUpIHsKLQkJdTggdmVuZG9yX2lmX3ZpYyA9IGRybV9tYXRjaF9oZG1p X21vZGUobW9kZSk7CisJCXU4IHZlbmRvcl9pZl92aWMgPSBpc19oZG1pMl9zaW5rKGNvbm5lY3Rv cikgPworCQkJZHJtX21hdGNoX2hkbWlfMV80X21vZGUobW9kZSkgOiBkcm1fbWF0Y2hfaGRtaV9t b2RlKG1vZGUpOwogCQlib29sIGlzX3MzZCA9IG1vZGUtPmZsYWdzICYgRFJNX01PREVfRkxBR18z RF9NQVNLOwogCi0JCWlmIChkcm1fdmFsaWRfaGRtaV92aWModmVuZG9yX2lmX3ZpYykgJiYgIWlz X3MzZCkKKwkJaWYgKCFpc19zM2QgJiYgaXNfaGRtaTJfc2luayhjb25uZWN0b3IpID8KKwkJCWRy bV92YWxpZF9oZG1pXzFfNF92aWModmVuZG9yX2lmX3ZpYykgOiBkcm1fdmFsaWRfaGRtaV92aWMo dmVuZG9yX2lmX3ZpYykpCiAJCQlmcmFtZS0+dmlkZW9fY29kZSA9IDA7CiAJfQogCkBAIC01MTI1 LDcgKzUyMTMsOCBAQCBkcm1faGRtaV92ZW5kb3JfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2Rl KHN0cnVjdCBoZG1pX3ZlbmRvcl9pbmZvZnJhbWUgKmZyYW1lLAogCWlmICghaGFzX2hkbWlfaW5m b2ZyYW1lKQogCQlyZXR1cm4gLUVJTlZBTDsKIAotCXZpYyA9IGRybV9tYXRjaF9oZG1pX21vZGUo bW9kZSk7CisJdmljID0gaXNfaGRtaTJfc2luayhjb25uZWN0b3IpID8KKwkJCWRybV9tYXRjaF9o ZG1pXzFfNF9tb2RlKG1vZGUpIDogZHJtX21hdGNoX2hkbWlfbW9kZShtb2RlKTsKIAlzM2RfZmxh Z3MgPSBtb2RlLT5mbGFncyAmIERSTV9NT0RFX0ZMQUdfM0RfTUFTSzsKIAogCS8qCi0tIAoyLjE3 LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmFtZC1n ZnggbWFpbGluZyBsaXN0CmFtZC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vYW1kLWdmeA==