From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oak Zeng Subject: [PATCH 6/7] drm/amdgpu: Use asic specific doorbell index instead of macro definition Date: Wed, 21 Nov 2018 22:00:35 +0000 Message-ID: <1542837620-13571-6-git-send-email-ozeng@amd.com> References: <1542837620-13571-1-git-send-email-ozeng@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1542837620-13571-1-git-send-email-ozeng-5C7GfCeVMHo@public.gmane.org> Content-Language: en-US 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: "Zeng, Oak" Q2hhbmdlLUlkOiBJZmZmZjg0NDc1ZWZjZmI0ODJjNDc0ZmNjYjEzMzAxMGFiYjVkZjVmNApTaWdu ZWQtb2ZmLWJ5OiBPYWsgWmVuZyA8b3plbmdAYW1kLmNvbT4KU3VnZ2VzdGVkLWJ5OiBGZWxpeCBL dWVobGluZyA8RmVsaXguS3VlaGxpbmdAYW1kLmNvbT4KU3VnZ2VzdGVkLWJ5OiBBbGV4IERldWNo ZXIgPGFsZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X2FtZGtmZC5jIHwgMjcgKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCiBk cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMgfCAgMiArLQogZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2dmeC5jICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2dmeF92N18wLmMgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9nZnhfdjhfMC5jICAgICAgfCAxMCArKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9k cm0vYW1kL2FtZGdwdS9nZnhfdjlfMC5jICAgICAgfCAgOCArKysrLS0tLQogZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvc2RtYV92M18wLmMgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L3NkbWFfdjRfMC5jICAgICB8IDI1ICsrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0K IGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3RvbmdhX2loLmMgICAgICB8ICAyICstCiBkcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS91dmRfdjdfMC5jICAgICAgfCAgNCArKy0tCiBkcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS92Y2VfdjRfMC5jICAgICAgfCAgNCArKy0tCiBkcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS92ZWdhMTBfaWguYyAgICAgfCAgMiArLQogMTIgZmlsZXMgY2hhbmdl ZCwgMzYgaW5zZXJ0aW9ucygrKSwgNTQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5jIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5jCmluZGV4IDFjMWZlZDYuLmQ2OTNiODA0IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfYW1ka2ZkLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2FtZGtmZC5jCkBAIC0xODEsMjUgKzE4MSwx NCBAQCB2b2lkIGFtZGdwdV9hbWRrZmRfZGV2aWNlX2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2Ug KmFkZXYpCiAJCQkgKiBwcm9jZXNzIGluIGNhc2Ugb2YgNjQtYml0IGRvb3JiZWxscyBzbyB3ZQog CQkJICogY2FuIHVzZSBlYWNoIGRvb3JiZWxsIGFzc2lnbm1lbnQgdHdpY2UuCiAJCQkgKi8KLQkJ CWlmIChhZGV2LT5hc2ljX3R5cGUgPT0gQ0hJUF9WRUdBMTApIHsKLQkJCQlncHVfcmVzb3VyY2Vz LnNkbWFfZG9vcmJlbGxbMF1baV0gPQotCQkJCQlBTURHUFVfVkVHQTEwX0RPT1JCRUxMNjRfc0RN QV9FTkdJTkUwICsgKGkgPj4gMSk7Ci0JCQkJZ3B1X3Jlc291cmNlcy5zZG1hX2Rvb3JiZWxsWzBd W2krMV0gPQotCQkJCQlBTURHUFVfVkVHQTEwX0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUwICsgMHgy MDAgKyAoaSA+PiAxKTsKLQkJCQlncHVfcmVzb3VyY2VzLnNkbWFfZG9vcmJlbGxbMV1baV0gPQot CQkJCQlBTURHUFVfVkVHQTEwX0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUxICsgKGkgPj4gMSk7Ci0J CQkJZ3B1X3Jlc291cmNlcy5zZG1hX2Rvb3JiZWxsWzFdW2krMV0gPQotCQkJCQlBTURHUFVfVkVH QTEwX0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUxICsgMHgyMDAgKyAoaSA+PiAxKTsKLQkJCX0gZWxz ZSB7Ci0JCQkJZ3B1X3Jlc291cmNlcy5zZG1hX2Rvb3JiZWxsWzBdW2ldID0KLQkJCQkJQU1ER1BV X0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUwICsgKGkgPj4gMSk7Ci0JCQkJZ3B1X3Jlc291cmNlcy5z ZG1hX2Rvb3JiZWxsWzBdW2krMV0gPQotCQkJCQlBTURHUFVfRE9PUkJFTEw2NF9zRE1BX0VOR0lO RTAgKyAweDIwMCArIChpID4+IDEpOwotCQkJCWdwdV9yZXNvdXJjZXMuc2RtYV9kb29yYmVsbFsx XVtpXSA9Ci0JCQkJCUFNREdQVV9ET09SQkVMTDY0X3NETUFfRU5HSU5FMSArIChpID4+IDEpOwot CQkJCWdwdV9yZXNvdXJjZXMuc2RtYV9kb29yYmVsbFsxXVtpKzFdID0KLQkJCQkJQU1ER1BVX0RP T1JCRUxMNjRfc0RNQV9FTkdJTkUxICsgMHgyMDAgKyAoaSA+PiAxKTsKLQkJCX0KKwkJCWdwdV9y ZXNvdXJjZXMuc2RtYV9kb29yYmVsbFswXVtpXSA9CisJCQkJYWRldi0+ZG9vcmJlbGxfaW5kZXgu c2RtYV9lbmdpbmUwICsgKGkgPj4gMSk7CisJCQlncHVfcmVzb3VyY2VzLnNkbWFfZG9vcmJlbGxb MF1baSsxXSA9CisJCQkJYWRldi0+ZG9vcmJlbGxfaW5kZXguc2RtYV9lbmdpbmUwICsgMHgyMDAg KyAoaSA+PiAxKTsKKwkJCWdwdV9yZXNvdXJjZXMuc2RtYV9kb29yYmVsbFsxXVtpXSA9CisJCQkJ YWRldi0+ZG9vcmJlbGxfaW5kZXguc2RtYV9lbmdpbmUxICsgKGkgPj4gMSk7CisJCQlncHVfcmVz b3VyY2VzLnNkbWFfZG9vcmJlbGxbMV1baSsxXSA9CisJCQkJYWRldi0+ZG9vcmJlbGxfaW5kZXgu c2RtYV9lbmdpbmUxICsgMHgyMDAgKyAoaSA+PiAxKTsKIAkJfQogCQkvKiBEb29yYmVsbHMgMHgw ZTAtMGZmIGFuZCAweDJlMC0yZmYgYXJlIHJlc2VydmVkIGZvcgogCQkgKiBTRE1BLCBJSCBhbmQg VkNOLiBTbyBkb24ndCB1c2UgdGhlbSBmb3IgdGhlIENQLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvYW1kZ3B1X2RldmljZS5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYW1kZ3B1X2RldmljZS5jCmluZGV4IGE5NDJhODguLjNmZmQ4ZjUgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9kZXZpY2UuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfZGV2aWNlLmMKQEAgLTUzNyw3ICs1MzcsNyBAQCBz dGF0aWMgaW50IGFtZGdwdV9kZXZpY2VfZG9vcmJlbGxfaW5pdChzdHJ1Y3QgYW1kZ3B1X2Rldmlj ZSAqYWRldikKIAlhZGV2LT5kb29yYmVsbC5zaXplID0gcGNpX3Jlc291cmNlX2xlbihhZGV2LT5w ZGV2LCAyKTsKIAogCWFkZXYtPmRvb3JiZWxsLm51bV9kb29yYmVsbHMgPSBtaW5fdCh1MzIsIGFk ZXYtPmRvb3JiZWxsLnNpemUgLyBzaXplb2YodTMyKSwKLQkJCQkJICAgICBBTURHUFVfRE9PUkJF TExfTUFYX0FTU0lHTk1FTlQrMSk7CisJCQkJCSAgICAgYWRldi0+ZG9vcmJlbGxfaW5kZXgubWF4 X2Fzc2lnbm1lbnQrMSk7CiAJaWYgKGFkZXYtPmRvb3JiZWxsLm51bV9kb29yYmVsbHMgPT0gMCkK IAkJcmV0dXJuIC1FSU5WQUw7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2FtZGdwdV9nZnguYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9nZngu YwppbmRleCA2YTcwYzBiLi45N2E2MGRhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1k L2FtZGdwdS9hbWRncHVfZ2Z4LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYW1k Z3B1X2dmeC5jCkBAIC0yNTAsNyArMjUwLDcgQEAgaW50IGFtZGdwdV9nZnhfa2lxX2luaXRfcmlu ZyhzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwKIAlyaW5nLT5hZGV2ID0gTlVMTDsKIAlyaW5n LT5yaW5nX29iaiA9IE5VTEw7CiAJcmluZy0+dXNlX2Rvb3JiZWxsID0gdHJ1ZTsKLQlyaW5nLT5k b29yYmVsbF9pbmRleCA9IEFNREdQVV9ET09SQkVMTF9LSVE7CisJcmluZy0+ZG9vcmJlbGxfaW5k ZXggPSBhZGV2LT5kb29yYmVsbF9pbmRleC5raXE7CiAKIAlyID0gYW1kZ3B1X2dmeF9raXFfYWNx dWlyZShhZGV2LCByaW5nKTsKIAlpZiAocikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2dmeF92N18wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjdf MC5jCmluZGV4IGY0NjdiOWIuLjNhOWZiNjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2dmeF92N18wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4 X3Y3XzAuYwpAQCAtNDM2Myw3ICs0MzYzLDcgQEAgc3RhdGljIGludCBnZnhfdjdfMF9jb21wdXRl X3JpbmdfaW5pdChzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgaW50IHJpbmdfaWQsCiAKIAly aW5nLT5yaW5nX29iaiA9IE5VTEw7CiAJcmluZy0+dXNlX2Rvb3JiZWxsID0gdHJ1ZTsKLQlyaW5n LT5kb29yYmVsbF9pbmRleCA9IEFNREdQVV9ET09SQkVMTF9NRUNfUklORzAgKyByaW5nX2lkOwor CXJpbmctPmRvb3JiZWxsX2luZGV4ID0gYWRldi0+ZG9vcmJlbGxfaW5kZXgubWVjX3JpbmcwICsg cmluZ19pZDsKIAlzcHJpbnRmKHJpbmctPm5hbWUsICJjb21wXyVkLiVkLiVkIiwgcmluZy0+bWUs IHJpbmctPnBpcGUsIHJpbmctPnF1ZXVlKTsKIAogCWlycV90eXBlID0gQU1ER1BVX0NQX0lSUV9D T01QVVRFX01FQzFfUElQRTBfRU9QCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9nZnhfdjhfMC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y4XzAuYwpp bmRleCA3N2NhYzBlLi4xNDU0ZmMzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9nZnhfdjhfMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dmeF92OF8w LmMKQEAgLTE4OTAsNyArMTg5MCw3IEBAIHN0YXRpYyBpbnQgZ2Z4X3Y4XzBfY29tcHV0ZV9yaW5n X2luaXQoc3RydWN0IGFtZGdwdV9kZXZpY2UgKmFkZXYsIGludCByaW5nX2lkLAogCiAJcmluZy0+ cmluZ19vYmogPSBOVUxMOwogCXJpbmctPnVzZV9kb29yYmVsbCA9IHRydWU7Ci0JcmluZy0+ZG9v cmJlbGxfaW5kZXggPSBBTURHUFVfRE9PUkJFTExfTUVDX1JJTkcwICsgcmluZ19pZDsKKwlyaW5n LT5kb29yYmVsbF9pbmRleCA9IGFkZXYtPmRvb3JiZWxsX2luZGV4Lm1lY19yaW5nMCArIHJpbmdf aWQ7CiAJcmluZy0+ZW9wX2dwdV9hZGRyID0gYWRldi0+Z2Z4Lm1lYy5ocGRfZW9wX2dwdV9hZGRy CiAJCQkJKyAocmluZ19pZCAqIEdGWDhfTUVDX0hQRF9TSVpFKTsKIAlzcHJpbnRmKHJpbmctPm5h bWUsICJjb21wXyVkLiVkLiVkIiwgcmluZy0+bWUsIHJpbmctPnBpcGUsIHJpbmctPnF1ZXVlKTsK QEAgLTIwMDEsNyArMjAwMSw3IEBAIHN0YXRpYyBpbnQgZ2Z4X3Y4XzBfc3dfaW5pdCh2b2lkICpo YW5kbGUpCiAJCS8qIG5vIGdmeCBkb29yYmVsbHMgb24gaWNlbGFuZCAqLwogCQlpZiAoYWRldi0+ YXNpY190eXBlICE9IENISVBfVE9QQVopIHsKIAkJCXJpbmctPnVzZV9kb29yYmVsbCA9IHRydWU7 Ci0JCQlyaW5nLT5kb29yYmVsbF9pbmRleCA9IEFNREdQVV9ET09SQkVMTF9HRlhfUklORzA7CisJ CQlyaW5nLT5kb29yYmVsbF9pbmRleCA9IGFkZXYtPmRvb3JiZWxsX2luZGV4LmdmeF9yaW5nMDsK IAkJfQogCiAJCXIgPSBhbWRncHVfcmluZ19pbml0KGFkZXYsIHJpbmcsIDEwMjQsICZhZGV2LT5n ZnguZW9wX2lycSwKQEAgLTQyMTUsNyArNDIxNSw3IEBAIHN0YXRpYyB2b2lkIGdmeF92OF8wX3Nl dF9jcGdfZG9vcl9iZWxsKHN0cnVjdCBhbWRncHVfZGV2aWNlICphZGV2LCBzdHJ1Y3QgYW1kZ3B1 CiAKIAl0bXAgPSBSRUdfU0VUX0ZJRUxEKDAsIENQX1JCX0RPT1JCRUxMX1JBTkdFX0xPV0VSLAog CQkJCQlET09SQkVMTF9SQU5HRV9MT1dFUiwKLQkJCQkJQU1ER1BVX0RPT1JCRUxMX0dGWF9SSU5H MCk7CisJCQkJCWFkZXYtPmRvb3JiZWxsX2luZGV4LmdmeF9yaW5nMCk7CiAJV1JFRzMyKG1tQ1Bf UkJfRE9PUkJFTExfUkFOR0VfTE9XRVIsIHRtcCk7CiAKIAlXUkVHMzIobW1DUF9SQl9ET09SQkVM TF9SQU5HRV9VUFBFUiwKQEAgLTQ2NDQsOCArNDY0NCw4IEBAIHN0YXRpYyBpbnQgZ2Z4X3Y4XzBf a2NxX2luaXRfcXVldWUoc3RydWN0IGFtZGdwdV9yaW5nICpyaW5nKQogc3RhdGljIHZvaWQgZ2Z4 X3Y4XzBfc2V0X21lY19kb29yYmVsbF9yYW5nZShzdHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldikK IHsKIAlpZiAoYWRldi0+YXNpY190eXBlID4gQ0hJUF9UT05HQSkgewotCQlXUkVHMzIobW1DUF9N RUNfRE9PUkJFTExfUkFOR0VfTE9XRVIsIEFNREdQVV9ET09SQkVMTF9LSVEgPDwgMik7Ci0JCVdS RUczMihtbUNQX01FQ19ET09SQkVMTF9SQU5HRV9VUFBFUiwgQU1ER1BVX0RPT1JCRUxMX01FQ19S SU5HNyA8PCAyKTsKKwkJV1JFRzMyKG1tQ1BfTUVDX0RPT1JCRUxMX1JBTkdFX0xPV0VSLCBhZGV2 LT5kb29yYmVsbF9pbmRleC5raXEgPDwgMik7CisJCVdSRUczMihtbUNQX01FQ19ET09SQkVMTF9S QU5HRV9VUFBFUiwgYWRldi0+ZG9vcmJlbGxfaW5kZXgubWVjX3Jpbmc3IDw8IDIpOwogCX0KIAkv KiBlbmFibGUgZG9vcmJlbGxzICovCiAJV1JFRzMyX0ZJRUxEKENQX1BRX1NUQVRVUywgRE9PUkJF TExfRU5BQkxFLCAxKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dm eF92OV8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9nZnhfdjlfMC5jCmluZGV4IGU0 MDlmYmYuLmFmOGNjYjAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2dm eF92OV8wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZ2Z4X3Y5XzAuYwpAQCAt MTU2Niw3ICsxNTY2LDcgQEAgc3RhdGljIGludCBnZnhfdjlfMF9jb21wdXRlX3JpbmdfaW5pdChz dHJ1Y3QgYW1kZ3B1X2RldmljZSAqYWRldiwgaW50IHJpbmdfaWQsCiAKIAlyaW5nLT5yaW5nX29i aiA9IE5VTEw7CiAJcmluZy0+dXNlX2Rvb3JiZWxsID0gdHJ1ZTsKLQlyaW5nLT5kb29yYmVsbF9p bmRleCA9IChBTURHUFVfRE9PUkJFTEw2NF9NRUNfUklORzAgKyByaW5nX2lkKSA8PCAxOworCXJp bmctPmRvb3JiZWxsX2luZGV4ID0gKGFkZXYtPmRvb3JiZWxsX2luZGV4Lm1lY19yaW5nMCArIHJp bmdfaWQpIDw8IDE7CiAJcmluZy0+ZW9wX2dwdV9hZGRyID0gYWRldi0+Z2Z4Lm1lYy5ocGRfZW9w X2dwdV9hZGRyCiAJCQkJKyAocmluZ19pZCAqIEdGWDlfTUVDX0hQRF9TSVpFKTsKIAlzcHJpbnRm KHJpbmctPm5hbWUsICJjb21wXyVkLiVkLiVkIiwgcmluZy0+bWUsIHJpbmctPnBpcGUsIHJpbmct PnF1ZXVlKTsKQEAgLTE2NTUsNyArMTY1NSw3IEBAIHN0YXRpYyBpbnQgZ2Z4X3Y5XzBfc3dfaW5p dCh2b2lkICpoYW5kbGUpCiAJCWVsc2UKIAkJCXNwcmludGYocmluZy0+bmFtZSwgImdmeF8lZCIs IGkpOwogCQlyaW5nLT51c2VfZG9vcmJlbGwgPSB0cnVlOwotCQlyaW5nLT5kb29yYmVsbF9pbmRl eCA9IEFNREdQVV9ET09SQkVMTDY0X0dGWF9SSU5HMCA8PCAxOworCQlyaW5nLT5kb29yYmVsbF9p bmRleCA9IGFkZXYtPmRvb3JiZWxsX2luZGV4LmdmeF9yaW5nMCA8PCAxOwogCQlyID0gYW1kZ3B1 X3JpbmdfaW5pdChhZGV2LCByaW5nLCAxMDI0LAogCQkJCSAgICAgJmFkZXYtPmdmeC5lb3BfaXJx LCBBTURHUFVfQ1BfSVJRX0dGWF9FT1ApOwogCQlpZiAocikKQEAgLTI5ODEsOSArMjk4MSw5IEBA IHN0YXRpYyBpbnQgZ2Z4X3Y5XzBfa2lxX2luaXRfcmVnaXN0ZXIoc3RydWN0IGFtZGdwdV9yaW5n ICpyaW5nKQogCS8qIGVuYWJsZSB0aGUgZG9vcmJlbGwgaWYgcmVxdWVzdGVkICovCiAJaWYgKHJp bmctPnVzZV9kb29yYmVsbCkgewogCQlXUkVHMzJfU09DMTUoR0MsIDAsIG1tQ1BfTUVDX0RPT1JC RUxMX1JBTkdFX0xPV0VSLAotCQkJCQkoQU1ER1BVX0RPT1JCRUxMNjRfS0lRICoyKSA8PCAyKTsK KwkJCQkJKGFkZXYtPmRvb3JiZWxsX2luZGV4LmtpcSAqIDIpIDw8IDIpOwogCQlXUkVHMzJfU09D MTUoR0MsIDAsIG1tQ1BfTUVDX0RPT1JCRUxMX1JBTkdFX1VQUEVSLAotCQkJCQkoQU1ER1BVX0RP T1JCRUxMNjRfVVNFUlFVRVVFX0VORCAqIDIpIDw8IDIpOworCQkJCQkoYWRldi0+ZG9vcmJlbGxf aW5kZXgudXNlcnF1ZXVlX2VuZCAqIDIpIDw8IDIpOwogCX0KIAogCVdSRUczMl9TT0MxNShHQywg MCwgbW1DUF9IUURfUFFfRE9PUkJFTExfQ09OVFJPTCwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L3NkbWFfdjNfMC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUv c2RtYV92M18wLmMKaW5kZXggYjZhMjVmOS4uMWJjY2M1ZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2FtZC9hbWRncHUvc2RtYV92M18wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvc2RtYV92M18wLmMKQEAgLTExNDYsNyArMTE0Niw3IEBAIHN0YXRpYyBpbnQgc2RtYV92 M18wX3N3X2luaXQodm9pZCAqaGFuZGxlKQogCQlpZiAoIWFtZGdwdV9zcmlvdl92ZihhZGV2KSkg ewogCQkJcmluZy0+dXNlX2Rvb3JiZWxsID0gdHJ1ZTsKIAkJCXJpbmctPmRvb3JiZWxsX2luZGV4 ID0gKGkgPT0gMCkgPwotCQkJCUFNREdQVV9ET09SQkVMTF9zRE1BX0VOR0lORTAgOiBBTURHUFVf RE9PUkJFTExfc0RNQV9FTkdJTkUxOworCQkJCWFkZXYtPmRvb3JiZWxsX2luZGV4LnNkbWFfZW5n aW5lMCA6IGFkZXYtPmRvb3JiZWxsX2luZGV4LnNkbWFfZW5naW5lMTsKIAkJfSBlbHNlIHsKIAkJ CXJpbmctPnVzZV9wb2xsbWVtID0gdHJ1ZTsKIAkJfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvc2RtYV92NF8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9z ZG1hX3Y0XzAuYwppbmRleCBlNmNiMmMzLi42MTUwN2FkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vYW1kL2FtZGdwdS9zZG1hX3Y0XzAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9zZG1hX3Y0XzAuYwpAQCAtMTUxNywxNSArMTUxNywxMyBAQCBzdGF0aWMgaW50IHNkbWFf djRfMF9zd19pbml0KHZvaWQgKmhhbmRsZSkKIAkJcmluZy0+cmluZ19vYmogPSBOVUxMOwogCQly aW5nLT51c2VfZG9vcmJlbGwgPSB0cnVlOwogCisJCURSTV9JTkZPKCJ1c2VfZG9vcmJlbGwgYmVp bmcgc2V0IHRvOiBbJXNdXG4iLAorCQkJCXJpbmctPnVzZV9kb29yYmVsbD8idHJ1ZSI6ImZhbHNl Iik7CisKIAkJLyogZG9vcmJlbGwgc2l6ZSBpcyAyIGR3b3JkcywgZ2V0IERXT1JEIG9mZnNldCAq LwotCQlpZiAoYWRldi0+YXNpY190eXBlID09IENISVBfVkVHQTEwKQotCQkJcmluZy0+ZG9vcmJl bGxfaW5kZXggPSAoaSA9PSAwKSA/Ci0JCQkJKEFNREdQVV9WRUdBMTBfRE9PUkJFTEw2NF9zRE1B X0VOR0lORTAgPDwgMSkKLQkJCQk6IChBTURHUFVfVkVHQTEwX0RPT1JCRUxMNjRfc0RNQV9FTkdJ TkUxIDw8IDEpOwotCQllbHNlCi0JCQlyaW5nLT5kb29yYmVsbF9pbmRleCA9IChpID09IDApID8K LQkJCQkoQU1ER1BVX0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUwIDw8IDEpCi0JCQkJOiAoQU1ER1BV X0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUxIDw8IDEpOworCQlyaW5nLT5kb29yYmVsbF9pbmRleCA9 IChpID09IDApID8KKwkJCShhZGV2LT5kb29yYmVsbF9pbmRleC5zZG1hX2VuZ2luZTAgPDwgMSkK KwkJCTogKGFkZXYtPmRvb3JiZWxsX2luZGV4LnNkbWFfZW5naW5lMSA8PCAxKTsKIAogCQlzcHJp bnRmKHJpbmctPm5hbWUsICJzZG1hJWQiLCBpKTsKIAkJciA9IGFtZGdwdV9yaW5nX2luaXQoYWRl diwgcmluZywgMTAyNCwKQEAgLTE1NDQsMTQgKzE1NDIsOSBAQCBzdGF0aWMgaW50IHNkbWFfdjRf MF9zd19pbml0KHZvaWQgKmhhbmRsZSkKIAkJCS8qIHBhZ2luZyBxdWV1ZSB1c2Ugc2FtZSBkb29y YmVsbCBpbmRleC9yb3V0aW5nIGFzIGdmeCBxdWV1ZQogCQkJICogd2l0aCAweDQwMCAoNDA5NiBk d29yZHMpIG9mZnNldCBvbiBzZWNvbmQgZG9vcmJlbGwgcGFnZQogCQkJICovCi0JCQlpZiAoYWRl di0+YXNpY190eXBlID09IENISVBfVkVHQTEwKQotCQkJCXJpbmctPmRvb3JiZWxsX2luZGV4ID0g KGkgPT0gMCkgPwotCQkJCQkoQU1ER1BVX1ZFR0ExMF9ET09SQkVMTDY0X3NETUFfRU5HSU5FMCA8 PCAxKQotCQkJCQk6IChBTURHUFVfVkVHQTEwX0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUxIDw8IDEp OwotCQkJZWxzZQotCQkJCXJpbmctPmRvb3JiZWxsX2luZGV4ID0gKGkgPT0gMCkgPwotCQkJCQko QU1ER1BVX0RPT1JCRUxMNjRfc0RNQV9FTkdJTkUwIDw8IDEpCi0JCQkJCTogKEFNREdQVV9ET09S QkVMTDY0X3NETUFfRU5HSU5FMSA8PCAxKTsKKwkJCXJpbmctPmRvb3JiZWxsX2luZGV4ID0gKGkg PT0gMCkgPworCQkJCShhZGV2LT5kb29yYmVsbF9pbmRleC5zZG1hX2VuZ2luZTAgPDwgMSkKKwkJ CQk6IChhZGV2LT5kb29yYmVsbF9pbmRleC5zZG1hX2VuZ2luZTEgPDwgMSk7CiAJCQlyaW5nLT5k b29yYmVsbF9pbmRleCArPSAweDQwMDsKIAogCQkJc3ByaW50ZihyaW5nLT5uYW1lLCAicGFnZSVk IiwgaSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS90b25nYV9paC5j IGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvdG9uZ2FfaWguYwppbmRleCAzYWJmZmQwLi5k Y2RiYjRkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS90b25nYV9paC5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3RvbmdhX2loLmMKQEAgLTMyMiw3ICsz MjIsNyBAQCBzdGF0aWMgaW50IHRvbmdhX2loX3N3X2luaXQodm9pZCAqaGFuZGxlKQogCQlyZXR1 cm4gcjsKIAogCWFkZXYtPmlycS5paC51c2VfZG9vcmJlbGwgPSB0cnVlOwotCWFkZXYtPmlycS5p aC5kb29yYmVsbF9pbmRleCA9IEFNREdQVV9ET09SQkVMTF9JSDsKKwlhZGV2LT5pcnEuaWguZG9v cmJlbGxfaW5kZXggPSBhZGV2LT5kb29yYmVsbF9pbmRleC5paDsKIAogCXIgPSBhbWRncHVfaXJx X2luaXQoYWRldik7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3V2 ZF92N18wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS91dmRfdjdfMC5jCmluZGV4IDhh NDU5NTkuLjM2ODBhMDEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3V2 ZF92N18wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvdXZkX3Y3XzAuYwpAQCAt NDU1LDkgKzQ1NSw5IEBAIHN0YXRpYyBpbnQgdXZkX3Y3XzBfc3dfaW5pdCh2b2lkICpoYW5kbGUp CiAJCQkJICogc3Jpb3YsIHNvIHNldCB1bnVzZWQgbG9jYXRpb24gZm9yIG90aGVyIHVudXNlZCBy aW5ncy4KIAkJCQkgKi8KIAkJCQlpZiAoaSA9PSAwKQotCQkJCQlyaW5nLT5kb29yYmVsbF9pbmRl eCA9IEFNREdQVV9ET09SQkVMTDY0X1VWRF9SSU5HMF8xICogMjsKKwkJCQkJcmluZy0+ZG9vcmJl bGxfaW5kZXggPSBhZGV2LT5kb29yYmVsbF9pbmRleC51dmRfdmNlLnV2ZF9yaW5nMF8xICogMjsK IAkJCQllbHNlCi0JCQkJCXJpbmctPmRvb3JiZWxsX2luZGV4ID0gQU1ER1BVX0RPT1JCRUxMNjRf VVZEX1JJTkcyXzMgKiAyICsgMTsKKwkJCQkJcmluZy0+ZG9vcmJlbGxfaW5kZXggPSBhZGV2LT5k b29yYmVsbF9pbmRleC51dmRfdmNlLnV2ZF9yaW5nMl8zICogMiArIDE7CiAJCQl9CiAJCQlyID0g YW1kZ3B1X3JpbmdfaW5pdChhZGV2LCByaW5nLCA1MTIsICZhZGV2LT51dmQuaW5zdFtqXS5pcnEs IDApOwogCQkJaWYgKHIpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS92 Y2VfdjRfMC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvdmNlX3Y0XzAuYwppbmRleCAw MDU0YmExLi45ZmIzNGI3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS92 Y2VfdjRfMC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3ZjZV92NF8wLmMKQEAg LTQ2Niw5ICs0NjYsOSBAQCBzdGF0aWMgaW50IHZjZV92NF8wX3N3X2luaXQodm9pZCAqaGFuZGxl KQogCQkJICogc28gc2V0IHVudXNlZCBsb2NhdGlvbiBmb3Igb3RoZXIgdW51c2VkIHJpbmdzLgog CQkJICovCiAJCQlpZiAoaSA9PSAwKQotCQkJCXJpbmctPmRvb3JiZWxsX2luZGV4ID0gQU1ER1BV X0RPT1JCRUxMNjRfVkNFX1JJTkcwXzEgKiAyOworCQkJCXJpbmctPmRvb3JiZWxsX2luZGV4ID0g YWRldi0+ZG9vcmJlbGxfaW5kZXgudXZkX3ZjZS52Y2VfcmluZzBfMSAqIDI7CiAJCQllbHNlCi0J CQkJcmluZy0+ZG9vcmJlbGxfaW5kZXggPSBBTURHUFVfRE9PUkJFTEw2NF9WQ0VfUklORzJfMyAq IDIgKyAxOworCQkJCXJpbmctPmRvb3JiZWxsX2luZGV4ID0gYWRldi0+ZG9vcmJlbGxfaW5kZXgu dXZkX3ZjZS52Y2VfcmluZzJfMyAqIDIgKyAxOwogCQl9CiAJCXIgPSBhbWRncHVfcmluZ19pbml0 KGFkZXYsIHJpbmcsIDUxMiwgJmFkZXYtPnZjZS5pcnEsIDApOwogCQlpZiAocikKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L3ZlZ2ExMF9paC5jIGIvZHJpdmVycy9ncHUv ZHJtL2FtZC9hbWRncHUvdmVnYTEwX2loLmMKaW5kZXggYTBmZGE2Zi4uZDg0YjY4NyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvdmVnYTEwX2loLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9hbWRncHUvdmVnYTEwX2loLmMKQEAgLTM4NSw3ICszODUsNyBAQCBzdGF0 aWMgaW50IHZlZ2ExMF9paF9zd19pbml0KHZvaWQgKmhhbmRsZSkKIAkJcmV0dXJuIHI7CiAKIAlh ZGV2LT5pcnEuaWgudXNlX2Rvb3JiZWxsID0gdHJ1ZTsKLQlhZGV2LT5pcnEuaWguZG9vcmJlbGxf aW5kZXggPSBBTURHUFVfRE9PUkJFTEw2NF9JSCA8PCAxOworCWFkZXYtPmlycS5paC5kb29yYmVs bF9pbmRleCA9IGFkZXYtPmRvb3JiZWxsX2luZGV4LmloIDw8IDE7CiAKIAlyID0gYW1kZ3B1X2ly cV9pbml0KGFkZXYpOwogCi0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9hbWQtZ2Z4Cg==