From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hai Li Subject: [PATCH 2/2] drm/msm/dsi: Rename *dual panel* to *dual DSI* Date: Wed, 10 Jun 2015 13:18:18 -0400 Message-ID: <1433956698-7794-3-git-send-email-hali@codeaurora.org> References: <1433956698-7794-1-git-send-email-hali@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1433956698-7794-1-git-send-email-hali@codeaurora.org> 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 Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org VGhlIGN1cnJlbnQgdGVybSBvZiAqZHVhbCBwYW5lbCogaW4gRFNJIGRyaXZlciBjb2RlIGNhdXNl cyBjb25mdXNpb24uCkl0IGlzIHN1cHBvc2VkIHRvIGluZGljYXRlIHRoZSBwYW5lbCB1c2luZyB0 d28gRFNJIGxpbmtzLiBSZW5hbWUgaXQKdG8gKmR1YWwgRFNJKi4KClNpZ25lZC1vZmYtYnk6IEhh aSBMaSA8aGFsaUBjb2RlYXVyb3JhLm9yZz4KLS0tCiBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUv YmluZGluZ3MvZHJtL21zbS9kc2kudHh0IHwgMTIgKystLQogZHJpdmVycy9ncHUvZHJtL21zbS9k c2kvZHNpX21hbmFnZXIuYyAgICAgICAgICAgICB8IDg0ICsrKysrKysrKysrLS0tLS0tLS0tLS0t CiAyIGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMoKyksIDQ4IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy9kcm0vbXNtL2RzaS50 eHQgYi9Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvZHJtL21zbS9kc2kudHh0Cmlu ZGV4IGNkOGZlNmMuLjZjY2Q4NjAgMTAwNjQ0Ci0tLSBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJl ZS9iaW5kaW5ncy9kcm0vbXNtL2RzaS50eHQKKysrIGIvRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVl L2JpbmRpbmdzL2RybS9tc20vZHNpLnR4dApAQCAtMzAsMTEgKzMwLDExIEBAIE9wdGlvbmFsIHBy b3BlcnRpZXM6CiAtIHBhbmVsQDA6IE5vZGUgb2YgcGFuZWwgY29ubmVjdGVkIHRvIHRoaXMgRFNJ IGNvbnRyb2xsZXIuCiAgIFNlZSBmaWxlcyBpbiBEb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmlu ZGluZ3MvcGFuZWwvIGZvciBlYWNoIHN1cHBvcnRlZAogICBwYW5lbC4KLS0gcWNvbSxkdWFsLXBh bmVsLW1vZGU6IEJvb2xlYW4gdmFsdWUgaW5kaWNhdGluZyBpZiB0aGUgRFNJIGNvbnRyb2xsZXIg aXMKKy0gcWNvbSxkdWFsLWRzaS1tb2RlOiBCb29sZWFuIHZhbHVlIGluZGljYXRpbmcgaWYgdGhl IERTSSBjb250cm9sbGVyIGlzCiAgIGRyaXZpbmcgYSBwYW5lbCB3aGljaCBuZWVkcyAyIERTSSBs aW5rcy4KLS0gcWNvbSxtYXN0ZXItcGFuZWw6IEJvb2xlYW4gdmFsdWUgaW5kaWNhdGluZyBpZiB0 aGUgRFNJIGNvbnRyb2xsZXIgaXMgZHJpdmluZworLSBxY29tLG1hc3Rlci1kc2k6IEJvb2xlYW4g dmFsdWUgaW5kaWNhdGluZyBpZiB0aGUgRFNJIGNvbnRyb2xsZXIgaXMgZHJpdmluZwogICB0aGUg bWFzdGVyIGxpbmsgb2YgdGhlIDItRFNJIHBhbmVsLgotLSBxY29tLHN5bmMtZHVhbC1wYW5lbDog Qm9vbGVhbiB2YWx1ZSBpbmRpY2F0aW5nIGlmIHRoZSBEU0kgY29udHJvbGxlciBpcworLSBxY29t LHN5bmMtZHVhbC1kc2k6IEJvb2xlYW4gdmFsdWUgaW5kaWNhdGluZyBpZiB0aGUgRFNJIGNvbnRy b2xsZXIgaXMKICAgZHJpdmluZyBhIDItRFNJIHBhbmVsIHdob3NlIDIgbGlua3MgbmVlZCByZWNl aXZlIGNvbW1hbmQgc2ltdWx0YW5lb3VzbHkuCiAtIGludGVycnVwdC1wYXJlbnQ6IHBoYW5kbGUg dG8gdGhlIE1EUCBibG9jayBpZiB0aGUgaW50ZXJydXB0IHNpZ25hbCBpcyByb3V0ZWQKICAgdGhy b3VnaCBNRFAgYmxvY2sKQEAgLTkwLDkgKzkwLDkgQEAgRXhhbXBsZToKIAogCQlxY29tLGRzaS1w aHkgPSA8Jm1kc3NfZHNpX3BoeTA+OwogCi0JCXFjb20sZHVhbC1wYW5lbC1tb2RlOwotCQlxY29t LG1hc3Rlci1wYW5lbDsKLQkJcWNvbSxzeW5jLWR1YWwtcGFuZWw7CisJCXFjb20sZHVhbC1kc2kt bW9kZTsKKwkJcWNvbSxtYXN0ZXItZHNpOworCQlxY29tLHN5bmMtZHVhbC1kc2k7CiAKIAkJcGFu ZWw6IHBhbmVsQDAgewogCQkJY29tcGF0aWJsZSA9ICJzaGFycCxscTEwMXIxc3gwMSI7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2RzaS9kc2lfbWFuYWdlci5jIGIvZHJpdmVycy9n cHUvZHJtL21zbS9kc2kvZHNpX21hbmFnZXIuYwppbmRleCBjZmE2MzJmLi5iZDI0N2I3IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2RzaS9kc2lfbWFuYWdlci5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9tc20vZHNpL2RzaV9tYW5hZ2VyLmMKQEAgLTI5LDE2ICsyOSwxNiBAQAogc3Ry dWN0IG1zbV9kc2lfbWFuYWdlciB7CiAJc3RydWN0IG1zbV9kc2kgKmRzaVtEU0lfTUFYXTsKIAot CWJvb2wgaXNfZHVhbF9wYW5lbDsKKwlib29sIGlzX2R1YWxfZHNpOwogCWJvb2wgaXNfc3luY19u ZWVkZWQ7Ci0JaW50IG1hc3Rlcl9wYW5lbF9pZDsKKwlpbnQgbWFzdGVyX2RzaV9saW5rX2lkOwog fTsKIAogc3RhdGljIHN0cnVjdCBtc21fZHNpX21hbmFnZXIgbXNtX2RzaW1fZ2xiOwogCi0jZGVm aW5lIElTX0RVQUxfUEFORUwoKQkJKG1zbV9kc2ltX2dsYi5pc19kdWFsX3BhbmVsKQorI2RlZmlu ZSBJU19EVUFMX0RTSSgpCQkobXNtX2RzaW1fZ2xiLmlzX2R1YWxfZHNpKQogI2RlZmluZSBJU19T WU5DX05FRURFRCgpCShtc21fZHNpbV9nbGIuaXNfc3luY19uZWVkZWQpCi0jZGVmaW5lIElTX01B U1RFUl9QQU5FTChpZCkJKG1zbV9kc2ltX2dsYi5tYXN0ZXJfcGFuZWxfaWQgPT0gaWQpCisjZGVm aW5lIElTX01BU1RFUl9EU0lfTElOSyhpZCkJKG1zbV9kc2ltX2dsYi5tYXN0ZXJfZHNpX2xpbmtf aWQgPT0gaWQpCiAKIHN0YXRpYyBpbmxpbmUgc3RydWN0IG1zbV9kc2kgKmRzaV9tZ3JfZ2V0X2Rz aShpbnQgaWQpCiB7CkBAIC01MCwyMyArNTAsMjMgQEAgc3RhdGljIGlubGluZSBzdHJ1Y3QgbXNt X2RzaSAqZHNpX21ncl9nZXRfb3RoZXJfZHNpKGludCBpZCkKIAlyZXR1cm4gbXNtX2RzaW1fZ2xi LmRzaVsoaWQgKyAxKSAlIERTSV9NQVhdOwogfQogCi1zdGF0aWMgaW50IGRzaV9tZ3JfcGFyc2Vf ZHVhbF9wYW5lbChzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wLCBpbnQgaWQpCitzdGF0aWMgaW50IGRz aV9tZ3JfcGFyc2VfZHVhbF9kc2koc3RydWN0IGRldmljZV9ub2RlICpucCwgaW50IGlkKQogewog CXN0cnVjdCBtc21fZHNpX21hbmFnZXIgKm1zbV9kc2ltID0gJm1zbV9kc2ltX2dsYjsKIAotCS8q IFdlIGFzc3VtZSAyIGRzaSBub2RlcyBoYXZlIHRoZSBzYW1lIGluZm9ybWF0aW9uIG9mIGR1YWwt cGFuZWwgYW5kCisJLyogV2UgYXNzdW1lIDIgZHNpIG5vZGVzIGhhdmUgdGhlIHNhbWUgaW5mb3Jt YXRpb24gb2YgZHVhbC1kc2kgYW5kCiAJICogc3luYy1tb2RlLCBhbmQgb25seSBvbmUgbm9kZSBz cGVjaWZpZXMgbWFzdGVyIGluIGNhc2Ugb2YgZHVhbCBtb2RlLgogCSAqLwotCWlmICghbXNtX2Rz aW0tPmlzX2R1YWxfcGFuZWwpCi0JCW1zbV9kc2ltLT5pc19kdWFsX3BhbmVsID0gb2ZfcHJvcGVy dHlfcmVhZF9ib29sKAotCQkJCQkJbnAsICJxY29tLGR1YWwtcGFuZWwtbW9kZSIpOworCWlmICgh bXNtX2RzaW0tPmlzX2R1YWxfZHNpKQorCQltc21fZHNpbS0+aXNfZHVhbF9kc2kgPSBvZl9wcm9w ZXJ0eV9yZWFkX2Jvb2woCisJCQkJCQlucCwgInFjb20sZHVhbC1kc2ktbW9kZSIpOwogCi0JaWYg KG1zbV9kc2ltLT5pc19kdWFsX3BhbmVsKSB7Ci0JCWlmIChvZl9wcm9wZXJ0eV9yZWFkX2Jvb2wo bnAsICJxY29tLG1hc3Rlci1wYW5lbCIpKQotCQkJbXNtX2RzaW0tPm1hc3Rlcl9wYW5lbF9pZCA9 IGlkOworCWlmIChtc21fZHNpbS0+aXNfZHVhbF9kc2kpIHsKKwkJaWYgKG9mX3Byb3BlcnR5X3Jl YWRfYm9vbChucCwgInFjb20sbWFzdGVyLWRzaSIpKQorCQkJbXNtX2RzaW0tPm1hc3Rlcl9kc2lf bGlua19pZCA9IGlkOwogCQlpZiAoIW1zbV9kc2ltLT5pc19zeW5jX25lZWRlZCkKIAkJCW1zbV9k c2ltLT5pc19zeW5jX25lZWRlZCA9IG9mX3Byb3BlcnR5X3JlYWRfYm9vbCgKLQkJCQkJbnAsICJx Y29tLHN5bmMtZHVhbC1wYW5lbCIpOworCQkJCQlucCwgInFjb20sc3luYy1kdWFsLWRzaSIpOwog CX0KIAogCXJldHVybiAwOwpAQCAtODAsNyArODAsNyBAQCBzdGF0aWMgaW50IGRzaV9tZ3JfaG9z dF9yZWdpc3RlcihpbnQgaWQpCiAJc3RydWN0IG1zbV9kc2lfcGxsICpzcmNfcGxsOwogCWludCBy ZXQ7CiAKLQlpZiAoIUlTX0RVQUxfUEFORUwoKSkgeworCWlmICghSVNfRFVBTF9EU0koKSkgewog CQlyZXQgPSBtc21fZHNpX2hvc3RfcmVnaXN0ZXIobXNtX2RzaS0+aG9zdCwgdHJ1ZSk7CiAJCWlm IChyZXQpCiAJCQlyZXR1cm4gcmV0OwpAQCAtOTAsOSArOTAsOSBAQCBzdGF0aWMgaW50IGRzaV9t Z3JfaG9zdF9yZWdpc3RlcihpbnQgaWQpCiAJfSBlbHNlIGlmICghb3RoZXJfZHNpKSB7CiAJCXJl dCA9IDA7CiAJfSBlbHNlIHsKLQkJc3RydWN0IG1zbV9kc2kgKm1kc2kgPSBJU19NQVNURVJfUEFO RUwoaWQpID8KKwkJc3RydWN0IG1zbV9kc2kgKm1kc2kgPSBJU19NQVNURVJfRFNJX0xJTksoaWQp ID8KIAkJCQkJbXNtX2RzaSA6IG90aGVyX2RzaTsKLQkJc3RydWN0IG1zbV9kc2kgKnNkc2kgPSBJ U19NQVNURVJfUEFORUwoaWQpID8KKwkJc3RydWN0IG1zbV9kc2kgKnNkc2kgPSBJU19NQVNURVJf RFNJX0xJTksoaWQpID8KIAkJCQkJb3RoZXJfZHNpIDogbXNtX2RzaTsKIAkJLyogUmVnaXN0ZXIg c2xhdmUgaG9zdCBmaXJzdCwgc28gdGhhdCBzbGF2ZSBEU0kgZGV2aWNlCiAJCSAqIGhhcyBhIGNo YW5jZSB0byBwcm9iZSwgYW5kIGRvIG5vdCBibG9jayB0aGUgbWFzdGVyCkBAIC0xNTksMjMgKzE1 OSwyMyBAQCBzdGF0aWMgZW51bSBkcm1fY29ubmVjdG9yX3N0YXR1cyBkc2lfbWdyX2Nvbm5lY3Rv cl9kZXRlY3QoCiAJCQkJCQkmbXNtX2RzaS0+cGFuZWxfZmxhZ3MpOwogCiAJCS8qIFRoZXJlIGlz IG9ubHkgMSBwYW5lbCBpbiB0aGUgZ2xvYmFsIHBhbmVsIGxpc3QKLQkJICogZm9yIGR1YWwgcGFu ZWwgbW9kZS4gVGhlcmVmb3JlIHNsYXZlIGRzaSBzaG91bGQgZ2V0CisJCSAqIGZvciBkdWFsIERT SSBtb2RlLiBUaGVyZWZvcmUgc2xhdmUgZHNpIHNob3VsZCBnZXQKIAkJICogdGhlIGRybV9wYW5l bCBpbnN0YW5jZSBmcm9tIG1hc3RlciBkc2ksIGFuZAogCQkgKiBrZWVwIHVzaW5nIHRoZSBwYW5l bCBmbGFncyBnb3QgZnJvbSB0aGUgY3VycmVudCBEU0kgbGluay4KIAkJICovCi0JCWlmICghbXNt X2RzaS0+cGFuZWwgJiYgSVNfRFVBTF9QQU5FTCgpICYmCi0JCQkhSVNfTUFTVEVSX1BBTkVMKGlk KSAmJiBvdGhlcl9kc2kpCisJCWlmICghbXNtX2RzaS0+cGFuZWwgJiYgSVNfRFVBTF9EU0koKSAm JgorCQkJIUlTX01BU1RFUl9EU0lfTElOSyhpZCkgJiYgb3RoZXJfZHNpKQogCQkJbXNtX2RzaS0+ cGFuZWwgPSBtc21fZHNpX2hvc3RfZ2V0X3BhbmVsKAogCQkJCQlvdGhlcl9kc2ktPmhvc3QsIE5V TEwpOwogCi0JCWlmIChtc21fZHNpLT5wYW5lbCAmJiBJU19EVUFMX1BBTkVMKCkpCisJCWlmICht c21fZHNpLT5wYW5lbCAmJiBJU19EVUFMX0RTSSgpKQogCQkJZHJtX29iamVjdF9hdHRhY2hfcHJv cGVydHkoJmNvbm5lY3Rvci0+YmFzZSwKIAkJCQljb25uZWN0b3ItPmRldi0+bW9kZV9jb25maWcu dGlsZV9wcm9wZXJ0eSwgMCk7CiAKLQkJLyogU2V0IHNwbGl0IGRpc3BsYXkgaW5mbyB0byBrbXMg b25jZSBkdWFsIHBhbmVsIGlzIGNvbm5lY3RlZAotCQkgKiB0byBib3RoIGhvc3RzCisJCS8qIFNl dCBzcGxpdCBkaXNwbGF5IGluZm8gdG8ga21zIG9uY2UgZHVhbCBEU0kgcGFuZWwgaXMKKwkJICog Y29ubmVjdGVkIHRvIGJvdGggaG9zdHMuCiAJCSAqLwotCQlpZiAobXNtX2RzaS0+cGFuZWwgJiYg SVNfRFVBTF9QQU5FTCgpICYmCisJCWlmIChtc21fZHNpLT5wYW5lbCAmJiBJU19EVUFMX0RTSSgp ICYmCiAJCQlvdGhlcl9kc2kgJiYgb3RoZXJfZHNpLT5wYW5lbCkgewogCQkJYm9vbCBjbWRfbW9k ZSA9ICEobXNtX2RzaS0+cGFuZWxfZmxhZ3MgJgogCQkJCQkJTUlQSV9EU0lfTU9ERV9WSURFTyk7 CkBAIC0xODgsNyArMTg4LDcgQEAgc3RhdGljIGVudW0gZHJtX2Nvbm5lY3Rvcl9zdGF0dXMgZHNp X21ncl9jb25uZWN0b3JfZGV0ZWN0KAogCQkJCWttcy0+ZnVuY3MtPnNldF9zcGxpdF9kaXNwbGF5 KGttcywgZW5jb2RlciwKIAkJCQkJCQlzbGF2ZV9lbmMsIGNtZF9tb2RlKTsKIAkJCWVsc2UKLQkJ CQlwcl9lcnIoIm1kcCBkb2VzIG5vdCBzdXBwb3J0IGR1YWwgcGFuZWxcbiIpOworCQkJCXByX2Vy cigibWRwIGRvZXMgbm90IHN1cHBvcnQgZHVhbCBEU0lcbiIpOwogCQl9CiAJfQogCkBAIC0yODUs NyArMjg1LDcgQEAgc3RhdGljIGludCBkc2lfbWdyX2Nvbm5lY3Rvcl9nZXRfbW9kZXMoc3RydWN0 IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKIAlpZiAoIW51bSkKIAkJcmV0dXJuIDA7CiAKLQlp ZiAoSVNfRFVBTF9QQU5FTCgpKSB7CisJaWYgKElTX0RVQUxfRFNJKCkpIHsKIAkJLyogcmVwb3J0 IGhhbGYgcmVzb2x1dGlvbiB0byB1c2VyICovCiAJCWRzaV9kdWFsX2Nvbm5lY3Rvcl9maXhfbW9k ZXMoY29ubmVjdG9yKTsKIAkJcmV0ID0gZHNpX2R1YWxfY29ubmVjdG9yX3RpbGVfaW5pdChjb25u ZWN0b3IsIGlkKTsKQEAgLTM0MCwxMSArMzQwLDExIEBAIHN0YXRpYyB2b2lkIGRzaV9tZ3JfYnJp ZGdlX3ByZV9lbmFibGUoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKIAlzdHJ1Y3QgbXNtX2Rz aSAqbXNtX2RzaTEgPSBkc2lfbWdyX2dldF9kc2koRFNJXzEpOwogCXN0cnVjdCBtaXBpX2RzaV9o b3N0ICpob3N0ID0gbXNtX2RzaS0+aG9zdDsKIAlzdHJ1Y3QgZHJtX3BhbmVsICpwYW5lbCA9IG1z bV9kc2ktPnBhbmVsOwotCWJvb2wgaXNfZHVhbF9wYW5lbCA9IElTX0RVQUxfUEFORUwoKTsKKwli b29sIGlzX2R1YWxfZHNpID0gSVNfRFVBTF9EU0koKTsKIAlpbnQgcmV0OwogCiAJREJHKCJpZD0l ZCIsIGlkKTsKLQlpZiAoIXBhbmVsIHx8IChpc19kdWFsX3BhbmVsICYmIChEU0lfMSA9PSBpZCkp KQorCWlmICghcGFuZWwgfHwgKGlzX2R1YWxfZHNpICYmIChEU0lfMSA9PSBpZCkpKQogCQlyZXR1 cm47CiAKIAlyZXQgPSBtc21fZHNpX2hvc3RfcG93ZXJfb24oaG9zdCk7CkBAIC0zNTMsNyArMzUz LDcgQEAgc3RhdGljIHZvaWQgZHNpX21ncl9icmlkZ2VfcHJlX2VuYWJsZShzdHJ1Y3QgZHJtX2Jy aWRnZSAqYnJpZGdlKQogCQlnb3RvIGhvc3Rfb25fZmFpbDsKIAl9CiAKLQlpZiAoaXNfZHVhbF9w YW5lbCAmJiBtc21fZHNpMSkgeworCWlmIChpc19kdWFsX2RzaSAmJiBtc21fZHNpMSkgewogCQly ZXQgPSBtc21fZHNpX2hvc3RfcG93ZXJfb24obXNtX2RzaTEtPmhvc3QpOwogCQlpZiAocmV0KSB7 CiAJCQlwcl9lcnIoIiVzOiBwb3dlciBvbiBob3N0MSBmYWlsZWQsICVkXG4iLApAQCAtMzc3LDcg KzM3Nyw3IEBAIHN0YXRpYyB2b2lkIGRzaV9tZ3JfYnJpZGdlX3ByZV9lbmFibGUoc3RydWN0IGRy bV9icmlkZ2UgKmJyaWRnZSkKIAkJZ290byBob3N0X2VuX2ZhaWw7CiAJfQogCi0JaWYgKGlzX2R1 YWxfcGFuZWwgJiYgbXNtX2RzaTEpIHsKKwlpZiAoaXNfZHVhbF9kc2kgJiYgbXNtX2RzaTEpIHsK IAkJcmV0ID0gbXNtX2RzaV9ob3N0X2VuYWJsZShtc21fZHNpMS0+aG9zdCk7CiAJCWlmIChyZXQp IHsKIAkJCXByX2VycigiJXM6IGVuYWJsZSBob3N0MSBmYWlsZWQsICVkXG4iLCBfX2Z1bmNfXywg cmV0KTsKQEAgLTM5NCwxNCArMzk0LDE0IEBAIHN0YXRpYyB2b2lkIGRzaV9tZ3JfYnJpZGdlX3By ZV9lbmFibGUoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKIAlyZXR1cm47CiAKIHBhbmVsX2Vu X2ZhaWw6Ci0JaWYgKGlzX2R1YWxfcGFuZWwgJiYgbXNtX2RzaTEpCisJaWYgKGlzX2R1YWxfZHNp ICYmIG1zbV9kc2kxKQogCQltc21fZHNpX2hvc3RfZGlzYWJsZShtc21fZHNpMS0+aG9zdCk7CiBo b3N0MV9lbl9mYWlsOgogCW1zbV9kc2lfaG9zdF9kaXNhYmxlKGhvc3QpOwogaG9zdF9lbl9mYWls OgogCWRybV9wYW5lbF91bnByZXBhcmUocGFuZWwpOwogcGFuZWxfcHJlcF9mYWlsOgotCWlmIChp c19kdWFsX3BhbmVsICYmIG1zbV9kc2kxKQorCWlmIChpc19kdWFsX2RzaSAmJiBtc21fZHNpMSkK IAkJbXNtX2RzaV9ob3N0X3Bvd2VyX29mZihtc21fZHNpMS0+aG9zdCk7CiBob3N0MV9vbl9mYWls OgogCW1zbV9kc2lfaG9zdF9wb3dlcl9vZmYoaG9zdCk7CkBAIC00MjYsMTIgKzQyNiwxMiBAQCBz dGF0aWMgdm9pZCBkc2lfbWdyX2JyaWRnZV9wb3N0X2Rpc2FibGUoc3RydWN0IGRybV9icmlkZ2Ug KmJyaWRnZSkKIAlzdHJ1Y3QgbXNtX2RzaSAqbXNtX2RzaTEgPSBkc2lfbWdyX2dldF9kc2koRFNJ XzEpOwogCXN0cnVjdCBtaXBpX2RzaV9ob3N0ICpob3N0ID0gbXNtX2RzaS0+aG9zdDsKIAlzdHJ1 Y3QgZHJtX3BhbmVsICpwYW5lbCA9IG1zbV9kc2ktPnBhbmVsOwotCWJvb2wgaXNfZHVhbF9wYW5l bCA9IElTX0RVQUxfUEFORUwoKTsKKwlib29sIGlzX2R1YWxfZHNpID0gSVNfRFVBTF9EU0koKTsK IAlpbnQgcmV0OwogCiAJREJHKCJpZD0lZCIsIGlkKTsKIAotCWlmICghcGFuZWwgfHwgKGlzX2R1 YWxfcGFuZWwgJiYgKERTSV8xID09IGlkKSkpCisJaWYgKCFwYW5lbCB8fCAoaXNfZHVhbF9kc2kg JiYgKERTSV8xID09IGlkKSkpCiAJCXJldHVybjsKIAogCXJldCA9IGRybV9wYW5lbF9kaXNhYmxl KHBhbmVsKTsKQEAgLTQ0Miw3ICs0NDIsNyBAQCBzdGF0aWMgdm9pZCBkc2lfbWdyX2JyaWRnZV9w b3N0X2Rpc2FibGUoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKIAlpZiAocmV0KQogCQlwcl9l cnIoIiVzOiBob3N0ICVkIGRpc2FibGUgZmFpbGVkLCAlZFxuIiwgX19mdW5jX18sIGlkLCByZXQp OwogCi0JaWYgKGlzX2R1YWxfcGFuZWwgJiYgbXNtX2RzaTEpIHsKKwlpZiAoaXNfZHVhbF9kc2kg JiYgbXNtX2RzaTEpIHsKIAkJcmV0ID0gbXNtX2RzaV9ob3N0X2Rpc2FibGUobXNtX2RzaTEtPmhv c3QpOwogCQlpZiAocmV0KQogCQkJcHJfZXJyKCIlczogaG9zdDEgZGlzYWJsZSBmYWlsZWQsICVk XG4iLCBfX2Z1bmNfXywgcmV0KTsKQEAgLTQ1Niw3ICs0NTYsNyBAQCBzdGF0aWMgdm9pZCBkc2lf bWdyX2JyaWRnZV9wb3N0X2Rpc2FibGUoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSkKIAlpZiAo cmV0KQogCQlwcl9lcnIoIiVzOiBob3N0ICVkIHBvd2VyIG9mZiBmYWlsZWQsJWRcbiIsIF9fZnVu Y19fLCBpZCwgcmV0KTsKIAotCWlmIChpc19kdWFsX3BhbmVsICYmIG1zbV9kc2kxKSB7CisJaWYg KGlzX2R1YWxfZHNpICYmIG1zbV9kc2kxKSB7CiAJCXJldCA9IG1zbV9kc2lfaG9zdF9wb3dlcl9v ZmYobXNtX2RzaTEtPmhvc3QpOwogCQlpZiAocmV0KQogCQkJcHJfZXJyKCIlczogaG9zdDEgcG93 ZXIgb2ZmIGZhaWxlZCwgJWRcbiIsCkBAIC00NzIsNyArNDcyLDcgQEAgc3RhdGljIHZvaWQgZHNp X21ncl9icmlkZ2VfbW9kZV9zZXQoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSwKIAlzdHJ1Y3Qg bXNtX2RzaSAqbXNtX2RzaSA9IGRzaV9tZ3JfZ2V0X2RzaShpZCk7CiAJc3RydWN0IG1zbV9kc2kg Km90aGVyX2RzaSA9IGRzaV9tZ3JfZ2V0X290aGVyX2RzaShpZCk7CiAJc3RydWN0IG1pcGlfZHNp X2hvc3QgKmhvc3QgPSBtc21fZHNpLT5ob3N0OwotCWJvb2wgaXNfZHVhbF9wYW5lbCA9IElTX0RV QUxfUEFORUwoKTsKKwlib29sIGlzX2R1YWxfZHNpID0gSVNfRFVBTF9EU0koKTsKIAogCURCRygi c2V0IG1vZGU6ICVkOlwiJXNcIiAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAlZCAweCV4IDB4 JXgiLAogCQkJbW9kZS0+YmFzZS5pZCwgbW9kZS0+bmFtZSwKQEAgLTQ4MywxMSArNDgzLDExIEBA IHN0YXRpYyB2b2lkIGRzaV9tZ3JfYnJpZGdlX21vZGVfc2V0KHN0cnVjdCBkcm1fYnJpZGdlICpi cmlkZ2UsCiAJCQltb2RlLT52c3luY19lbmQsIG1vZGUtPnZ0b3RhbCwKIAkJCW1vZGUtPnR5cGUs IG1vZGUtPmZsYWdzKTsKIAotCWlmIChpc19kdWFsX3BhbmVsICYmIChEU0lfMSA9PSBpZCkpCisJ aWYgKGlzX2R1YWxfZHNpICYmIChEU0lfMSA9PSBpZCkpCiAJCXJldHVybjsKIAogCW1zbV9kc2lf aG9zdF9zZXRfZGlzcGxheV9tb2RlKGhvc3QsIGFkanVzdGVkX21vZGUpOwotCWlmIChpc19kdWFs X3BhbmVsICYmIG90aGVyX2RzaSkKKwlpZiAoaXNfZHVhbF9kc2kgJiYgb3RoZXJfZHNpKQogCQlt c21fZHNpX2hvc3Rfc2V0X2Rpc3BsYXlfbW9kZShvdGhlcl9kc2ktPmhvc3QsIGFkanVzdGVkX21v ZGUpOwogfQogCkBAIC02MTAsNyArNjEwLDcgQEAgaW50IG1zbV9kc2lfbWFuYWdlcl9waHlfZW5h YmxlKGludCBpZCwKIHsKIAlzdHJ1Y3QgbXNtX2RzaSAqbXNtX2RzaSA9IGRzaV9tZ3JfZ2V0X2Rz aShpZCk7CiAJc3RydWN0IG1zbV9kc2lfcGh5ICpwaHkgPSBtc21fZHNpLT5waHk7Ci0JaW50IHNy Y19wbGxfaWQgPSBJU19EVUFMX1BBTkVMKCkgPyBEU0lfQ0xPQ0tfTUFTVEVSIDogaWQ7CisJaW50 IHNyY19wbGxfaWQgPSBJU19EVUFMX0RTSSgpID8gRFNJX0NMT0NLX01BU1RFUiA6IGlkOwogCWlu dCByZXQ7CiAKIAlyZXQgPSBtc21fZHNpX3BoeV9lbmFibGUocGh5LCBzcmNfcGxsX2lkLCBiaXRf cmF0ZSwgZXNjX3JhdGUpOwpAQCAtNjM1LDcgKzYzNSw3IEBAIHZvaWQgbXNtX2RzaV9tYW5hZ2Vy X3BoeV9kaXNhYmxlKGludCBpZCkKIAkgKiBmaXJzdCBjb250cm9sbGVyIG9ubHkgd2hlbiB0aGUg c2Vjb25kIGNvbnRyb2xsZXIgaXMgZGlzYWJsZWQuCiAJICovCiAJbXNtX2RzaS0+cGh5X2VuYWJs ZWQgPSBmYWxzZTsKLQlpZiAoSVNfRFVBTF9QQU5FTCgpICYmIG1kc2kgJiYgc2RzaSkgeworCWlm IChJU19EVUFMX0RTSSgpICYmIG1kc2kgJiYgc2RzaSkgewogCQlpZiAoIW1kc2ktPnBoeV9lbmFi bGVkICYmICFzZHNpLT5waHlfZW5hYmxlZCkgewogCQkJbXNtX2RzaV9waHlfZGlzYWJsZShzZHNp LT5waHkpOwogCQkJbXNtX2RzaV9waHlfZGlzYWJsZShtZHNpLT5waHkpOwpAQCAtNzI2LDkgKzcy Niw5IEBAIGludCBtc21fZHNpX21hbmFnZXJfcmVnaXN0ZXIoc3RydWN0IG1zbV9kc2kgKm1zbV9k c2kpCiAKIAltc21fZHNpbS0+ZHNpW2lkXSA9IG1zbV9kc2k7CiAKLQlyZXQgPSBkc2lfbWdyX3Bh cnNlX2R1YWxfcGFuZWwobXNtX2RzaS0+cGRldi0+ZGV2Lm9mX25vZGUsIGlkKTsKKwlyZXQgPSBk c2lfbWdyX3BhcnNlX2R1YWxfZHNpKG1zbV9kc2ktPnBkZXYtPmRldi5vZl9ub2RlLCBpZCk7CiAJ aWYgKHJldCkgewotCQlwcl9lcnIoIiVzOiBmYWlsZWQgdG8gcGFyc2UgZHVhbCBwYW5lbCBpbmZv XG4iLCBfX2Z1bmNfXyk7CisJCXByX2VycigiJXM6IGZhaWxlZCB0byBwYXJzZSBkdWFsIERTSSBp bmZvXG4iLCBfX2Z1bmNfXyk7CiAJCWdvdG8gZmFpbDsKIAl9CiAKLS0gClRoZSBRdWFsY29tbSBJ bm5vdmF0aW9uIENlbnRlciwgSW5jLiBpcyBhIG1lbWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9y dW0sCmhvc3RlZCBieSBUaGUgTGludXggRm91bmRhdGlvbgoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2 ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9kcmktZGV2ZWwK