From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH] drm/msm/a6xx: Fix PDC register overlap Date: Wed, 8 Aug 2018 16:39:38 -0600 Message-ID: <20180808223938.7302-1-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: freedreno@lists.freedesktop.org Cc: linux-arm-msm@vger.kernel.org, hoegsberg@gmail.com, dri-devel@lists.freedesktop.org List-Id: linux-arm-msm@vger.kernel.org VGhlIGN1cnJlbnQgZGVzaWduIGdyZWVkaWx5IHRha2VzIGEgYmlnIGNodW5rIG9mIHRoZSBQREMK cmVnaXN0ZXIgc3BhY2UgaW5zdGVhZCBvZiBqdXN0IHRoZSBHUFUgc3BlY2lmaWMgc2VjdGlvbnMK d2hpY2ggY29uZmxpY3RzIHdpdGggb3RoZXIgZHJpdmVycyBhbmQgZ2VuZXJhbGx5IG1ha2VzCmEg bWVzcyBvZiB0aGluZ3MuCgpGdXJ0aGVybW9yZSB3ZSBvbmx5IG5lZWQgdG8gbWFwIHRoZSBHUFUg UERDIHNlY3Rpb25zCmp1c3Qgb25jZSBkdXJpbmcgaW5pdCBzbyBtYXAgdGhlIG1lbW9yeSBpbnNp ZGUgdGhlIGZ1bmN0aW9uCnRoYXQgdXNlcyBpdCBhbmQgYWRqdXN0IHRoZSBwb2ludGVycyBhbmQg cmVnaXN0ZXIgb2Zmc2V0cwphY2NvcmRpbmdseS4KClNpZ25lZC1vZmYtYnk6IEpvcmRhbiBDcm91 c2UgPGpjcm91c2VAY29kZWF1cm9yYS5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9hZHJl bm8vYTZ4eC54bWwuaCB8IDU0ICsrKysrKysrLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vbXNt L2FkcmVuby9hNnh4X2dtdS5jIHwgODcgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiBkcml2 ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5oIHwgIDYgLS0KIDMgZmlsZXMgY2hhbmdl ZCwgNzggaW5zZXJ0aW9ucygrKSwgNjkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL21zbS9hZHJlbm8vYTZ4eC54bWwuaCBiL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRy ZW5vL2E2eHgueG1sLmgKaW5kZXggODdlYWI1MWY3MDAwLi5kNmJiOGM0MDdiZTQgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vYWRyZW5vL2E2eHgueG1sLmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL21zbS9hZHJlbm8vYTZ4eC54bWwuaApAQCAtMTk4MSw1OSArMTk4MSw1OSBAQCBzdGF0 aWMgaW5saW5lIHVpbnQzMl90IEE2WFhfQ1hfREJHQ19DRkdfREJHQlVTX0JZVEVMXzFfQllURUwx NSh1aW50MzJfdCB2YWwpCiAKICNkZWZpbmUgUkVHX0E2WFhfQ1hfREJHQ19DRkdfREJHQlVTX1RS QUNFX0JVRjIJCQkweDAwMDE4NDMwCiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9FTkFCTEVf UERDCQkJCTB4MDAwMjExNDAKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9FTkFCTEVfUERDCQkJ CTB4MDAwMDExNDAKIAotI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1NFUV9TVEFSVF9BRERSCQkJ CTB4MDAwMjExNDgKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9TRVFfU1RBUlRfQUREUgkJCQkw eDAwMDAxMTQ4CiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MwX0NPTlRST0wJCQkJMHgw MDAyMTU0MAorI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzBfQ09OVFJPTAkJCQkweDAwMDAx NTQwCiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MwX0NNRF9FTkFCTEVfQkFOSwkJCTB4 MDAwMjE1NDEKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MwX0NNRF9FTkFCTEVfQkFOSwkJ CTB4MDAwMDE1NDEKIAotI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzBfQ01EX1dBSVRfRk9S X0NNUExfQkFOSwkJMHgwMDAyMTU0MgorI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzBfQ01E X1dBSVRfRk9SX0NNUExfQkFOSwkJMHgwMDAwMTU0MgogCi0jZGVmaW5lIFJFR19BNlhYX1BEQ19H UFVfVENTMF9DTUQwX01TR0lECQkJMHgwMDAyMTU0MworI2RlZmluZSBSRUdfQTZYWF9QRENfR1BV X1RDUzBfQ01EMF9NU0dJRAkJCTB4MDAwMDE1NDMKIAotI2RlZmluZSBSRUdfQTZYWF9QRENfR1BV X1RDUzBfQ01EMF9BRERSCQkJCTB4MDAwMjE1NDQKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9U Q1MwX0NNRDBfQUREUgkJCQkweDAwMDAxNTQ0CiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9U Q1MwX0NNRDBfREFUQQkJCQkweDAwMDIxNTQ1CisjZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENT MF9DTUQwX0RBVEEJCQkJMHgwMDAwMTU0NQogCi0jZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENT MV9DT05UUk9MCQkJCTB4MDAwMjE1NzIKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NP TlRST0wJCQkJMHgwMDAwMTU3MgogCi0jZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTURf RU5BQkxFX0JBTksJCQkweDAwMDIxNTczCisjZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENTMV9D TURfRU5BQkxFX0JBTksJCQkweDAwMDAxNTczCiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9U Q1MxX0NNRF9XQUlUX0ZPUl9DTVBMX0JBTksJCTB4MDAwMjE1NzQKKyNkZWZpbmUgUkVHX0E2WFhf UERDX0dQVV9UQ1MxX0NNRF9XQUlUX0ZPUl9DTVBMX0JBTksJCTB4MDAwMDE1NzQKIAotI2RlZmlu ZSBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9NU0dJRAkJCTB4MDAwMjE1NzUKKyNkZWZpbmUg UkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NNRDBfTVNHSUQJCQkweDAwMDAxNTc1CiAKLSNkZWZpbmUg UkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NNRDBfQUREUgkJCQkweDAwMDIxNTc2CisjZGVmaW5lIFJF R19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX0FERFIJCQkJMHgwMDAwMTU3NgogCi0jZGVmaW5lIFJF R19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX0RBVEEJCQkJMHgwMDAyMTU3NworI2RlZmluZSBSRUdf QTZYWF9QRENfR1BVX1RDUzFfQ01EMF9EQVRBCQkJCTB4MDAwMDE1NzcKIAotI2RlZmluZSBSRUdf QTZYWF9QRENfR1BVX1RDUzJfQ09OVFJPTAkJCQkweDAwMDIxNWE0CisjZGVmaW5lIFJFR19BNlhY X1BEQ19HUFVfVENTMl9DT05UUk9MCQkJCTB4MDAwMDE1YTQKIAotI2RlZmluZSBSRUdfQTZYWF9Q RENfR1BVX1RDUzJfQ01EX0VOQUJMRV9CQU5LCQkJMHgwMDAyMTVhNQorI2RlZmluZSBSRUdfQTZY WF9QRENfR1BVX1RDUzJfQ01EX0VOQUJMRV9CQU5LCQkJMHgwMDAwMTVhNQogCi0jZGVmaW5lIFJF R19BNlhYX1BEQ19HUFVfVENTMl9DTURfV0FJVF9GT1JfQ01QTF9CQU5LCQkweDAwMDIxNWE2Cisj ZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENTMl9DTURfV0FJVF9GT1JfQ01QTF9CQU5LCQkweDAw MDAxNWE2CiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MyX0NNRDBfTVNHSUQJCQkweDAw MDIxNWE3CisjZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENTMl9DTUQwX01TR0lECQkJMHgwMDAw MTVhNwogCi0jZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENTMl9DTUQwX0FERFIJCQkJMHgwMDAy MTVhOAorI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzJfQ01EMF9BRERSCQkJCTB4MDAwMDE1 YTgKIAotI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzJfQ01EMF9EQVRBCQkJCTB4MDAwMjE1 YTkKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MyX0NNRDBfREFUQQkJCQkweDAwMDAxNWE5 CiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NPTlRST0wJCQkJMHgwMDAyMTVkNgor I2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ09OVFJPTAkJCQkweDAwMDAxNWQ2CiAKLSNk ZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRF9FTkFCTEVfQkFOSwkJCTB4MDAwMjE1ZDcK KyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRF9FTkFCTEVfQkFOSwkJCTB4MDAwMDE1 ZDcKIAotI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EX1dBSVRfRk9SX0NNUExfQkFO SwkJMHgwMDAyMTVkOAorI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EX1dBSVRfRk9S X0NNUExfQkFOSwkJMHgwMDAwMTVkOAogCi0jZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENTM19D TUQwX01TR0lECQkJMHgwMDAyMTVkOQorI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01E MF9NU0dJRAkJCTB4MDAwMDE1ZDkKIAotI2RlZmluZSBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01E MF9BRERSCQkJCTB4MDAwMjE1ZGEKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRDBf QUREUgkJCQkweDAwMDAxNWRhCiAKLSNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRDBf REFUQQkJCQkweDAwMDIxNWRiCisjZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0RB VEEJCQkJMHgwMDAwMTVkYgogCi0jZGVmaW5lIFJFR19BNlhYX1BEQ19HUFVfU0VRX01FTV8wCQkJ CTB4MDAwYTAwMDAKKyNkZWZpbmUgUkVHX0E2WFhfUERDX0dQVV9TRVFfTUVNXzAJCQkJMHgwMDAw MDAwMAogCiAjZGVmaW5lIFJFR19BNlhYX1gxX1dJTkRPV19PRkZTRVQJCQkJMHgwMDAwODhkNAog I2RlZmluZSBBNlhYX1gxX1dJTkRPV19PRkZTRVRfV0lORE9XX09GRlNFVF9ESVNBQkxFCQkweDgw MDAwMDAwCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5j IGIvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTZ4eF9nbXUuYwppbmRleCBmYmI1MDE5ODY3 MjAuLjllNGI1ZjA4MTZlMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8v YTZ4eF9nbXUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5jCkBA IC0zNDgsOCArMzQ4LDIzIEBAIHN0YXRpYyB2b2lkIGE2eHhfcnBtaF9zdG9wKHN0cnVjdCBhNnh4 X2dtdSAqZ211KQogCWdtdV93cml0ZShnbXUsIFJFR19BNlhYX0dNVV9SU0NDX0NPTlRST0xfUkVR LCAwKTsKIH0KIAorc3RhdGljIGlubGluZSB2b2lkIHBkY193cml0ZSh2b2lkIF9faW9tZW0gKnB0 ciwgdTMyIG9mZnNldCwgdTMyIHZhbHVlKQoreworCXJldHVybiBtc21fd3JpdGVsKHZhbHVlLCBw dHIgKyAob2Zmc2V0IDw8IDIpKTsKK30KKworc3RhdGljIHZvaWQgX19pb21lbSAqYTZ4eF9nbXVf Z2V0X21taW8oc3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldiwKKwkJY29uc3QgY2hhciAqbmFt ZSk7CisKIHN0YXRpYyB2b2lkIGE2eHhfZ211X3JwbWhfaW5pdChzdHJ1Y3QgYTZ4eF9nbXUgKmdt dSkKIHsKKwlzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNlICpwZGV2ID0gdG9fcGxhdGZvcm1fZGV2aWNl KGdtdS0+ZGV2KTsKKwl2b2lkIF9faW9tZW0gKnBkY3B0ciA9IGE2eHhfZ211X2dldF9tbWlvKHBk ZXYsICJnbXVfcGRjIik7CisJdm9pZCBfX2lvbWVtICpzZXFwdHIgPSBhNnh4X2dtdV9nZXRfbW1p byhwZGV2LCAiZ211X3BkY19zZXEiKTsKKworCWlmICghcGRjcHRyIHx8ICFzZXFwdHIpCisJCWdv dG8gZXJyOworCiAJLyogRGlzYWJsZSBTREUgY2xvY2sgZ2F0aW5nICovCiAJZ211X3dyaXRlKGdt dSwgUkVHX0E2WFhfR1BVX1JTQ0NfUlNDX1NUQVRVUzBfRFJWMCwgQklUKDI0KSk7CiAKQEAgLTM3 NCw0NCArMzg5LDQ4IEBAIHN0YXRpYyB2b2lkIGE2eHhfZ211X3JwbWhfaW5pdChzdHJ1Y3QgYTZ4 eF9nbXUgKmdtdSkKIAlnbXVfd3JpdGUoZ211LCBSRUdfQTZYWF9SU0NDX1NFUV9NRU1fMF9EUlYw ICsgNCwgMHgwMDIwZThhOCk7CiAKIAkvKiBMb2FkIFBEQyBzZXF1ZW5jZXIgdUNvZGUgZm9yIHBv d2VyIHVwIGFuZCBwb3dlciBkb3duIHNlcXVlbmNlICovCi0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2 WFhfUERDX0dQVV9TRVFfTUVNXzAsIDB4ZmViZWExZTEpOwotCXBkY193cml0ZShnbXUsIFJFR19B NlhYX1BEQ19HUFVfU0VRX01FTV8wICsgMSwgMHhhNWE0YTNhMik7Ci0JcGRjX3dyaXRlKGdtdSwg UkVHX0E2WFhfUERDX0dQVV9TRVFfTUVNXzAgKyAyLCAweDgzODJhNmUwKTsKLQlwZGNfd3JpdGUo Z211LCBSRUdfQTZYWF9QRENfR1BVX1NFUV9NRU1fMCArIDMsIDB4YmNlM2UyODQpOwotCXBkY193 cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfU0VRX01FTV8wICsgNCwgMHgwMDIwODFmYyk7CisJ cGRjX3dyaXRlKHNlcXB0ciwgUkVHX0E2WFhfUERDX0dQVV9TRVFfTUVNXzAsIDB4ZmViZWExZTEp OworCXBkY193cml0ZShzZXFwdHIsIFJFR19BNlhYX1BEQ19HUFVfU0VRX01FTV8wICsgMSwgMHhh NWE0YTNhMik7CisJcGRjX3dyaXRlKHNlcXB0ciwgUkVHX0E2WFhfUERDX0dQVV9TRVFfTUVNXzAg KyAyLCAweDgzODJhNmUwKTsKKwlwZGNfd3JpdGUoc2VxcHRyLCBSRUdfQTZYWF9QRENfR1BVX1NF UV9NRU1fMCArIDMsIDB4YmNlM2UyODQpOworCXBkY193cml0ZShzZXFwdHIsIFJFR19BNlhYX1BE Q19HUFVfU0VRX01FTV8wICsgNCwgMHgwMDIwODFmYyk7CiAKIAkvKiBTZXQgVENTIGNvbW1hbmRz IHVzZWQgYnkgUERDIHNlcXVlbmNlIGZvciBsb3cgcG93ZXIgbW9kZXMgKi8KLQlwZGNfd3JpdGUo Z211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EX0VOQUJMRV9CQU5LLCA3KTsKLQlwZGNfd3Jp dGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EX1dBSVRfRk9SX0NNUExfQkFOSywgMCk7 Ci0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NPTlRST0wsIDApOwotCXBk Y193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX01TR0lELCAweDEwMTA4KTsK LQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9BRERSLCAweDMwMDEw KTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9EQVRBLCAxKTsK LQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9NU0dJRCArIDQsIDB4 MTAxMDgpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX0FERFIg KyA0LCAweDMwMDAwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01E MF9EQVRBICsgNCwgMHgwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzFf Q01EMF9NU0dJRCArIDgsIDB4MTAxMDgpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19H UFVfVENTMV9DTUQwX0FERFIgKyA4LCAweDMwMDgwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZY WF9QRENfR1BVX1RDUzFfQ01EMF9EQVRBICsgOCwgMHgwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdf QTZYWF9QRENfR1BVX1RDUzNfQ01EX0VOQUJMRV9CQU5LLCA3KTsKLQlwZGNfd3JpdGUoZ211LCBS RUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EX1dBSVRfRk9SX0NNUExfQkFOSywgMCk7Ci0JcGRjX3dy aXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NPTlRST0wsIDApOwotCXBkY193cml0ZShn bXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX01TR0lELCAweDEwMTA4KTsKLQlwZGNfd3Jp dGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EMF9BRERSLCAweDMwMDEwKTsKLQlwZGNf d3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EMF9EQVRBLCAyKTsKLQlwZGNfd3Jp dGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EMF9NU0dJRCArIDQsIDB4MTAxMDgpOwot CXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0FERFIgKyA0LCAweDMw MDAwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EMF9EQVRBICsg NCwgMHgzKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EMF9NU0dJ RCArIDgsIDB4MTAxMDgpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19D TUQwX0FERFIgKyA4LCAweDMwMDgwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BV X1RDUzNfQ01EMF9EQVRBICsgOCwgMHgzKTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9Q RENfR1BVX1RDUzFfQ01EX0VOQUJMRV9CQU5LLCA3KTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdf QTZYWF9QRENfR1BVX1RDUzFfQ01EX1dBSVRfRk9SX0NNUExfQkFOSywgMCk7CisJcGRjX3dyaXRl KHBkY3B0ciwgUkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NPTlRST0wsIDApOworCXBkY193cml0ZShw ZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX01TR0lELCAweDEwMTA4KTsKKwlwZGNf d3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9BRERSLCAweDMwMDEwKTsK KwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9EQVRBLCAxKTsK KwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9NU0dJRCArIDQs IDB4MTAxMDgpOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQw X0FERFIgKyA0LCAweDMwMDAwKTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BV X1RDUzFfQ01EMF9EQVRBICsgNCwgMHgwKTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9Q RENfR1BVX1RDUzFfQ01EMF9NU0dJRCArIDgsIDB4MTAxMDgpOworCXBkY193cml0ZShwZGNwdHIs IFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX0FERFIgKyA4LCAweDMwMDgwKTsKKwlwZGNfd3Jp dGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzFfQ01EMF9EQVRBICsgOCwgMHgwKTsKKwlw ZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EX0VOQUJMRV9CQU5LLCA3 KTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EX1dBSVRfRk9S X0NNUExfQkFOSywgMCk7CisJcGRjX3dyaXRlKHBkY3B0ciwgUkVHX0E2WFhfUERDX0dQVV9UQ1Mz X0NPTlRST0wsIDApOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTM19D TUQwX01TR0lELCAweDEwMTA4KTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BV X1RDUzNfQ01EMF9BRERSLCAweDMwMDEwKTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9Q RENfR1BVX1RDUzNfQ01EMF9EQVRBLCAyKTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9Q RENfR1BVX1RDUzNfQ01EMF9NU0dJRCArIDQsIDB4MTAxMDgpOworCXBkY193cml0ZShwZGNwdHIs IFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0FERFIgKyA0LCAweDMwMDAwKTsKKwlwZGNfd3Jp dGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EMF9EQVRBICsgNCwgMHgzKTsKKwlw ZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ01EMF9NU0dJRCArIDgsIDB4 MTAxMDgpOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0FE RFIgKyA4LCAweDMwMDgwKTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RD UzNfQ01EMF9EQVRBICsgOCwgMHgzKTsKIAogCS8qIFNldHVwIEdQVSBQREMgKi8KLQlwZGNfd3Jp dGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1NFUV9TVEFSVF9BRERSLCAwKTsKLQlwZGNfd3JpdGUo Z211LCBSRUdfQTZYWF9QRENfR1BVX0VOQUJMRV9QREMsIDB4ODAwMDAwMDEpOworCXBkY193cml0 ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfU0VRX1NUQVJUX0FERFIsIDApOworCXBkY193cml0 ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfRU5BQkxFX1BEQywgMHg4MDAwMDAwMSk7CiAKIAkv KiBlbnN1cmUgbm8gd3JpdGVzIGhhcHBlbiBiZWZvcmUgdGhlIHVDb2RlIGlzIGZ1bGx5IHdyaXR0 ZW4gKi8KIAl3bWIoKTsKKworZXJyOgorCWRldm1faW91bm1hcChnbXUtPmRldiwgcGRjcHRyKTsK KwlkZXZtX2lvdW5tYXAoZ211LT5kZXYsIHNlcXB0cik7CiB9CiAKIC8qCkBAIC0xMTcwLDExICsx MTg5LDcgQEAgaW50IGE2eHhfZ211X3Byb2JlKHN0cnVjdCBhNnh4X2dwdSAqYTZ4eF9ncHUsIHN0 cnVjdCBkZXZpY2Vfbm9kZSAqbm9kZSkKIAogCS8qIE1hcCB0aGUgR01VIHJlZ2lzdGVycyAqLwog CWdtdS0+bW1pbyA9IGE2eHhfZ211X2dldF9tbWlvKHBkZXYsICJnbXUiKTsKLQotCS8qIE1hcCB0 aGUgR1BVIHBvd2VyIGRvbWFpbiBjb250cm9sbGVyIHJlZ2lzdGVycyAqLwotCWdtdS0+cGRjX21t aW8gPSBhNnh4X2dtdV9nZXRfbW1pbyhwZGV2LCAiZ211X3BkYyIpOwotCi0JaWYgKElTX0VSUihn bXUtPm1taW8pIHx8IElTX0VSUihnbXUtPnBkY19tbWlvKSkKKwlpZiAoSVNfRVJSKGdtdS0+bW1p bykpCiAJCWdvdG8gZXJyOwogCiAJLyogR2V0IHRoZSBIRkkgYW5kIEdNVSBpbnRlcnJ1cHRzICov CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5oIGIvZHJp dmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTZ4eF9nbXUuaAppbmRleCBkOWEzODZjMTg3OTkuLjA5 ZDk3ZTRlZDI5MyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9hZHJlbm8vYTZ4eF9n bXUuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5oCkBAIC00Nyw3 ICs0Nyw2IEBAIHN0cnVjdCBhNnh4X2dtdSB7CiAJc3RydWN0IGRldmljZSAqZGV2OwogCiAJdm9p ZCAqIF9faW9tZW0gbW1pbzsKLQl2b2lkICogX19pb21lbSBwZGNfbW1pbzsKIAogCWludCBoZmlf aXJxOwogCWludCBnbXVfaXJxOwpAQCAtODksMTEgKzg4LDYgQEAgc3RhdGljIGlubGluZSB2b2lk IGdtdV93cml0ZShzdHJ1Y3QgYTZ4eF9nbXUgKmdtdSwgdTMyIG9mZnNldCwgdTMyIHZhbHVlKQog CXJldHVybiBtc21fd3JpdGVsKHZhbHVlLCBnbXUtPm1taW8gKyAob2Zmc2V0IDw8IDIpKTsKIH0K IAotc3RhdGljIGlubGluZSB2b2lkIHBkY193cml0ZShzdHJ1Y3QgYTZ4eF9nbXUgKmdtdSwgdTMy IG9mZnNldCwgdTMyIHZhbHVlKQotewotCXJldHVybiBtc21fd3JpdGVsKHZhbHVlLCBnbXUtPnBk Y19tbWlvICsgKG9mZnNldCA8PCAyKSk7Ci19Ci0KIHN0YXRpYyBpbmxpbmUgdm9pZCBnbXVfcm13 KHN0cnVjdCBhNnh4X2dtdSAqZ211LCB1MzIgcmVnLCB1MzIgbWFzaywgdTMyIG9yKQogewogCXUz MiB2YWwgPSBnbXVfcmVhZChnbXUsIHJlZyk7Ci0tIAoyLjE4LjAKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJp LWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=