From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v3 07/10] drm/i915: Populate downstream info for HDCP1.4 Date: Fri, 22 Mar 2019 06:14:45 +0530 Message-ID: <20190322004448.14045-8-ramalingam.c@intel.com> References: <20190322004448.14045-1-ramalingam.c@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190322004448.14045-1-ramalingam.c@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, daniel.vetter@ffwll.ch List-Id: intel-gfx@lists.freedesktop.org SW1wbGVtZW50cyBkcm0gYmxvYiBwcm9wZXJ0eSBjb250ZW50X3Byb3RlY3Rpb25fZG93bnN0cmVh bV9pbmZvCnByb3BlcnR5IG9uIEhEQ1AgY2FwYWJsZSBjb25uZWN0b3JzLgoKRG93bnN0cmVhbSB0 b3BvbG9neSBpbmZvIGlzIGdhdGhlcmVkIGFjcm9zcyBhdXRoZW50aWNhdGlvbiBzdGFnZXMKYW5k IHN0b3JlZCBpbiBpbnRlbF9oZGNwLiBXaGVuIEhEQ1AgYXV0aGVudGljYXRpb24gaXMgY29tcGxl dGUsCm5ldyBibG9iIHdpdGggbGF0ZXN0IGRvd25zdHJlYW0gdG9wb2xvZ3kgaW5mb3JtYXRpb24g aXMgdXBkYXRlZCB0bwpjb250ZW50X3Byb3RlY3Rpb25fZG93bnN0cmVhbV9pbmZvIHByb3BlcnR5 LgoKdjI6CiAgJXMvY3BfZG93bnN0cmVhbS9jb250ZW50X3Byb3RlY3Rpb25fZG93bnN0cmVhbSBb ZGFuaWVsXQp2MzoKICAlcy9jb250ZW50X3Byb3RlY3Rpb25fZG93bnN0cmVhbS9oZGNwX3RvcG9s b2d5IFtkYW5pZWxdCgpTaWduZWQtb2ZmLWJ5OiBSYW1hbGluZ2FtIEMgPHJhbWFsaW5nYW0uY0Bp bnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggIHwgIDIgKysK IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYyB8IDMwICsrKysrKysrKysrKysrKysr KysrKysrKysrKysrLQogaW5jbHVkZS9kcm0vZHJtX2hkY3AuaCAgICAgICAgICAgIHwgIDEgKwog aW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oICAgICAgIHwgIDUgKysrKysKIDQgZmlsZXMgY2hh bmdlZCwgMzcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZHJ2LmgKaW5kZXggNGRiMTVlZTgxMDQyLi40NjMyNWZiMzM1MDcgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oCkBAIC00ODIsNiArNDgyLDggQEAgc3RydWN0IGludGVsX2hkY3AgewogCXdhaXRf cXVldWVfaGVhZF90IGNwX2lycV9xdWV1ZTsKIAlhdG9taWNfdCBjcF9pcnFfY291bnQ7CiAJaW50 IGNwX2lycV9jb3VudF9jYWNoZWQ7CisKKwlzdHJ1Y3QgaGRjcF90b3BvbG9neV9pbmZvICp0b3Bv bG9neV9pbmZvOwogfTsKIAogc3RydWN0IGludGVsX2Nvbm5lY3RvciB7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZGNwLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9oZGNwLmMKaW5kZXggOTIxZjA3YzY0MzUwLi4wZTNkN2FmZWNkNWEgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkY3AuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9oZGNwLmMKQEAgLTU4MCw2ICs1ODAsOSBAQCBpbnQgaW50ZWxfaGRjcF9hdXRo X2Rvd25zdHJlYW0oc3RydWN0IGludGVsX2hkY3AgKmhkY3AsCiAJaWYgKG51bV9kb3duc3RyZWFt ID09IDApCiAJCXJldHVybiAtRUlOVkFMOwogCisJaGRjcC0+dG9wb2xvZ3lfaW5mby0+ZGV2aWNl X2NvdW50ID0gbnVtX2Rvd25zdHJlYW07CisJaGRjcC0+dG9wb2xvZ3lfaW5mby0+ZGVwdGggPSBE Uk1fSERDUF9ERVBUSChic3RhdHVzWzFdKTsKKwogCWtzdl9maWZvID0ga2NhbGxvYyhEUk1fSERD UF9LU1ZfTEVOLCBudW1fZG93bnN0cmVhbSwgR0ZQX0tFUk5FTCk7CiAJaWYgKCFrc3ZfZmlmbykK IAkJcmV0dXJuIC1FTk9NRU07CkBAIC01OTMsNiArNTk2LDggQEAgaW50IGludGVsX2hkY3BfYXV0 aF9kb3duc3RyZWFtKHN0cnVjdCBpbnRlbF9oZGNwICpoZGNwLAogCQlyZXR1cm4gLUVQRVJNOwog CX0KIAorCW1lbWNweShoZGNwLT50b3BvbG9neV9pbmZvLT5rc3ZfbGlzdCwga3N2X2ZpZm8sCisJ ICAgICAgIG51bV9kb3duc3RyZWFtICogRFJNX0hEQ1BfS1NWX0xFTik7CiAJLyoKIAkgKiBXaGVu IFYgcHJpbWUgbWlzbWF0Y2hlcywgRFAgU3BlYyBtYW5kYXRlcyByZS1yZWFkIG9mCiAJICogViBw cmltZSBhdGxlYXN0IHR3aWNlLgpAQCAtNjk0LDE1ICs2OTksMjAgQEAgc3RhdGljIGludCBpbnRl bF9oZGNwX2F1dGgoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCQlyZXR1cm4g LUVQRVJNOwogCX0KIAorCWhkY3AtPnRvcG9sb2d5X2luZm8tPnZlcl9pbl9mb3JjZSA9IERSTV9N T0RFX0hEQ1AxNF9JTl9GT1JDRTsKKwltZW1jcHkoaGRjcC0+dG9wb2xvZ3lfaW5mby0+Ymtzdiwg Ymtzdi5zaGltLCBEUk1fTU9ERV9IRENQX0tTVl9MRU4pOworCiAJSTkxNV9XUklURShQT1JUX0hE Q1BfQktTVkxPKHBvcnQpLCBia3N2LnJlZ1swXSk7CiAJSTkxNV9XUklURShQT1JUX0hEQ1BfQktT VkhJKHBvcnQpLCBia3N2LnJlZ1sxXSk7CiAKIAlyZXQgPSBzaGltLT5yZXBlYXRlcl9wcmVzZW50 KGludGVsX2RpZ19wb3J0LCAmcmVwZWF0ZXJfcHJlc2VudCk7CiAJaWYgKHJldCkKIAkJcmV0dXJu IHJldDsKLQlpZiAocmVwZWF0ZXJfcHJlc2VudCkKKwlpZiAocmVwZWF0ZXJfcHJlc2VudCkgewog CQlJOTE1X1dSSVRFKEhEQ1BfUkVQX0NUTCwKIAkJCSAgIGludGVsX2hkY3BfZ2V0X3JlcGVhdGVy X2N0bChpbnRlbF9kaWdfcG9ydCkpOworCQloZGNwLT50b3BvbG9neV9pbmZvLT5pc19yZXBlYXRl ciA9IHRydWU7CisJfQogCiAJcmV0ID0gc2hpbS0+dG9nZ2xlX3NpZ25hbGxpbmcoaW50ZWxfZGln X3BvcnQsIHRydWUpOwogCWlmIChyZXQpCkBAIC03OTgsNiArODA4LDEyIEBAIHN0YXRpYyBpbnQg X2ludGVsX2hkY3BfZGlzYWJsZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCiAJ CXJldHVybiByZXQ7CiAJfQogCisJbWVtc2V0KGhkY3AtPnRvcG9sb2d5X2luZm8sIDAsIHNpemVv ZihzdHJ1Y3QgaGRjcF90b3BvbG9neV9pbmZvKSk7CisKKwlpZiAoZHJtX2Nvbm5lY3Rvcl91cGRh dGVfaGRjcF90b3BvbG9neV9wcm9wZXJ0eSgmY29ubmVjdG9yLT5iYXNlLAorCQkJCQkJY29ubmVj dG9yLT5oZGNwLnRvcG9sb2d5X2luZm8pKQorCQlEUk1fRVJST1IoIkRvd25zdHJlYW1faW5mbyB1 cGRhdGUgZmFpbGVkLlxuIik7CisKIAlEUk1fREVCVUdfS01TKCJIRENQIGlzIGRpc2FibGVkXG4i KTsKIAlyZXR1cm4gMDsKIH0KQEAgLTgzMSw2ICs4NDcsMTAgQEAgc3RhdGljIGludCBfaW50ZWxf aGRjcF9lbmFibGUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCQlyZXQgPSBp bnRlbF9oZGNwX2F1dGgoY29ubmVjdG9yKTsKIAkJaWYgKCFyZXQpIHsKIAkJCWNvbm5lY3Rvci0+ aGRjcC5oZGNwX2VuY3J5cHRlZCA9IHRydWU7CisJCQlpZiAoZHJtX2Nvbm5lY3Rvcl91cGRhdGVf aGRjcF90b3BvbG9neV9wcm9wZXJ0eSgKKwkJCQkJJmNvbm5lY3Rvci0+YmFzZSwKKwkJCQkJY29u bmVjdG9yLT5oZGNwLnRvcG9sb2d5X2luZm8pKQorCQkJCURSTV9FUlJPUigiRG93bnN0cmVhbV9p bmZvIHVwZGF0ZSBmYWlsZWQuXG4iKTsKIAkJCXJldHVybiAwOwogCQl9CiAKQEAgLTE4ODIsNiAr MTkwMiwxNCBAQCBpbnQgaW50ZWxfaGRjcF9pbml0KHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNv bm5lY3RvciwKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCisJcmV0ID0gZHJtX2Nvbm5lY3Rv cl9hdHRhY2hfaGRjcF90b3BvbG9neV9wcm9wZXJ0eSgmY29ubmVjdG9yLT5iYXNlKTsKKwlpZiAo cmV0KQorCQlyZXR1cm4gcmV0OworCisJaGRjcC0+dG9wb2xvZ3lfaW5mbyA9IGt6YWxsb2Moc2l6 ZW9mKCpoZGNwLT50b3BvbG9neV9pbmZvKSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFoZGNwLT50b3Bv bG9neV9pbmZvKQorCQlyZXR1cm4gLUVOT01FTTsKKwogCWhkY3AtPnNoaW0gPSBzaGltOwogCW11 dGV4X2luaXQoJmhkY3AtPm11dGV4KTsKIAlJTklUX0RFTEFZRURfV09SSygmaGRjcC0+Y2hlY2tf d29yaywgaW50ZWxfaGRjcF9jaGVja193b3JrKTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2Ry bV9oZGNwLmggYi9pbmNsdWRlL2RybS9kcm1faGRjcC5oCmluZGV4IDY1MmFhZjVkNjU4ZS4uNjU0 YTE3MGYwM2ViIDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1faGRjcC5oCisrKyBiL2luY2x1 ZGUvZHJtL2RybV9oZGNwLmgKQEAgLTIzLDYgKzIzLDcgQEAKICNkZWZpbmUgRFJNX0hEQ1BfVl9Q UklNRV9QQVJUX0xFTgkJNAogI2RlZmluZSBEUk1fSERDUF9WX1BSSU1FX05VTV9QQVJUUwkJNQog I2RlZmluZSBEUk1fSERDUF9OVU1fRE9XTlNUUkVBTSh4KQkJKHggJiAweDdmKQorI2RlZmluZSBE Uk1fSERDUF9ERVBUSCh4KQkJCSgoeCkgJiAweDcpCiAjZGVmaW5lIERSTV9IRENQX01BWF9DQVND QURFX0VYQ0VFREVEKHgpCSh4ICYgQklUKDMpKQogI2RlZmluZSBEUk1fSERDUF9NQVhfREVWSUNF X0VYQ0VFREVEKHgpCQkoeCAmIEJJVCg3KSkKIApkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2Ry bS9kcm1fbW9kZS5oIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oCmluZGV4IDAzZDNhYTJi MWE0OS4uNzMzZGI3MjgzZTU3IDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2RybV9tb2Rl LmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oCkBAIC0yMTYsOCArMjE2LDEzIEBA IGV4dGVybiAiQyIgewogCiAjZGVmaW5lIERSTV9NT0RFX0hEQ1BfS1NWX0xFTgkJCTUKICNkZWZp bmUgRFJNX01PREVfSERDUF9NQVhfREVWSUNFX0NOVAkJMTI3CisjZGVmaW5lIERSTV9NT0RFX0hE Q1AxNF9JTl9GT1JDRQkJKDEgPDwgMCkKKyNkZWZpbmUgRFJNX01PREVfSERDUDIyX0lOX0ZPUkNF CQkoMSA8PCAxKQogCiBzdHJ1Y3QgaGRjcF90b3BvbG9neV9pbmZvIHsKKwkvKiBWZXJzaW9uIG9m IEhEQ1AgYXV0aGVudGljYXRlZCAoMS40LzIuMikgKi8KKwlfX3UzMiB2ZXJfaW5fZm9yY2U7CisK IAkvKiBLU1Ygb2YgaW1tZWRpYXRlIEhEQ1AgU2luay4gSW4gTGl0dGxlLUVuZGlhbiBGb3JtYXQu ICovCiAJY2hhciBia3N2W0RSTV9NT0RFX0hEQ1BfS1NWX0xFTl07CiAKLS0gCjIuMTkuMQoKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1h aWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs