From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: [PATCH 2/9] drm/msm/a6xx: Fix PDC register overlap Date: Mon, 27 Aug 2018 09:11:05 -0600 Message-ID: <20180827151112.25211-3-jcrouse@codeaurora.org> References: <20180827151112.25211-1-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180827151112.25211-1-jcrouse@codeaurora.org> 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, georgi.djakov@linaro.org Cc: nm@ti.com, devicetree@vger.kernel.org, linux-pm@vger.kernel.org, sboyd@kernel.org, linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, bjorn.andersson@linaro.org, vireshk@kernel.org, linux-arm-kernel@lists.infradead.org List-Id: devicetree@vger.kernel.org VGhlIGN1cnJlbnQgZGVzaWduIGdyZWVkaWx5IHRha2VzIGEgYmlnIGNodW5rIG9mIHRoZSBQREMK cmVnaXN0ZXIgc3BhY2UgaW5zdGVhZCBvZiBqdXN0IHRoZSBHUFUgc3BlY2lmaWMgc2VjdGlvbnMK d2hpY2ggY29uZmxpY3RzIHdpdGggb3RoZXIgZHJpdmVycyBhbmQgZ2VuZXJhbGx5IG1ha2VzCmEg bWVzcyBvZiB0aGluZ3MuCgpGdXJ0aGVybW9yZSB3ZSBvbmx5IG5lZWQgdG8gbWFwIHRoZSBHUFUg UERDIHNlY3Rpb25zCmp1c3Qgb25jZSBkdXJpbmcgaW5pdCBzbyBtYXAgdGhlIG1lbW9yeSBpbnNp ZGUgdGhlIGZ1bmN0aW9uCnRoYXQgdXNlcyBpdC4KClNpZ25lZC1vZmYtYnk6IEpvcmRhbiBDcm91 c2UgPGpjcm91c2VAY29kZWF1cm9yYS5vcmc+Ci0tLQogZHJpdmVycy9ncHUvZHJtL21zbS9hZHJl bm8vYTZ4eF9nbXUuYyB8IDg3ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLQogZHJpdmVycy9n cHUvZHJtL21zbS9hZHJlbm8vYTZ4eF9nbXUuaCB8ICA2IC0tCiAyIGZpbGVzIGNoYW5nZWQsIDUx IGluc2VydGlvbnMoKyksIDQyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9tc20vYWRyZW5vL2E2eHhfZ211LmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9h Nnh4X2dtdS5jCmluZGV4IGJiYjgxMjZlYzVjNS4uZDBkYWM0YzJlM2U3IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vYWRyZW5vL2E2eHhfZ211LmMKQEAgLTM0OCw4ICszNDgsMjMgQEAgc3RhdGljIHZvaWQg YTZ4eF9ycG1oX3N0b3Aoc3RydWN0IGE2eHhfZ211ICpnbXUpCiAJZ211X3dyaXRlKGdtdSwgUkVH X0E2WFhfR01VX1JTQ0NfQ09OVFJPTF9SRVEsIDApOwogfQogCitzdGF0aWMgaW5saW5lIHZvaWQg cGRjX3dyaXRlKHZvaWQgX19pb21lbSAqcHRyLCB1MzIgb2Zmc2V0LCB1MzIgdmFsdWUpCit7CisJ cmV0dXJuIG1zbV93cml0ZWwodmFsdWUsIHB0ciArIChvZmZzZXQgPDwgMikpOworfQorCitzdGF0 aWMgdm9pZCBfX2lvbWVtICphNnh4X2dtdV9nZXRfbW1pbyhzdHJ1Y3QgcGxhdGZvcm1fZGV2aWNl ICpwZGV2LAorCQljb25zdCBjaGFyICpuYW1lKTsKKwogc3RhdGljIHZvaWQgYTZ4eF9nbXVfcnBt aF9pbml0KHN0cnVjdCBhNnh4X2dtdSAqZ211KQogeworCXN0cnVjdCBwbGF0Zm9ybV9kZXZpY2Ug KnBkZXYgPSB0b19wbGF0Zm9ybV9kZXZpY2UoZ211LT5kZXYpOworCXZvaWQgX19pb21lbSAqcGRj cHRyID0gYTZ4eF9nbXVfZ2V0X21taW8ocGRldiwgImdtdV9wZGMiKTsKKwl2b2lkIF9faW9tZW0g KnNlcXB0ciA9IGE2eHhfZ211X2dldF9tbWlvKHBkZXYsICJnbXVfcGRjX3NlcSIpOworCisJaWYg KCFwZGNwdHIgfHwgIXNlcXB0cikKKwkJZ290byBlcnI7CisKIAkvKiBEaXNhYmxlIFNERSBjbG9j ayBnYXRpbmcgKi8KIAlnbXVfd3JpdGUoZ211LCBSRUdfQTZYWF9HUFVfUlNDQ19SU0NfU1RBVFVT MF9EUlYwLCBCSVQoMjQpKTsKIApAQCAtMzc0LDQ0ICszODksNDggQEAgc3RhdGljIHZvaWQgYTZ4 eF9nbXVfcnBtaF9pbml0KHN0cnVjdCBhNnh4X2dtdSAqZ211KQogCWdtdV93cml0ZShnbXUsIFJF R19BNlhYX1JTQ0NfU0VRX01FTV8wX0RSVjAgKyA0LCAweDAwMjBlOGE4KTsKIAogCS8qIExvYWQg UERDIHNlcXVlbmNlciB1Q29kZSBmb3IgcG93ZXIgdXAgYW5kIHBvd2VyIGRvd24gc2VxdWVuY2Ug Ki8KLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1NFUV9NRU1fMCwgMHhmZWJlYTFl MSk7Ci0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQVV9TRVFfTUVNXzAgKyAxLCAweGE1 YTRhM2EyKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1NFUV9NRU1fMCArIDIs IDB4ODM4MmE2ZTApOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfU0VRX01FTV8w ICsgMywgMHhiY2UzZTI4NCk7Ci0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQVV9TRVFf TUVNXzAgKyA0LCAweDAwMjA4MWZjKTsKKwlwZGNfd3JpdGUoc2VxcHRyLCBSRUdfQTZYWF9QRENf R1BVX1NFUV9NRU1fMCwgMHhmZWJlYTFlMSk7CisJcGRjX3dyaXRlKHNlcXB0ciwgUkVHX0E2WFhf UERDX0dQVV9TRVFfTUVNXzAgKyAxLCAweGE1YTRhM2EyKTsKKwlwZGNfd3JpdGUoc2VxcHRyLCBS RUdfQTZYWF9QRENfR1BVX1NFUV9NRU1fMCArIDIsIDB4ODM4MmE2ZTApOworCXBkY193cml0ZShz ZXFwdHIsIFJFR19BNlhYX1BEQ19HUFVfU0VRX01FTV8wICsgMywgMHhiY2UzZTI4NCk7CisJcGRj X3dyaXRlKHNlcXB0ciwgUkVHX0E2WFhfUERDX0dQVV9TRVFfTUVNXzAgKyA0LCAweDAwMjA4MWZj KTsKIAogCS8qIFNldCBUQ1MgY29tbWFuZHMgdXNlZCBieSBQREMgc2VxdWVuY2UgZm9yIGxvdyBw b3dlciBtb2RlcyAqLwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTURf RU5BQkxFX0JBTkssIDcpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9D TURfV0FJVF9GT1JfQ01QTF9CQU5LLCAwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENf R1BVX1RDUzFfQ09OVFJPTCwgMCk7Ci0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQVV9U Q1MxX0NNRDBfTVNHSUQsIDB4MTAxMDgpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19H UFVfVENTMV9DTUQwX0FERFIsIDB4MzAwMTApOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BE Q19HUFVfVENTMV9DTUQwX0RBVEEsIDEpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19H UFVfVENTMV9DTUQwX01TR0lEICsgNCwgMHgxMDEwOCk7Ci0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2 WFhfUERDX0dQVV9UQ1MxX0NNRDBfQUREUiArIDQsIDB4MzAwMDApOwotCXBkY193cml0ZShnbXUs IFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX0RBVEEgKyA0LCAweDApOwotCXBkY193cml0ZShn bXUsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX01TR0lEICsgOCwgMHgxMDEwOCk7Ci0JcGRj X3dyaXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NNRDBfQUREUiArIDgsIDB4MzAwODAp OwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX0RBVEEgKyA4LCAw eDApOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTURfRU5BQkxFX0JB TkssIDcpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTURfV0FJVF9G T1JfQ01QTF9CQU5LLCAwKTsKLQlwZGNfd3JpdGUoZ211LCBSRUdfQTZYWF9QRENfR1BVX1RDUzNf Q09OVFJPTCwgMCk7Ci0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRDBf TVNHSUQsIDB4MTAxMDgpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19D TUQwX0FERFIsIDB4MzAwMTApOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENT M19DTUQwX0RBVEEsIDIpOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19D TUQwX01TR0lEICsgNCwgMHgxMDEwOCk7Ci0JcGRjX3dyaXRlKGdtdSwgUkVHX0E2WFhfUERDX0dQ VV9UQ1MzX0NNRDBfQUREUiArIDQsIDB4MzAwMDApOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhY X1BEQ19HUFVfVENTM19DTUQwX0RBVEEgKyA0LCAweDMpOwotCXBkY193cml0ZShnbXUsIFJFR19B NlhYX1BEQ19HUFVfVENTM19DTUQwX01TR0lEICsgOCwgMHgxMDEwOCk7Ci0JcGRjX3dyaXRlKGdt dSwgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRDBfQUREUiArIDgsIDB4MzAwODApOwotCXBkY193 cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0RBVEEgKyA4LCAweDMpOworCXBk Y193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTURfRU5BQkxFX0JBTkssIDcp OworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTURfV0FJVF9GT1Jf Q01QTF9CQU5LLCAwKTsKKwlwZGNfd3JpdGUocGRjcHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzFf Q09OVFJPTCwgMCk7CisJcGRjX3dyaXRlKHBkY3B0ciwgUkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NN RDBfTVNHSUQsIDB4MTAxMDgpOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVf VENTMV9DTUQwX0FERFIsIDB4MzAwMTApOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BE Q19HUFVfVENTMV9DTUQwX0RBVEEsIDEpOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BE Q19HUFVfVENTMV9DTUQwX01TR0lEICsgNCwgMHgxMDEwOCk7CisJcGRjX3dyaXRlKHBkY3B0ciwg UkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NNRDBfQUREUiArIDQsIDB4MzAwMDApOworCXBkY193cml0 ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX0RBVEEgKyA0LCAweDApOworCXBk Y193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTMV9DTUQwX01TR0lEICsgOCwgMHgx MDEwOCk7CisJcGRjX3dyaXRlKHBkY3B0ciwgUkVHX0E2WFhfUERDX0dQVV9UQ1MxX0NNRDBfQURE UiArIDgsIDB4MzAwODApOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENT MV9DTUQwX0RBVEEgKyA4LCAweDApOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19H UFVfVENTM19DTURfRU5BQkxFX0JBTkssIDcpOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhY X1BEQ19HUFVfVENTM19DTURfV0FJVF9GT1JfQ01QTF9CQU5LLCAwKTsKKwlwZGNfd3JpdGUocGRj cHRyLCBSRUdfQTZYWF9QRENfR1BVX1RDUzNfQ09OVFJPTCwgMCk7CisJcGRjX3dyaXRlKHBkY3B0 ciwgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRDBfTVNHSUQsIDB4MTAxMDgpOworCXBkY193cml0 ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0FERFIsIDB4MzAwMTApOworCXBk Y193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0RBVEEsIDIpOworCXBk Y193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX01TR0lEICsgNCwgMHgx MDEwOCk7CisJcGRjX3dyaXRlKHBkY3B0ciwgUkVHX0E2WFhfUERDX0dQVV9UQ1MzX0NNRDBfQURE UiArIDQsIDB4MzAwMDApOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENT M19DTUQwX0RBVEEgKyA0LCAweDMpOworCXBkY193cml0ZShwZGNwdHIsIFJFR19BNlhYX1BEQ19H UFVfVENTM19DTUQwX01TR0lEICsgOCwgMHgxMDEwOCk7CisJcGRjX3dyaXRlKHBkY3B0ciwgUkVH X0E2WFhfUERDX0dQVV9UQ1MzX0NNRDBfQUREUiArIDgsIDB4MzAwODApOworCXBkY193cml0ZShw ZGNwdHIsIFJFR19BNlhYX1BEQ19HUFVfVENTM19DTUQwX0RBVEEgKyA4LCAweDMpOwogCiAJLyog U2V0dXAgR1BVIFBEQyAqLwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfU0VRX1NU QVJUX0FERFIsIDApOwotCXBkY193cml0ZShnbXUsIFJFR19BNlhYX1BEQ19HUFVfRU5BQkxFX1BE QywgMHg4MDAwMDAwMSk7CisJcGRjX3dyaXRlKHBkY3B0ciwgUkVHX0E2WFhfUERDX0dQVV9TRVFf U1RBUlRfQUREUiwgMCk7CisJcGRjX3dyaXRlKHBkY3B0ciwgUkVHX0E2WFhfUERDX0dQVV9FTkFC TEVfUERDLCAweDgwMDAwMDAxKTsKIAogCS8qIGVuc3VyZSBubyB3cml0ZXMgaGFwcGVuIGJlZm9y ZSB0aGUgdUNvZGUgaXMgZnVsbHkgd3JpdHRlbiAqLwogCXdtYigpOworCitlcnI6CisJZGV2bV9p b3VubWFwKGdtdS0+ZGV2LCBwZGNwdHIpOworCWRldm1faW91bm1hcChnbXUtPmRldiwgc2VxcHRy KTsKIH0KIAogLyoKQEAgLTExNzAsMTEgKzExODksNyBAQCBpbnQgYTZ4eF9nbXVfcHJvYmUoc3Ry dWN0IGE2eHhfZ3B1ICphNnh4X2dwdSwgc3RydWN0IGRldmljZV9ub2RlICpub2RlKQogCiAJLyog TWFwIHRoZSBHTVUgcmVnaXN0ZXJzICovCiAJZ211LT5tbWlvID0gYTZ4eF9nbXVfZ2V0X21taW8o cGRldiwgImdtdSIpOwotCi0JLyogTWFwIHRoZSBHUFUgcG93ZXIgZG9tYWluIGNvbnRyb2xsZXIg cmVnaXN0ZXJzICovCi0JZ211LT5wZGNfbW1pbyA9IGE2eHhfZ211X2dldF9tbWlvKHBkZXYsICJn bXVfcGRjIik7Ci0KLQlpZiAoSVNfRVJSKGdtdS0+bW1pbykgfHwgSVNfRVJSKGdtdS0+cGRjX21t aW8pKQorCWlmIChJU19FUlIoZ211LT5tbWlvKSkKIAkJZ290byBlcnI7CiAKIAkvKiBHZXQgdGhl IEhGSSBhbmQgR01VIGludGVycnVwdHMgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9t c20vYWRyZW5vL2E2eHhfZ211LmggYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dt dS5oCmluZGV4IGQ5YTM4NmMxODc5OS4uMDlkOTdlNGVkMjkzIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vbXNtL2FkcmVuby9hNnh4X2dtdS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20v YWRyZW5vL2E2eHhfZ211LmgKQEAgLTQ3LDcgKzQ3LDYgQEAgc3RydWN0IGE2eHhfZ211IHsKIAlz dHJ1Y3QgZGV2aWNlICpkZXY7CiAKIAl2b2lkICogX19pb21lbSBtbWlvOwotCXZvaWQgKiBfX2lv bWVtIHBkY19tbWlvOwogCiAJaW50IGhmaV9pcnE7CiAJaW50IGdtdV9pcnE7CkBAIC04OSwxMSAr ODgsNiBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZ211X3dyaXRlKHN0cnVjdCBhNnh4X2dtdSAqZ211 LCB1MzIgb2Zmc2V0LCB1MzIgdmFsdWUpCiAJcmV0dXJuIG1zbV93cml0ZWwodmFsdWUsIGdtdS0+ bW1pbyArIChvZmZzZXQgPDwgMikpOwogfQogCi1zdGF0aWMgaW5saW5lIHZvaWQgcGRjX3dyaXRl KHN0cnVjdCBhNnh4X2dtdSAqZ211LCB1MzIgb2Zmc2V0LCB1MzIgdmFsdWUpCi17Ci0JcmV0dXJu IG1zbV93cml0ZWwodmFsdWUsIGdtdS0+cGRjX21taW8gKyAob2Zmc2V0IDw8IDIpKTsKLX0KLQog c3RhdGljIGlubGluZSB2b2lkIGdtdV9ybXcoc3RydWN0IGE2eHhfZ211ICpnbXUsIHUzMiByZWcs IHUzMiBtYXNrLCB1MzIgb3IpCiB7CiAJdTMyIHZhbCA9IGdtdV9yZWFkKGdtdSwgcmVnKTsKLS0g CjIuMTguMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K ZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==