From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: [PATCH 25/49] drm/amd/display: Remove duplicate interface for programming FB Date: Fri, 9 Aug 2019 17:37:18 -0400 Message-ID: <20190809213742.30301-26-sunpeng.li@amd.com> References: <20190809213742.30301-1-sunpeng.li@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190809213742.30301-1-sunpeng.li-5C7GfCeVMHo@public.gmane.org> 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: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: Leo Li , Aric Cyr , Julian Parkin RnJvbTogSnVsaWFuIFBhcmtpbiA8anVsaWFuLnBhcmtpbkBhbWQuY29tPgoKW1doeV0KVGhlcmUg YXJlIGN1cnJlbnRseSB0d28gaW50ZXJmYWNlcyBmb3IgZXhhY3RseSB0aGUgc2FtZSB0aGluZzoK aHVwYl91cGRhdGVfZGNodWIgaW4gaHVwYiBhbmQgdXBkYXRlX2RjaHViIGluIGh1YmJ1Yi4gVGhl IGh1YmJ1Ygp2ZXJzaW9uIGlzIGN1cnJlbnRseSB1bnVzZWQgcGFzdCBkY24xMCwgbGFyZ2VseSBi ZWNhdXNlIHRoZSBjYWxsCmZyb20gdGhlIGRjbjEwIGhhcmR3YXJlIHNlcXVlbmNlciBkb2VzIG5v dCBjYWxsIHRocm91Z2ggdGhlCmludGVyZmFjZSwgc28gdGhlIGh1cGIgaW50ZXJmYWNlIHdhcyB1 c2VkIGluc3RlYWQuIFRoaXMgaXMKY29uZnVzaW5nIGJlY2F1c2Ugb2YgdGhlIGR1cGxpY2F0ZSBj b2RlLCB0aGUgdW51c2VkIGZ1bmN0aW9ucywKYW5kIHRoZSBmYWN0IHRoYXQgbW9yZSB0aGF0IG9u ZSBibG9jayBjdXJyZW50bHkgb3ducyB0aGlzIHNldApvZiByZWdpc3RlcnMuCgpbSG93XQpSZW1v dmUgdGhlIGh1YnAgaW50ZXJmYWNlIGVudGlyZWx5LCBhcyB3ZWxsIGFzIHRoZSByZWdpc3Rlcgpk ZWNsYXJhdGlvbnMgdGhhdCBhcmUgbm90IGxvbmdlciBuZWVkZWQgYmVjYXVzZSBvZiB0aGlzLiBD aGFuZ2UKdGhlIGNhbGwgc2l0ZSB0byBhbHdheXMgY2FsbCB0aGUgaHViYnViIHZlcnNpb24gdGhy b3VnaCB0aGUKaW50ZXJmYWNlLiBGaXggdGhlIHVwZGF0ZV9kY2h1YiBmdW5jdGlvbiBpbiBkY24y MF9odWJidWIuYyB0bwpwcm9ncmFtIHRoZSBjb3JyZWN0IHJlZ2lzdGVycyBmb3IgZGNuMjAuCgpT aWduZWQtb2ZmLWJ5OiBKdWxpYW4gUGFya2luIDxqdWxpYW4ucGFya2luQGFtZC5jb20+ClJldmll d2VkLWJ5OiBBcmljIEN5ciA8QXJpYy5DeXJAYW1kLmNvbT4KQWNrZWQtYnk6IExlbyBMaSA8c3Vu cGVuZy5saUBhbWQuY29tPgotLS0KIC4uLi9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjEwL2Rj bjEwX2h1YnAuaCB8IDI0IC0tLS0tLQogLi4uL2FtZC9kaXNwbGF5L2RjL2RjbjEwL2RjbjEwX2h3 X3NlcXVlbmNlci5jIHwgMTAgKy0tCiAuLi4vZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjIwL2RjbjIw X2h1YmJ1Yi5jICAgfCA4MSArKysrKysrKysrKy0tLS0tLS0tCiAuLi4vZ3B1L2RybS9hbWQvZGlz cGxheS9kYy9kY24yMC9kY24yMF9odWJwLmMgfCA3NiAtLS0tLS0tLS0tLS0tLS0tLQogLi4uL2dw dS9kcm0vYW1kL2Rpc3BsYXkvZGMvZGNuMjAvZGNuMjBfaHVicC5oIHwgMTYgLS0tLQogZHJpdmVy cy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2luYy9ody9odWJwLmggIHwgIDMgLQogNiBmaWxlcyBj aGFuZ2VkLCA1MCBpbnNlcnRpb25zKCspLCAxNjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjEwL2RjbjEwX2h1YnAuaCBiL2RyaXZl cnMvZ3B1L2RybS9hbWQvZGlzcGxheS9kYy9kY24xMC9kY24xMF9odWJwLmgKaW5kZXggMzQ0ZTQ0 NmUzMzdkLi45MTExNmIzZDRiNDggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9kYy9kY24xMC9kY24xMF9odWJwLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNw bGF5L2RjL2RjbjEwL2RjbjEwX2h1YnAuaApAQCAtMTI1LDggKzEyNSw2IEBACiAJU1JJKERDTl9W TV9TWVNURU1fQVBFUlRVUkVfTE9XX0FERFJfTFNCLCBIVUJQUkVRLCBpZCksXAogCVNSSShEQ05f Vk1fU1lTVEVNX0FQRVJUVVJFX0hJR0hfQUREUl9NU0IsIEhVQlBSRVEsIGlkKSxcCiAJU1JJKERD Tl9WTV9TWVNURU1fQVBFUlRVUkVfSElHSF9BRERSX0xTQiwgSFVCUFJFUSwgaWQpLFwKLQlTUihE Q0hVQkJVQl9TRFBJRl9GQl9CQVNFKSxcCi0JU1IoRENIVUJCVUJfU0RQSUZfRkJfT0ZGU0VUKSxc CiAJU1JJKENVUlNPUl9TRVRUSU5TLCBIVUJQUkVRLCBpZCksIFwKIAlTUkkoQ1VSU09SX1NVUkZB Q0VfQUREUkVTU19ISUdILCBDVVJTT1IsIGlkKSwgXAogCVNSSShDVVJTT1JfU1VSRkFDRV9BRERS RVNTLCBDVVJTT1IsIGlkKSwgXApAQCAtMjI2LDE0ICsyMjQsNiBAQAogCXVpbnQzMl90IERDTl9W TV9TWVNURU1fQVBFUlRVUkVfSElHSF9BRERSX0xTQjsgXAogCXVpbnQzMl90IERDTl9WTV9TWVNU RU1fQVBFUlRVUkVfTE9XX0FERFI7IFwKIAl1aW50MzJfdCBEQ05fVk1fU1lTVEVNX0FQRVJUVVJF X0hJR0hfQUREUjsgXAotCXVpbnQzMl90IERDSFVCQlVCX1NEUElGX0ZCX0JBU0U7IFwKLQl1aW50 MzJfdCBEQ0hVQkJVQl9TRFBJRl9GQl9PRkZTRVQ7IFwKLQl1aW50MzJfdCBEQ05fVk1fRkJfTE9D QVRJT05fVE9QOyBcCi0JdWludDMyX3QgRENOX1ZNX0ZCX0xPQ0FUSU9OX0JBU0U7IFwKLQl1aW50 MzJfdCBEQ05fVk1fRkJfT0ZGU0VUOyBcCi0JdWludDMyX3QgRENOX1ZNX0FHUF9CQVNFOyBcCi0J dWludDMyX3QgRENOX1ZNX0FHUF9CT1Q7IFwKLQl1aW50MzJfdCBEQ05fVk1fQUdQX1RPUDsgXAog CXVpbnQzMl90IENVUlNPUl9TRVRUSU5TOyBcCiAJdWludDMyX3QgQ1VSU09SX1NFVFRJTkdTOyBc CiAJdWludDMyX3QgQ1VSU09SX1NVUkZBQ0VfQUREUkVTU19ISUdIOyBcCkBAIC00MTcsOCArNDA3 LDYgQEAKIAlIVUJQX1NGKEhVQlBSRVEwX0RDTl9WTV9TWVNURU1fQVBFUlRVUkVfTE9XX0FERFJf TFNCLCBNQ19WTV9TWVNURU1fQVBFUlRVUkVfTE9XX0FERFJfTFNCLCBtYXNrX3NoKSxcCiAJSFVC UF9TRihIVUJQUkVRMF9EQ05fVk1fU1lTVEVNX0FQRVJUVVJFX0hJR0hfQUREUl9NU0IsIE1DX1ZN X1NZU1RFTV9BUEVSVFVSRV9ISUdIX0FERFJfTVNCLCBtYXNrX3NoKSxcCiAJSFVCUF9TRihIVUJQ UkVRMF9EQ05fVk1fU1lTVEVNX0FQRVJUVVJFX0hJR0hfQUREUl9MU0IsIE1DX1ZNX1NZU1RFTV9B UEVSVFVSRV9ISUdIX0FERFJfTFNCLCBtYXNrX3NoKSxcCi0JSFVCUF9TRihEQ0hVQkJVQl9TRFBJ Rl9GQl9CQVNFLCBTRFBJRl9GQl9CQVNFLCBtYXNrX3NoKSxcCi0JSFVCUF9TRihEQ0hVQkJVQl9T RFBJRl9GQl9PRkZTRVQsIFNEUElGX0ZCX09GRlNFVCwgbWFza19zaCksXAogCUhVQlBfU0YoSFVC UFJFUTBfRENOX1ZNX1NZU1RFTV9BUEVSVFVSRV9ERUZBVUxUX0FERFJfTVNCLCBNQ19WTV9TWVNU RU1fQVBFUlRVUkVfREVGQVVMVF9TWVNURU0sIG1hc2tfc2gpLFwKIAlIVUJQX1NGKEhVQlBSRVEw X0RDTl9WTV9TWVNURU1fQVBFUlRVUkVfREVGQVVMVF9BRERSX01TQiwgTUNfVk1fU1lTVEVNX0FQ RVJUVVJFX0RFRkFVTFRfQUREUl9NU0IsIG1hc2tfc2gpLFwKIAlIVUJQX1NGKEhVQlBSRVEwX0RD Tl9WTV9TWVNURU1fQVBFUlRVUkVfREVGQVVMVF9BRERSX0xTQiwgTUNfVk1fU1lTVEVNX0FQRVJU VVJFX0RFRkFVTFRfQUREUl9MU0IsIG1hc2tfc2gpLFwKQEAgLTU5MywxOCArNTgxLDYgQEAKIAl0 eXBlIE1DX1ZNX1NZU1RFTV9BUEVSVFVSRV9ISUdIX0FERFJfTFNCO1wKIAl0eXBlIE1DX1ZNX1NZ U1RFTV9BUEVSVFVSRV9MT1dfQUREUjtcCiAJdHlwZSBNQ19WTV9TWVNURU1fQVBFUlRVUkVfSElH SF9BRERSO1wKLQl0eXBlIFNEUElGX0ZCX1RPUDtcCi0JdHlwZSBTRFBJRl9GQl9CQVNFO1wKLQl0 eXBlIFNEUElGX0ZCX09GRlNFVDtcCi0JdHlwZSBTRFBJRl9BR1BfQkFTRTtcCi0JdHlwZSBTRFBJ Rl9BR1BfQk9UO1wKLQl0eXBlIFNEUElGX0FHUF9UT1A7XAotCXR5cGUgRkJfVE9QO1wKLQl0eXBl IEZCX0JBU0U7XAotCXR5cGUgRkJfT0ZGU0VUO1wKLQl0eXBlIEFHUF9CQVNFO1wKLQl0eXBlIEFH UF9CT1Q7XAotCXR5cGUgQUdQX1RPUDtcCiAJdHlwZSBEQ05fVk1fU1lTVEVNX0FQRVJUVVJFX0RF RkFVTFRfU1lTVEVNO1wKIAl0eXBlIERDTl9WTV9TWVNURU1fQVBFUlRVUkVfREVGQVVMVF9BRERS X01TQjtcCiAJdHlwZSBEQ05fVk1fU1lTVEVNX0FQRVJUVVJFX0RFRkFVTFRfQUREUl9MU0I7XApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjEwL2RjbjEwX2h3 X3NlcXVlbmNlci5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjEwL2RjbjEw X2h3X3NlcXVlbmNlci5jCmluZGV4IDg5ZjdhMjYwNTQ4Yi4uYjA4NjMyYmE2MjExIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvZGNuMTAvZGNuMTBfaHdfc2VxdWVu Y2VyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjEwL2RjbjEwX2h3 X3NlcXVlbmNlci5jCkBAIC0yODU3LDE0ICsyODU3LDEwIEBAIHN0YXRpYyB2b2lkIGRjbjEwX3Vw ZGF0ZV9wZW5kaW5nX3N0YXR1cyhzdHJ1Y3QgcGlwZV9jdHggKnBpcGVfY3R4KQogCiBzdGF0aWMg dm9pZCBkY24xMF91cGRhdGVfZGNodWIoc3RydWN0IGRjZV9od3NlcSAqaHdzLCBzdHJ1Y3QgZGNo dWJfaW5pdF9kYXRhICpkaF9kYXRhKQogewotCWlmIChod3MtPmN0eC0+ZGMtPnJlc19wb29sLT5o dWJidWIgIT0gTlVMTCkgewotCQlzdHJ1Y3QgaHVicCAqaHVicCA9IGh3cy0+Y3R4LT5kYy0+cmVz X3Bvb2wtPmh1YnBzWzBdOworCXN0cnVjdCBodWJidWIgKmh1YmJ1YiA9IGh3cy0+Y3R4LT5kYy0+ cmVzX3Bvb2wtPmh1YmJ1YjsKIAotCQlpZiAoaHVicC0+ZnVuY3MtPmh1YnBfdXBkYXRlX2RjaHVi KQotCQkJaHVicC0+ZnVuY3MtPmh1YnBfdXBkYXRlX2RjaHViKGh1YnAsIGRoX2RhdGEpOwotCQll bHNlCi0JCQlodWJidWIxX3VwZGF0ZV9kY2h1Yihod3MtPmN0eC0+ZGMtPnJlc19wb29sLT5odWJi dWIsIGRoX2RhdGEpOwotCX0KKwkvKiBJbiBEQ04sIHRoaXMgcHJvZ3JhbW1pbmcgc2VxdWVuY2Ug aXMgb3duZWQgYnkgdGhlIGh1YmJ1YiAqLworCWh1YmJ1Yi0+ZnVuY3MtPnVwZGF0ZV9kY2h1Yiho dWJidWIsIGRoX2RhdGEpOwogfQogCiBzdGF0aWMgdm9pZCBkY24xMF9zZXRfY3Vyc29yX3Bvc2l0 aW9uKHN0cnVjdCBwaXBlX2N0eCAqcGlwZV9jdHgpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2Rpc3BsYXkvZGMvZGNuMjAvZGNuMjBfaHViYnViLmMgYi9kcml2ZXJzL2dwdS9kcm0v YW1kL2Rpc3BsYXkvZGMvZGNuMjAvZGNuMjBfaHViYnViLmMKaW5kZXggY2QxMDFiYmQ4MTYzLi5m MTNlMDM5ZjhlZjQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9kYy9k Y24yMC9kY24yMF9odWJidWIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMv ZGNuMjAvZGNuMjBfaHViYnViLmMKQEAgLTM5OCw1NCArMzk4LDY3IEBAIHZvaWQgaHViYnViMl91 cGRhdGVfZGNodWIoc3RydWN0IGh1YmJ1YiAqaHViYnViLAogewogCXN0cnVjdCBkY24yMF9odWJi dWIgKmh1YmJ1YjEgPSBUT19EQ04yMF9IVUJCVUIoaHViYnViKTsKIAotCWlmIChSRUcoRENIVUJC VUJfU0RQSUZfRkJfVE9QKSA9PSAwKSB7Ci0JCUFTU0VSVChmYWxzZSk7Ci0JCS8qc2hvdWxkIG5v dCBjb21lIGhlcmUqLworCWlmIChSRUcoRENOX1ZNX0ZCX0xPQ0FUSU9OX1RPUCkgPT0gMCkKIAkJ cmV0dXJuOwotCX0KLQkvKiBUT0RPOiBwb3J0IGNvZGUgZnJvbSBkYWwyICovCisKIAlzd2l0Y2gg KGRoX2RhdGEtPmZiX21vZGUpIHsKIAljYXNlIEZSQU1FX0JVRkZFUl9NT0RFX1pGQl9PTkxZOgog CQkvKkZvciBaRkIgY2FzZSBuZWVkIHRvIHB1dCBEQ0hVQiBGQiBCQVNFIGFuZCBUT1AgdXBzaWRl IGRvd24gdG8gaW5kaWNhdGUgWkZCIG1vZGUqLwotCQlSRUdfVVBEQVRFKERDSFVCQlVCX1NEUElG X0ZCX1RPUCwKLQkJCQlTRFBJRl9GQl9UT1AsIDApOwotCi0JCVJFR19VUERBVEUoRENIVUJCVUJf U0RQSUZfRkJfQkFTRSwKLQkJCQlTRFBJRl9GQl9CQVNFLCAweDBGRkZGKTsKLQotCQlSRUdfVVBE QVRFKERDSFVCQlVCX1NEUElGX0FHUF9CQVNFLAotCQkJCVNEUElGX0FHUF9CQVNFLCBkaF9kYXRh LT56ZmJfcGh5c19hZGRyX2Jhc2UgPj4gMjIpOwotCi0JCVJFR19VUERBVEUoRENIVUJCVUJfU0RQ SUZfQUdQX0JPVCwKLQkJCQlTRFBJRl9BR1BfQk9ULCBkaF9kYXRhLT56ZmJfbWNfYmFzZV9hZGRy ID4+IDIyKTsKLQotCQlSRUdfVVBEQVRFKERDSFVCQlVCX1NEUElGX0FHUF9UT1AsCi0JCQkJU0RQ SUZfQUdQX1RPUCwgKGRoX2RhdGEtPnpmYl9tY19iYXNlX2FkZHIgKwotCQkJCQkJZGhfZGF0YS0+ emZiX3NpemVfaW5fYnl0ZSAtIDEpID4+IDIyKTsKKwkJUkVHX1VQREFURShEQ05fVk1fRkJfTE9D QVRJT05fVE9QLAorCQkJCUZCX1RPUCwgMCk7CisKKwkJUkVHX1VQREFURShEQ05fVk1fRkJfTE9D QVRJT05fQkFTRSwKKwkJCQlGQl9CQVNFLCAweEZGRkZGRik7CisKKwkJLypUaGlzIGZpZWxkIGRl ZmluZXMgdGhlIDI0IE1TQnMsIGJpdHMgWzQ3OjI0XSBvZiB0aGUgNDggYml0IEFHUCBCYXNlKi8K KwkJUkVHX1VQREFURShEQ05fVk1fQUdQX0JBU0UsCisJCQkJQUdQX0JBU0UsIGRoX2RhdGEtPnpm Yl9waHlzX2FkZHJfYmFzZSA+PiAyNCk7CisKKwkJLypUaGlzIGZpZWxkIGRlZmluZXMgdGhlIGJv dHRvbSByYW5nZSBvZiB0aGUgQUdQIGFwZXJ0dXJlIGFuZCByZXByZXNlbnRzIHRoZSAyNCovCisJ CS8qTVNCcywgYml0cyBbNDc6MjRdIG9mIHRoZSA0OCBhZGRyZXNzIGJpdHMqLworCQlSRUdfVVBE QVRFKERDTl9WTV9BR1BfQk9ULAorCQkJCUFHUF9CT1QsIGRoX2RhdGEtPnpmYl9tY19iYXNlX2Fk ZHIgPj4gMjQpOworCisJCS8qVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSB0b3AgcmFuZ2Ugb2YgdGhl IEFHUCBhcGVydHVyZSBhbmQgcmVwcmVzZW50cyB0aGUgMjQqLworCQkvKk1TQnMsIGJpdHMgWzQ3 OjI0XSBvZiB0aGUgNDggYWRkcmVzcyBiaXRzKi8KKwkJUkVHX1VQREFURShEQ05fVk1fQUdQX1RP UCwKKwkJCQlBR1BfVE9QLCAoZGhfZGF0YS0+emZiX21jX2Jhc2VfYWRkciArCisJCQkJCQlkaF9k YXRhLT56ZmJfc2l6ZV9pbl9ieXRlIC0gMSkgPj4gMjQpOwogCQlicmVhazsKIAljYXNlIEZSQU1F X0JVRkZFUl9NT0RFX01JWEVEX1pGQl9BTkRfTE9DQUw6CiAJCS8qU2hvdWxkIG5vdCB0b3VjaCBG QiBMT0NBVElPTiAoZG9uZSBieSBWQklPUyBvbiBBc2ljSW5pdCB0YWJsZSkqLwogCi0JCVJFR19V UERBVEUoRENIVUJCVUJfU0RQSUZfQUdQX0JBU0UsCi0JCQkJU0RQSUZfQUdQX0JBU0UsIGRoX2Rh dGEtPnpmYl9waHlzX2FkZHJfYmFzZSA+PiAyMik7CisJCS8qVGhpcyBmaWVsZCBkZWZpbmVzIHRo ZSAyNCBNU0JzLCBiaXRzIFs0NzoyNF0gb2YgdGhlIDQ4IGJpdCBBR1AgQmFzZSovCisJCVJFR19V UERBVEUoRENOX1ZNX0FHUF9CQVNFLAorCQkJCUFHUF9CQVNFLCBkaF9kYXRhLT56ZmJfcGh5c19h ZGRyX2Jhc2UgPj4gMjQpOwogCi0JCVJFR19VUERBVEUoRENIVUJCVUJfU0RQSUZfQUdQX0JPVCwK LQkJCQlTRFBJRl9BR1BfQk9ULCBkaF9kYXRhLT56ZmJfbWNfYmFzZV9hZGRyID4+IDIyKTsKKwkJ LypUaGlzIGZpZWxkIGRlZmluZXMgdGhlIGJvdHRvbSByYW5nZSBvZiB0aGUgQUdQIGFwZXJ0dXJl IGFuZCByZXByZXNlbnRzIHRoZSAyNCovCisJCS8qTVNCcywgYml0cyBbNDc6MjRdIG9mIHRoZSA0 OCBhZGRyZXNzIGJpdHMqLworCQlSRUdfVVBEQVRFKERDTl9WTV9BR1BfQk9ULAorCQkJCUFHUF9C T1QsIGRoX2RhdGEtPnpmYl9tY19iYXNlX2FkZHIgPj4gMjQpOwogCi0JCVJFR19VUERBVEUoRENI VUJCVUJfU0RQSUZfQUdQX1RPUCwKLQkJCQlTRFBJRl9BR1BfVE9QLCAoZGhfZGF0YS0+emZiX21j X2Jhc2VfYWRkciArCi0JCQkJCQlkaF9kYXRhLT56ZmJfc2l6ZV9pbl9ieXRlIC0gMSkgPj4gMjIp OworCQkvKlRoaXMgZmllbGQgZGVmaW5lcyB0aGUgdG9wIHJhbmdlIG9mIHRoZSBBR1AgYXBlcnR1 cmUgYW5kIHJlcHJlc2VudHMgdGhlIDI0Ki8KKwkJLypNU0JzLCBiaXRzIFs0NzoyNF0gb2YgdGhl IDQ4IGFkZHJlc3MgYml0cyovCisJCVJFR19VUERBVEUoRENOX1ZNX0FHUF9UT1AsCisJCQkJQUdQ X1RPUCwgKGRoX2RhdGEtPnpmYl9tY19iYXNlX2FkZHIgKworCQkJCQkJZGhfZGF0YS0+emZiX3Np emVfaW5fYnl0ZSAtIDEpID4+IDI0KTsKIAkJYnJlYWs7CiAJY2FzZSBGUkFNRV9CVUZGRVJfTU9E RV9MT0NBTF9PTkxZOgotCQkvKlNob3VsZCBub3QgdG91Y2ggRkIgTE9DQVRJT04gKGRvbmUgYnkg VkJJT1Mgb24gQXNpY0luaXQgdGFibGUpKi8KLQkJUkVHX1VQREFURShEQ0hVQkJVQl9TRFBJRl9B R1BfQkFTRSwKLQkJCQlTRFBJRl9BR1BfQkFTRSwgMCk7CisJCS8qU2hvdWxkIG5vdCB0b3VjaCBG QiBMT0NBVElPTiAoc2hvdWxkIGJlIGRvbmUgYnkgVkJJT1MpKi8KKworCQkvKlRoaXMgZmllbGQg ZGVmaW5lcyB0aGUgMjQgTVNCcywgYml0cyBbNDc6MjRdIG9mIHRoZSA0OCBiaXQgQUdQIEJhc2Uq LworCQlSRUdfVVBEQVRFKERDTl9WTV9BR1BfQkFTRSwKKwkJCQlBR1BfQkFTRSwgMCk7CiAKLQkJ UkVHX1VQREFURShEQ0hVQkJVQl9TRFBJRl9BR1BfQk9ULAotCQkJCVNEUElGX0FHUF9CT1QsIDBY MDNGRkZGKTsKKwkJLypUaGlzIGZpZWxkIGRlZmluZXMgdGhlIGJvdHRvbSByYW5nZSBvZiB0aGUg QUdQIGFwZXJ0dXJlIGFuZCByZXByZXNlbnRzIHRoZSAyNCovCisJCS8qTVNCcywgYml0cyBbNDc6 MjRdIG9mIHRoZSA0OCBhZGRyZXNzIGJpdHMqLworCQlSRUdfVVBEQVRFKERDTl9WTV9BR1BfQk9U LAorCQkJCUFHUF9CT1QsIDB4RkZGRkZGKTsKIAotCQlSRUdfVVBEQVRFKERDSFVCQlVCX1NEUElG X0FHUF9UT1AsCi0JCQkJU0RQSUZfQUdQX1RPUCwgMCk7CisJCS8qVGhpcyBmaWVsZCBkZWZpbmVz IHRoZSB0b3AgcmFuZ2Ugb2YgdGhlIEFHUCBhcGVydHVyZSBhbmQgcmVwcmVzZW50cyB0aGUgMjQq LworCQkvKk1TQnMsIGJpdHMgWzQ3OjI0XSBvZiB0aGUgNDggYWRkcmVzcyBiaXRzKi8KKwkJUkVH X1VQREFURShEQ05fVk1fQUdQX1RPUCwKKwkJCQlBR1BfVE9QLCAwKTsKIAkJYnJlYWs7CiAJZGVm YXVsdDoKIAkJYnJlYWs7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkv ZGMvZGNuMjAvZGNuMjBfaHVicC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2Rj bjIwL2RjbjIwX2h1YnAuYwppbmRleCA0ODdkZTg3YjAzZWIuLmFjMDFlNjM2YWUyNyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjIwL2RjbjIwX2h1YnAuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvZGNuMjAvZGNuMjBfaHVicC5jCkBA IC00MCw4MSArNDAsNiBAQAogI2RlZmluZSBGTihyZWdfbmFtZSwgZmllbGRfbmFtZSkgXAogCWh1 YnAyLT5odWJwX3NoaWZ0LT5maWVsZF9uYW1lLCBodWJwMi0+aHVicF9tYXNrLT5maWVsZF9uYW1l CiAKLXZvaWQgaHVicDJfdXBkYXRlX2RjaHViKAotCXN0cnVjdCBodWJwICpodWJwLAotCXN0cnVj dCBkY2h1Yl9pbml0X2RhdGEgKmRoX2RhdGEpCi17Ci0Jc3RydWN0IGRjbjIwX2h1YnAgKmh1YnAy ID0gVE9fRENOMjBfSFVCUChodWJwKTsKLQlpZiAoUkVHKERDTl9WTV9GQl9MT0NBVElPTl9UT1Ap ID09IDApCi0JCXJldHVybjsKLQotCXN3aXRjaCAoZGhfZGF0YS0+ZmJfbW9kZSkgewotCWNhc2Ug RlJBTUVfQlVGRkVSX01PREVfWkZCX09OTFk6Ci0JCS8qRm9yIFpGQiBjYXNlIG5lZWQgdG8gcHV0 IERDSFVCIEZCIEJBU0UgYW5kIFRPUCB1cHNpZGUgZG93biB0byBpbmRpY2F0ZSBaRkIgbW9kZSov Ci0JCVJFR19VUERBVEUoRENOX1ZNX0ZCX0xPQ0FUSU9OX1RPUCwKLQkJCQlGQl9UT1AsIDApOwot Ci0JCVJFR19VUERBVEUoRENOX1ZNX0ZCX0xPQ0FUSU9OX0JBU0UsCi0JCQkJRkJfQkFTRSwgMHhG RkZGRkYpOwotCi0JCS8qVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSAyNCBNU0JzLCBiaXRzIFs0Nzoy NF0gb2YgdGhlIDQ4IGJpdCBBR1AgQmFzZSovCi0JCVJFR19VUERBVEUoRENOX1ZNX0FHUF9CQVNF LAotCQkJCUFHUF9CQVNFLCBkaF9kYXRhLT56ZmJfcGh5c19hZGRyX2Jhc2UgPj4gMjQpOwotCi0J CS8qVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSBib3R0b20gcmFuZ2Ugb2YgdGhlIEFHUCBhcGVydHVy ZSBhbmQgcmVwcmVzZW50cyB0aGUgMjQqLwotCQkvKk1TQnMsIGJpdHMgWzQ3OjI0XSBvZiB0aGUg NDggYWRkcmVzcyBiaXRzKi8KLQkJUkVHX1VQREFURShEQ05fVk1fQUdQX0JPVCwKLQkJCQlBR1Bf Qk9ULCBkaF9kYXRhLT56ZmJfbWNfYmFzZV9hZGRyID4+IDI0KTsKLQotCQkvKlRoaXMgZmllbGQg ZGVmaW5lcyB0aGUgdG9wIHJhbmdlIG9mIHRoZSBBR1AgYXBlcnR1cmUgYW5kIHJlcHJlc2VudHMg dGhlIDI0Ki8KLQkJLypNU0JzLCBiaXRzIFs0NzoyNF0gb2YgdGhlIDQ4IGFkZHJlc3MgYml0cyov Ci0JCVJFR19VUERBVEUoRENOX1ZNX0FHUF9UT1AsCi0JCQkJQUdQX1RPUCwgKGRoX2RhdGEtPnpm Yl9tY19iYXNlX2FkZHIgKwotCQkJCQkJZGhfZGF0YS0+emZiX3NpemVfaW5fYnl0ZSAtIDEpID4+ IDI0KTsKLQkJYnJlYWs7Ci0JY2FzZSBGUkFNRV9CVUZGRVJfTU9ERV9NSVhFRF9aRkJfQU5EX0xP Q0FMOgotCQkvKlNob3VsZCBub3QgdG91Y2ggRkIgTE9DQVRJT04gKGRvbmUgYnkgVkJJT1Mgb24g QXNpY0luaXQgdGFibGUpKi8KLQotCQkvKlRoaXMgZmllbGQgZGVmaW5lcyB0aGUgMjQgTVNCcywg Yml0cyBbNDc6MjRdIG9mIHRoZSA0OCBiaXQgQUdQIEJhc2UqLwotCQlSRUdfVVBEQVRFKERDTl9W TV9BR1BfQkFTRSwKLQkJCQlBR1BfQkFTRSwgZGhfZGF0YS0+emZiX3BoeXNfYWRkcl9iYXNlID4+ IDI0KTsKLQotCQkvKlRoaXMgZmllbGQgZGVmaW5lcyB0aGUgYm90dG9tIHJhbmdlIG9mIHRoZSBB R1AgYXBlcnR1cmUgYW5kIHJlcHJlc2VudHMgdGhlIDI0Ki8KLQkJLypNU0JzLCBiaXRzIFs0Nzoy NF0gb2YgdGhlIDQ4IGFkZHJlc3MgYml0cyovCi0JCVJFR19VUERBVEUoRENOX1ZNX0FHUF9CT1Qs Ci0JCQkJQUdQX0JPVCwgZGhfZGF0YS0+emZiX21jX2Jhc2VfYWRkciA+PiAyNCk7Ci0KLQkJLypU aGlzIGZpZWxkIGRlZmluZXMgdGhlIHRvcCByYW5nZSBvZiB0aGUgQUdQIGFwZXJ0dXJlIGFuZCBy ZXByZXNlbnRzIHRoZSAyNCovCi0JCS8qTVNCcywgYml0cyBbNDc6MjRdIG9mIHRoZSA0OCBhZGRy ZXNzIGJpdHMqLwotCQlSRUdfVVBEQVRFKERDTl9WTV9BR1BfVE9QLAotCQkJCUFHUF9UT1AsIChk aF9kYXRhLT56ZmJfbWNfYmFzZV9hZGRyICsKLQkJCQkJCWRoX2RhdGEtPnpmYl9zaXplX2luX2J5 dGUgLSAxKSA+PiAyNCk7Ci0JCWJyZWFrOwotCWNhc2UgRlJBTUVfQlVGRkVSX01PREVfTE9DQUxf T05MWToKLQkJLypTaG91bGQgbm90IHRvdWNoIEZCIExPQ0FUSU9OIChzaG91bGQgYmUgZG9uZSBi eSBWQklPUykqLwotCi0JCS8qVGhpcyBmaWVsZCBkZWZpbmVzIHRoZSAyNCBNU0JzLCBiaXRzIFs0 NzoyNF0gb2YgdGhlIDQ4IGJpdCBBR1AgQmFzZSovCi0JCVJFR19VUERBVEUoRENOX1ZNX0FHUF9C QVNFLAotCQkJCUFHUF9CQVNFLCAwKTsKLQotCQkvKlRoaXMgZmllbGQgZGVmaW5lcyB0aGUgYm90 dG9tIHJhbmdlIG9mIHRoZSBBR1AgYXBlcnR1cmUgYW5kIHJlcHJlc2VudHMgdGhlIDI0Ki8KLQkJ LypNU0JzLCBiaXRzIFs0NzoyNF0gb2YgdGhlIDQ4IGFkZHJlc3MgYml0cyovCi0JCVJFR19VUERB VEUoRENOX1ZNX0FHUF9CT1QsCi0JCQkJQUdQX0JPVCwgMHhGRkZGRkYpOwotCi0JCS8qVGhpcyBm aWVsZCBkZWZpbmVzIHRoZSB0b3AgcmFuZ2Ugb2YgdGhlIEFHUCBhcGVydHVyZSBhbmQgcmVwcmVz ZW50cyB0aGUgMjQqLwotCQkvKk1TQnMsIGJpdHMgWzQ3OjI0XSBvZiB0aGUgNDggYWRkcmVzcyBi aXRzKi8KLQkJUkVHX1VQREFURShEQ05fVk1fQUdQX1RPUCwKLQkJCQlBR1BfVE9QLCAwKTsKLQkJ YnJlYWs7Ci0JZGVmYXVsdDoKLQkJYnJlYWs7Ci0JfQotCi0JZGhfZGF0YS0+ZGNodWJfaW5pdGlh bHppZWQgPSB0cnVlOwotCWRoX2RhdGEtPmRjaHViX2luZm9fdmFsaWQgPSBmYWxzZTsKLX0KLQog dm9pZCBodWJwMl9zZXRfdm1fc3lzdGVtX2FwZXJ0dXJlX3NldHRpbmdzKHN0cnVjdCBodWJwICpo dWJwLAogCQlzdHJ1Y3Qgdm1fc3lzdGVtX2FwZXJ0dXJlX3BhcmFtICphcHQpCiB7CkBAIC0xMzIx LDcgKzEyNDYsNiBAQCBzdGF0aWMgc3RydWN0IGh1YnBfZnVuY3MgZGNuMjBfaHVicF9mdW5jcyA9 IHsKIAkuaHVicF9zZXRfdm1fc3lzdGVtX2FwZXJ0dXJlX3NldHRpbmdzID0gaHVicDJfc2V0X3Zt X3N5c3RlbV9hcGVydHVyZV9zZXR0aW5ncywKIAkuc2V0X2JsYW5rID0gaHVicDJfc2V0X2JsYW5r LAogCS5kY2NfY29udHJvbCA9IGh1YnAyX2RjY19jb250cm9sLAotCS5odWJwX3VwZGF0ZV9kY2h1 YiA9IGh1YnAyX3VwZGF0ZV9kY2h1YiwKIAkubWVtX3Byb2dyYW1fdmlld3BvcnQgPSBtaW5fc2V0 X3ZpZXdwb3J0LAogCS5zZXRfY3Vyc29yX2F0dHJpYnV0ZXMJPSBodWJwMl9jdXJzb3Jfc2V0X2F0 dHJpYnV0ZXMsCiAJLnNldF9jdXJzb3JfcG9zaXRpb24JPSBodWJwMl9jdXJzb3Jfc2V0X3Bvc2l0 aW9uLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjIwL2Rj bjIwX2h1YnAuaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9kYy9kY24yMC9kY24yMF9o dWJwLmgKaW5kZXggMWM1M2FmNDgxMWU4Li45MjQ2OTllNWY0NDMgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvZGlzcGxheS9kYy9kY24yMC9kY24yMF9odWJwLmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9kaXNwbGF5L2RjL2RjbjIwL2RjbjIwX2h1YnAuaApAQCAtMzgsMTIgKzM4 LDYgQEAKIAlTUkkoUFJFRkVUQ0hfU0VUVElOR1NfQywgSFVCUFJFUSwgaWQpLFwKIAlTUkkoRENO X1ZNX1NZU1RFTV9BUEVSVFVSRV9MT1dfQUREUiwgSFVCUFJFUSwgaWQpLFwKIAlTUkkoRENOX1ZN X1NZU1RFTV9BUEVSVFVSRV9ISUdIX0FERFIsIEhVQlBSRVEsIGlkKSxcCi0JU1IoRENOX1ZNX0ZC X0xPQ0FUSU9OX1RPUCksXAotCVNSKERDTl9WTV9GQl9MT0NBVElPTl9CQVNFKSxcCi0JU1IoRENO X1ZNX0ZCX09GRlNFVCksXAotCVNSKERDTl9WTV9BR1BfQkFTRSksXAotCVNSKERDTl9WTV9BR1Bf Qk9UKSxcCi0JU1IoRENOX1ZNX0FHUF9UT1ApLFwKIAlTUkkoQ1VSU09SX1NFVFRJTkdTLCBIVUJQ UkVRLCBpZCksIFwKIAlTUkkoQ1VSU09SX1NVUkZBQ0VfQUREUkVTU19ISUdILCBDVVJTT1IwXywg aWQpLCBcCiAJU1JJKENVUlNPUl9TVVJGQUNFX0FERFJFU1MsIENVUlNPUjBfLCBpZCksIFwKQEAg LTgyLDEyICs3Niw2IEBACiAJSFVCUF9TRihIVUJQUkVRMF9QUkVGRVRDSF9TRVRUSU5HU19DLCBW UkFUSU9fUFJFRkVUQ0hfQywgbWFza19zaCksXAogCUhVQlBfU0YoSFVCUFJFUTBfRENOX1ZNX1NZ U1RFTV9BUEVSVFVSRV9MT1dfQUREUiwgTUNfVk1fU1lTVEVNX0FQRVJUVVJFX0xPV19BRERSLCBt YXNrX3NoKSxcCiAJSFVCUF9TRihIVUJQUkVRMF9EQ05fVk1fU1lTVEVNX0FQRVJUVVJFX0hJR0hf QUREUiwgTUNfVk1fU1lTVEVNX0FQRVJUVVJFX0hJR0hfQUREUiwgbWFza19zaCksXAotCUhVQlBf U0YoRENOX1ZNX0ZCX0xPQ0FUSU9OX1RPUCwgRkJfVE9QLCBtYXNrX3NoKSxcCi0JSFVCUF9TRihE Q05fVk1fRkJfTE9DQVRJT05fQkFTRSwgRkJfQkFTRSwgbWFza19zaCksXAotCUhVQlBfU0YoRENO X1ZNX0ZCX09GRlNFVCwgRkJfT0ZGU0VULCBtYXNrX3NoKSxcCi0JSFVCUF9TRihEQ05fVk1fQUdQ X0JBU0UsIEFHUF9CQVNFLCBtYXNrX3NoKSxcCi0JSFVCUF9TRihEQ05fVk1fQUdQX0JPVCwgQUdQ X0JPVCwgbWFza19zaCksXAotCUhVQlBfU0YoRENOX1ZNX0FHUF9UT1AsIEFHUF9UT1AsIG1hc2tf c2gpLFwKIAlIVUJQX1NGKEhVQlBSRVEwX0NVUlNPUl9TRVRUSU5HUywgQ1VSU09SMF9EU1RfWV9P RkZTRVQsIG1hc2tfc2gpLCBcCiAJSFVCUF9TRihIVUJQUkVRMF9DVVJTT1JfU0VUVElOR1MsIENV UlNPUjBfQ0hVTktfSERMX0FESlVTVCwgbWFza19zaCksIFwKIAlIVUJQX1NGKENVUlNPUjBfMF9D VVJTT1JfU1VSRkFDRV9BRERSRVNTX0hJR0gsIENVUlNPUl9TVVJGQUNFX0FERFJFU1NfSElHSCwg bWFza19zaCksIFwKQEAgLTIyMiwxMCArMjEwLDYgQEAgdm9pZCBodWJwMl9zZXR1cF9pbnRlcmRl cGVuZGVudCgKIHZvaWQgaHVicDJfdnJlYWR5X2F0X29yX0FmdGVyX3ZzeW5jKHN0cnVjdCBodWJw ICpodWJwLAogCQlzdHJ1Y3QgX3Zjc19kcGlfZGlzcGxheV9waXBlX2Rlc3RfcGFyYW1zX3N0ICpw aXBlX2Rlc3QpOwogCi12b2lkIGh1YnAyX3VwZGF0ZV9kY2h1YigKLQkJc3RydWN0IGh1YnAgKmh1 YnAsCi0JCXN0cnVjdCBkY2h1Yl9pbml0X2RhdGEgKmRoX2RhdGEpOwotCiB2b2lkIGh1YnAyX2N1 cnNvcl9zZXRfYXR0cmlidXRlcygKIAkJc3RydWN0IGh1YnAgKmh1YnAsCiAJCWNvbnN0IHN0cnVj dCBkY19jdXJzb3JfYXR0cmlidXRlcyAqYXR0cik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vYW1kL2Rpc3BsYXkvZGMvaW5jL2h3L2h1YnAuaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlz cGxheS9kYy9pbmMvaHcvaHVicC5oCmluZGV4IDYxY2Q0Zjg3NTJjMy4uNDk5M2YxMzRlNzQ3IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvaW5jL2h3L2h1YnAuaAor KysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkvZGMvaW5jL2h3L2h1YnAuaApAQCAtMTEx LDkgKzExMSw2IEBAIHN0cnVjdCBodWJwX2Z1bmNzIHsKIAogCWJvb2wgKCpodWJwX2lzX2ZsaXBf cGVuZGluZykoc3RydWN0IGh1YnAgKmh1YnApOwogCi0Jdm9pZCAoKmh1YnBfdXBkYXRlX2RjaHVi KShzdHJ1Y3QgaHVicCAqaHVicCwKLQkJCQlzdHJ1Y3QgZGNodWJfaW5pdF9kYXRhICpkaF9kYXRh KTsKLQogCXZvaWQgKCpzZXRfYmxhbmspKHN0cnVjdCBodWJwICpodWJwLCBib29sIGJsYW5rKTsK IAl2b2lkICgqc2V0X2h1YnBfYmxhbmtfZW4pKHN0cnVjdCBodWJwICpodWJwLCBib29sIGJsYW5r KTsKIAotLSAKMi4yMi4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwphbWQtZ2Z4IG1haWxpbmcgbGlzdAphbWQtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9y ZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2FtZC1nZng=