From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ramalingam C Subject: [PATCH v3 06/10] drm: Add CP downstream_info property Date: Fri, 22 Mar 2019 06:14:44 +0530 Message-ID: <20190322004448.14045-7-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: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, daniel.vetter@ffwll.ch List-Id: dri-devel@lists.freedesktop.org VGhpcyBwYXRjaCBhZGRzIGEgb3B0aW9uYWwgQ1AgZG93bnN0cmVhbSBpbmZvIGJsb2IgcHJvcGVy dHkgdG8gdGhlCmNvbm5lY3RvcnMuIFRoaXMgZW5hYmxlcyB0aGUgVXNlcnNwYWNlIHRvIHJlYWQg dGhlIGluZm9ybWF0aW9uIG9mIEhEQ1AKYXV0aGVudGljYXRlZCBkb3duc3RyZWFtIHRvcG9sb2d5 LgoKRHJpdmVyIHdpbGwgdXBkYXRlZCB0aGlzIGJsb2Igd2l0aCBhbGwgZG93bnN0cmVhbSBpbmZv cm1hdGlvbiBhdCB0aGUKZW5kIG9mIHRoZSBhdXRoZW50aWNhdGlvbi4KCkluIGNhc2UgdXNlcnNw YWNlIGNvbmZpZ3VyZXMgdGhpcyBwbGF0Zm9ybSBhcyByZXBlYXRlciwgdGhlbiB0aGlzCmluZm9y bWF0aW9uIGlzIG5lZWRlZCBmb3IgdGhlIGF1dGhlbnRpY2F0aW9uIHdpdGggdXBzdHJlYW0gSERD UAp0cmFuc21pdHRlci4KCnYyOgogIHMvY3BfZG93bnN0cmVhbS9jb250ZW50X3Byb3RlY3Rpb25f ZG93bnN0cmVhbSBbZGFuaWVsXQp2MzoKICBzL2NvbnRlbnRfcHJvdGVjdGlvbl9kb3duc3RyZWFt L2hkY3BfdG9wb2xvZ3kgW2RhbmllbF0KClNpZ25lZC1vZmYtYnk6IFJhbWFsaW5nYW0gQyA8cmFt YWxpbmdhbS5jQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBp LmMgfCAgNCArKwogZHJpdmVycy9ncHUvZHJtL2RybV9jb25uZWN0b3IuYyAgIHwgODYgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKwogaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oICAg ICAgIHwgMTIgKysrKysKIGluY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaCAgICAgICB8IDI3ICsr KysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgMTI5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY191YXBpLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2F0b21pY191YXBpLmMKaW5kZXggODU3Y2E2ZmE2ZmQwLi40MjQ2ZTg5ODhjMjkgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX3VhcGkuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vZHJtX2F0b21pY191YXBpLmMKQEAgLTgyNiw2ICs4MjYsMTAgQEAgZHJtX2F0b21pY19jb25u ZWN0b3JfZ2V0X3Byb3BlcnR5KHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiAJCSp2 YWwgPSBzdGF0ZS0+Y29udGVudF9wcm90ZWN0aW9uOwogCX0gZWxzZSBpZiAocHJvcGVydHkgPT0g Y29ubmVjdG9yLT5oZGNwX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eSkgewogCQkqdmFsID0gc3RhdGUt PmhkY3BfY29udGVudF90eXBlOworCX0gZWxzZSBpZiAocHJvcGVydHkgPT0KKwkJICAgY29ubmVj dG9yLT5oZGNwX3RvcG9sb2d5X3Byb3BlcnR5KSB7CisJCSp2YWwgPSBjb25uZWN0b3ItPmhkY3Bf dG9wb2xvZ3lfYmxvYl9wdHIgPworCQkJY29ubmVjdG9yLT5oZGNwX3RvcG9sb2d5X2Jsb2JfcHRy LT5iYXNlLmlkIDogMDsKIAl9IGVsc2UgaWYgKHByb3BlcnR5ID09IGNvbmZpZy0+d3JpdGViYWNr X2ZiX2lkX3Byb3BlcnR5KSB7CiAJCS8qIFdyaXRlYmFjayBmcmFtZWJ1ZmZlciBpcyBvbmUtc2hv dCwgd3JpdGUgYW5kIGZvcmdldCAqLwogCQkqdmFsID0gMDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9kcm1fY29ubmVjdG9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Nvbm5lY3Rvci5j CmluZGV4IGZmNjFjMzIwODMwNy4uMGRlOGI0NDFhNDQ5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2Nvbm5lY3Rvci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fY29ubmVjdG9y LmMKQEAgLTI0Niw2ICsyNDYsNyBAQCBpbnQgZHJtX2Nvbm5lY3Rvcl9pbml0KHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCiAJbXV0ZXhfaW5pdCgmY29ubmVjdG9yLT5tdXRleCk7CiAJY29ubmVjdG9y LT5lZGlkX2Jsb2JfcHRyID0gTlVMTDsKIAljb25uZWN0b3ItPnRpbGVfYmxvYl9wdHIgPSBOVUxM OworCWNvbm5lY3Rvci0+aGRjcF90b3BvbG9neV9ibG9iX3B0ciA9IE5VTEw7CiAJY29ubmVjdG9y LT5zdGF0dXMgPSBjb25uZWN0b3Jfc3RhdHVzX3Vua25vd247CiAJY29ubmVjdG9yLT5kaXNwbGF5 X2luZm8ucGFuZWxfb3JpZW50YXRpb24gPQogCQlEUk1fTU9ERV9QQU5FTF9PUklFTlRBVElPTl9V TktOT1dOOwpAQCAtOTg2LDYgKzk4NywyNSBAQCBEUk1fRU5VTV9OQU1FX0ZOKGRybV9nZXRfaGRj cF9jb250ZW50X3R5cGVfbmFtZSwKICAqCWF1dGhlbnRpY2F0aW9uIHByb2Nlc3MuIElmIGNvbnRl bnQgdHlwZSBpcyBjaGFuZ2VkIHdoZW4KICAqCWNvbnRlbnRfcHJvdGVjdGlvbiBpcyBub3QgVU5E RVNJUkVELCB0aGVuIGtlcm5lbCB3aWxsIGRpc2FibGUgdGhlIEhEQ1AKICAqCWFuZCByZS1lbmFi bGUgd2l0aCBuZXcgdHlwZSBpbiB0aGUgc2FtZSBhdG9taWMgY29tbWl0CisgKiBIRENQIFRvcG9s b2d5OgorICoJVGhpcyBibG9iIHByb3BlcnR5IGlzIHVzZWQgdG8gcGFzcyB0aGUgSERDUCBkb3du c3RyZWFtIHRvcG9sb2d5IGRldGFpbHMKKyAqCW9mIGEgSERDUCBlbmNyeXB0ZWQgY29ubmVjdG9y LCBmcm9tIGtlcm5lbCB0byB1c2Vyc3BhY2UuCisgKglUaGlzIHByb3ZpZGVzIGFsbCByZXF1aXJl ZCBpbmZvcm1hdGlvbiB0byB1c2Vyc3BhY2UsIHNvIHRoYXQgdXNlcnNwYWNlCisgKgljYW4gaW1w bGVtZW50IHRoZSBIRENQIHJlcGVhdGVyIHVzaW5nIHRoZSBrZXJuZWwgYXMgZG93bnN0cmVhbSBw b3J0cyBvZgorICoJdGhlIHJlcGVhdGVyLiBhcyBpbGx1c3RyYXRlZCBiZWxvdzoKKyAqCisgKiAg ICAgICAgICAgICAgICAgICAgICAgICAgSERDUCBSZXBlYXRlcnMKKyAqICstLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwKKyAqIHwgICBVc2Vyc3BhY2UgSERDUCBSZWNlaXZlciAgKy0tLS0t PiAgICBLTUQgSERDUCB0cmFuc21pdHRlcnMgIHwKKyAqIHwgICAgICAoVXBzdHJlYW0gUG9ydCkg ICAgICA8LS0tLS0tKyAgICAgKERvd25zdHJlYW0gUG9ydHMpICAgIHwKKyAqIHwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAq IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKglLZXJuZWwgd2lsbCBwb3B1bGF0ZSB0aGlzIGJs b2Igb25seSB3aGVuIHRoZSBIRENQIGF1dGhlbnRpY2F0aW9uIGlzCisgKglzdWNjZXNzZnVsLgog ICoKICAqIG1heCBicGM6CiAgKglUaGlzIHJhbmdlIHByb3BlcnR5IGlzIHVzZWQgYnkgdXNlcnNw YWNlIHRvIGxpbWl0IHRoZSBiaXQgZGVwdGguIFdoZW4KQEAgLTE2MTQsNiArMTYzNCw3MiBAQCBk cm1fY29ubmVjdG9yX2F0dGFjaF9oZGNwX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eShzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqCiB9CiBFWFBPUlRfU1lNQk9MKGRybV9jb25uZWN0b3JfYXR0YWNoX2hkY3Bf Y29udGVudF90eXBlX3Byb3BlcnR5KTsKIAorLyoqCisgKiBkcm1fY29ubmVjdG9yX2F0dGFjaF9o ZGNwX3RvcG9sb2d5X3Byb3BlcnR5IC0gYXR0YWNoIGhkY3AgdG9wb2xvZ3kgcHJvcGVydHkKKyAq CisgKiBAY29ubmVjdG9yOiBjb25uZWN0b3IgdG8gYXR0YWNoIGhkY3AgdG9wb2xvZ3kgcHJvcGVy dHkgd2l0aC4KKyAqCisgKiBUaGlzIGlzIHVzZWQgdG8gYWRkIHN1cHBvcnQgZm9yIGhkY3AgdG9w b2xvZ3kgc3VwcG9ydCBvbiBzZWxlY3QgY29ubmVjdG9ycy4KKyAqIFdoZW4gSW50ZWwgcGxhdGZv cm0gaXMgY29uZmlndXJlZCBhcyByZXBlYXRlciwgdGhpcyBkb3duc3RyZWFtIGluZm8gaXMgdXNl ZAorICogYnkgdXNlcnNwYWNlLCB0byBjb21wbGV0ZSB0aGUgcmVwZWF0ZXIgYXV0aGVudGljYXRp b24gb2YgSERDUCBzcGVjaWZpY2F0aW9uCisgKiB3aXRoIHVwc3RyZWFtIEhEQ1AgdHJhbnNtaXR0 ZXIuCisgKgorICogVGhlIGJsb2JfaWQgb2YgdGhlIGhkY3AgdG9wb2xvZ3kgaW5mbyB3aWxsIGJl IHNldCB0bworICogJmRybV9jb25uZWN0b3Jfc3RhdGUuaGRjcF90b3BvbG9neQorICoKKyAqIFJl dHVybnM6CisgKiBaZXJvIG9uIHN1Y2Nlc3MsIG5lZ2F0aXZlIGVycm5vIG9uIGZhaWx1cmUuCisg Ki8KK2ludCBkcm1fY29ubmVjdG9yX2F0dGFjaF9oZGNwX3RvcG9sb2d5X3Byb3BlcnR5KHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCit7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9 IGNvbm5lY3Rvci0+ZGV2OworCXN0cnVjdCBkcm1fcHJvcGVydHkgKnByb3A7CisKKwlwcm9wID0g ZHJtX3Byb3BlcnR5X2NyZWF0ZShkZXYsIERSTV9NT0RFX1BST1BfQkxPQiB8CisJCQkJICAgRFJN X01PREVfUFJPUF9JTU1VVEFCTEUsCisJCQkJICAgIkhEQ1AgVG9wb2xvZ3kiLCAwKTsKKwlpZiAo IXByb3ApCisJCXJldHVybiAtRU5PTUVNOworCisJZHJtX29iamVjdF9hdHRhY2hfcHJvcGVydHko JmNvbm5lY3Rvci0+YmFzZSwgcHJvcCwgMCk7CisKKwljb25uZWN0b3ItPmhkY3BfdG9wb2xvZ3lf cHJvcGVydHkgPSBwcm9wOworCisJcmV0dXJuIDA7Cit9CitFWFBPUlRfU1lNQk9MKGRybV9jb25u ZWN0b3JfYXR0YWNoX2hkY3BfdG9wb2xvZ3lfcHJvcGVydHkpOworCisvKioKKyAqIGRybV9jb25u ZWN0b3JfdXBkYXRlX2hkY3BfdG9wb2xvZ3lfcHJvcGVydHkgLSB1cGRhdGUgdGhlIGhkY3AgdG9w b2xvZ3kKKyAqIHByb3BlcnR5IG9mIGEgY29ubmVjdG9yCisgKiBAY29ubmVjdG9yOiBkcm0gY29u bmVjdG9yLCB0aGUgdG9wb2xvZ3kgaXMgYXNzb2NpYXRlZCB0bworICogQGhkY3BfdG9wb2xvZ3lf aW5mbzogbmV3IGNvbnRlbnQgZm9yIHRoZSBibG9iIG9mIGhkY3BfdG9wb2xvZ3kgcHJvcGVydHkK KyAqCisgKiBUaGlzIGZ1bmN0aW9uIGNyZWF0ZXMgYSBuZXcgYmxvYiBtb2Rlc2V0IG9iamVjdCBh bmQgYXNzaWducyBpdHMgaWQgdG8gdGhlCisgKiBjb25uZWN0b3IncyBoZGNwX3RvcG9sb2d5IHBy b3BlcnR5LgorICoKKyAqIFJldHVybnM6CisgKiBaZXJvIG9uIHN1Y2Nlc3MsIG5lZ2F0aXZlIGVy cm5vIG9uIGZhaWx1cmUuCisgKi8KK2ludAorZHJtX2Nvbm5lY3Rvcl91cGRhdGVfaGRjcF90b3Bv bG9neV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAorCQkJCQljb25z dCBzdHJ1Y3QgaGRjcF90b3BvbG9neV9pbmZvICppbmZvKQoreworCXN0cnVjdCBkcm1fZGV2aWNl ICpkZXYgPSBjb25uZWN0b3ItPmRldjsKKwlpbnQgcmV0OworCisJaWYgKCFpbmZvKQorCQlyZXR1 cm4gLUVJTlZBTDsKKworCXJldCA9IGRybV9wcm9wZXJ0eV9yZXBsYWNlX2dsb2JhbF9ibG9iKGRl diwKKwkJCSZjb25uZWN0b3ItPmhkY3BfdG9wb2xvZ3lfYmxvYl9wdHIsCisJCQlzaXplb2Yoc3Ry dWN0IGhkY3BfdG9wb2xvZ3lfaW5mbyksCisJCQlpbmZvLCAmY29ubmVjdG9yLT5iYXNlLAorCQkJ Y29ubmVjdG9yLT5oZGNwX3RvcG9sb2d5X3Byb3BlcnR5KTsKKwlyZXR1cm4gcmV0OworfQorRVhQ T1JUX1NZTUJPTChkcm1fY29ubmVjdG9yX3VwZGF0ZV9oZGNwX3RvcG9sb2d5X3Byb3BlcnR5KTsK KwogLyoqCiAgKiBkcm1fbW9kZV9jcmVhdGVfYXNwZWN0X3JhdGlvX3Byb3BlcnR5IC0gY3JlYXRl IGFzcGVjdCByYXRpbyBwcm9wZXJ0eQogICogQGRldjogRFJNIGRldmljZQpkaWZmIC0tZ2l0IGEv aW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5o CmluZGV4IGYwODMwOTg1MzY3Zi4uYzAxNmEwYmNlZGFjIDEwMDY0NAotLS0gYS9pbmNsdWRlL2Ry bS9kcm1fY29ubmVjdG9yLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Nvbm5lY3Rvci5oCkBAIC0x MDQ3LDYgKzEwNDcsMTMgQEAgc3RydWN0IGRybV9jb25uZWN0b3IgewogCSAqLwogCXN0cnVjdCBk cm1fcHJvcGVydHkgKmhkY3BfY29udGVudF90eXBlX3Byb3BlcnR5OwogCisJLyoqCisJICogQGhk Y3BfdG9wb2xvZ3lfcHJvcGVydHk6IERSTSBCTE9CIHByb3BlcnR5IGZvciBoZGNwIGRvd25zdHJl YW0KKwkgKiB0b3BvbG9neSBpbmZvcm1hdGlvbi4KKwkgKi8KKwlzdHJ1Y3QgZHJtX3Byb3BlcnR5 ICpoZGNwX3RvcG9sb2d5X3Byb3BlcnR5OworCXN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqaGRj cF90b3BvbG9neV9ibG9iX3B0cjsKKwogCS8qKgogCSAqIEBwYXRoX2Jsb2JfcHRyOgogCSAqCkBA IC0xMzI0LDYgKzEzMzEsMTEgQEAgaW50IGRybV9jb25uZWN0b3JfYXR0YWNoX2NvbnRlbnRfcHJv dGVjdGlvbl9wcm9wZXJ0eSgKIAkJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBp bnQgZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfaGRjcF9jb250ZW50X3R5cGVfcHJvcGVydHkoCiAJCXN0 cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOworaW50IGRybV9jb25uZWN0b3JfYXR0YWNo X2hkY3BfdG9wb2xvZ3lfcHJvcGVydHkoCisJCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0 b3IpOworaW50IGRybV9jb25uZWN0b3JfdXBkYXRlX2hkY3BfdG9wb2xvZ3lfcHJvcGVydHkoCisJ CXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCisJCWNvbnN0IHN0cnVjdCBoZGNwX3Rv cG9sb2d5X2luZm8gKmluZm8pOwogaW50IGRybV9tb2RlX2NyZWF0ZV9hc3BlY3RfcmF0aW9fcHJv cGVydHkoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiBpbnQgZHJtX21vZGVfY3JlYXRlX2NvbG9y c3BhY2VfcHJvcGVydHkoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBpbnQgZHJt X21vZGVfY3JlYXRlX2NvbnRlbnRfdHlwZV9wcm9wZXJ0eShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 KTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vZHJtX21vZGUuaCBiL2luY2x1ZGUvdWFw aS9kcm0vZHJtX21vZGUuaAppbmRleCA0NDQxMmU4Yjc3Y2QuLjAzZDNhYTJiMWE0OSAxMDA2NDQK LS0tIGEvaW5jbHVkZS91YXBpL2RybS9kcm1fbW9kZS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0v ZHJtX21vZGUuaApAQCAtMjE0LDYgKzIxNCwzMyBAQCBleHRlcm4gIkMiIHsKICNkZWZpbmUgRFJN X01PREVfSERDUF9DT05URU5UX1RZUEUwCQkwCiAjZGVmaW5lIERSTV9NT0RFX0hEQ1BfQ09OVEVO VF9UWVBFMQkJMQogCisjZGVmaW5lIERSTV9NT0RFX0hEQ1BfS1NWX0xFTgkJCTUKKyNkZWZpbmUg RFJNX01PREVfSERDUF9NQVhfREVWSUNFX0NOVAkJMTI3CisKK3N0cnVjdCBoZGNwX3RvcG9sb2d5 X2luZm8geworCS8qIEtTViBvZiBpbW1lZGlhdGUgSERDUCBTaW5rLiBJbiBMaXR0bGUtRW5kaWFu IEZvcm1hdC4gKi8KKwljaGFyIGJrc3ZbRFJNX01PREVfSERDUF9LU1ZfTEVOXTsKKworCS8qIFdo ZXRoZXIgSW1tZWRpYXRlIEhEQ1Agc2luayBpcyBhIHJlcGVhdGVyPyAqLworCWJvb2wgaXNfcmVw ZWF0ZXI7CisKKwkvKiBEZXB0aCByZWNlaXZlZCBmcm9tIGltbWVkaWF0ZSBkb3duc3RyZWFtIHJl cGVhdGVyICovCisJX191OCBkZXB0aDsKKworCS8qIERldmljZSBjb3VudCByZWNlaXZlZCBmcm9t IGltbWVkaWF0ZSBkb3duc3RyZWFtIHJlcGVhdGVyICovCisJX191MzIgZGV2aWNlX2NvdW50Owor CisJLyoKKwkgKiBNYXggYnVmZmVyIHJlcXVpcmVkIHRvIGhvbGQga3N2IGxpc3QgcmVjZWl2ZWQg ZnJvbSBpbW1lZGlhdGUKKwkgKiByZXBlYXRlci4gSW4gdGhpcyBhcnJheSBmaXJzdCBkZXZpY2Vf Y291bnQgKiBEUk1fTU9ERV9IRENQX0tTVl9MRU4KKwkgKiB3aWxsIGhvbGQgdGhlIHZhbGlkIGtz diBieXRlcy4KKwkgKiBJZiBhdXRoZW50aWNhdGlvbiBzcGVjaWZpY2F0aW9uIGlzCisJICoJSERD UDEuNCAtIGVhY2ggS1NWJ3MgQnl0ZXMgd2lsbCBiZSBpbiBMaXR0bGUtRW5kaWFuIGZvcm1hdC4K KwkgKglIRENQMi4yIC0gZWFjaCBLU1YncyBCeXRlcyB3aWxsIGJlIGluIEJpZy1FbmRpYW4gZm9y bWF0LgorCSAqLworCWNoYXIga3N2X2xpc3RbRFJNX01PREVfSERDUF9LU1ZfTEVOICogRFJNX01P REVfSERDUF9NQVhfREVWSUNFX0NOVF07Cit9OworCiBzdHJ1Y3QgZHJtX21vZGVfbW9kZWluZm8g ewogCV9fdTMyIGNsb2NrOwogCV9fdTE2IGhkaXNwbGF5OwotLSAKMi4xOS4xCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=