From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sasha Levin Subject: [PATCH AUTOSEL 5.0 207/262] drm/amd/display: Enable vblank interrupt during CRC capture Date: Wed, 27 Mar 2019 14:01:02 -0400 Message-ID: <20190327180158.10245-207-sashal@kernel.org> References: <20190327180158.10245-1-sashal@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190327180158.10245-1-sashal@kernel.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Alex Deucher , Sasha Levin , dri-devel@lists.freedesktop.org, Nicholas Kazlauskas , amd-gfx@lists.freedesktop.org List-Id: amd-gfx.lists.freedesktop.org RnJvbTogTmljaG9sYXMgS2F6bGF1c2thcyA8bmljaG9sYXMua2F6bGF1c2thc0BhbWQuY29tPgoK WyBVcHN0cmVhbSBjb21taXQgNDI4ZGEyYmRiMDVkNzZjNDhkMGJkOGZiZmEyZTRjMTAyNjg1YmUw OCBdCgpbV2h5XQpJbiBvcmRlciB0byByZWFkIENSQyBldmVudHMgd2hlbiBDUkMgY2FwdHVyZSBp cyBlbmFibGVkIHRoZSB2YmxhbmsKaW50ZXJycHV0IGhhbmRsZXIgbmVlZHMgdG8gYmUgcnVubmlu ZyBmb3IgdGhlIENSVEMuIFRoZSBoYW5kbGVyIGlzCmVuYWJsZWQgd2hpbGUgdGhlcmUgaXMgYW4g YWN0aXZlIHZibGFuayByZWZlcmVuY2UuCgpXaGVuIHJ1bm5pbmcgSUdUIHRlc3RzIHRoZXJlIHdp bGwgb2Z0ZW4gYmUgbm8gYWN0aXZlIHZibGFuayByZWZlcmVuY2UKYnV0IHRoZSB0ZXN0IGV4cGVj dHMgdG8gcmVhZCBhIENSQyB2YWx1ZS4gVGhpcyBpcyB2YWxpZCB1c2FnZSAoYW5kCndvcmtzIG9u IGk5MTUgc2luY2UgdGhleSBoYXZlIGEgQ1JDIGludGVycnVwdCBoYW5kbGVyKSBzbyB0aGUgcmVm ZXJlbmNlCnRvIHRoZSB2Ymxhbmsgc2hvdWxkIGJlIGdyYWJiZWQgd2hpbGUgY2FwdHVyZSBpcyBh Y3RpdmUuCgpUaGlzIGlzc3VlIHdhcyBmb3VuZCBydW5uaW5nOgoKaWd0QGttc19wbGFuZV9tdWx0 aXBsZUBhdG9taWMtcGlwZS1iLXRpbGluZy1ub25lCgpUaGUgcGlwZS1iIGlzIHRoZSBvbmx5IG9u ZSBpbiB0aGUgaW5pdGlhbCBjb21taXQgYW5kIHdhcyBub3QgcHJldmlvdXNseQphY3RpdmUgc28g bm8gdmJsYW5rIHJlZmVyZW5jZSBpcyBncmFiYmVkLiBUaGUgdmJsYW5rIGludGVycnVwdCBpcwpu b3QgZW5hYmxlZCBhbmQgdGhlIHRlc3QgdGltZXMgb3V0LgoKW0hvd10KS2VlcCBhIHJlZmVyZW5j ZSB0byB0aGUgdmJsYW5rIGFzIGxvbmcgYXMgQ1JDIGNhcHR1cmUgaXMgZW5hYmxlZC4KSWYgdXNl cnNwYWNlIG5ldmVyIGV4cGxpY2l0bHkgZGlzYWJsZXMgaXQgdGhlbiB0aGUgcmVmZXJlbmNlIGlz CmFsc28gZHJvcHBlZCB3aGVuIHJlbW92aW5nIHRoZSBDUlRDIGZyb20gdGhlIGNvbnRleHQgKHN0 cmVhbSA9IE5VTEwpLgoKU2lnbmVkLW9mZi1ieTogTmljaG9sYXMgS2F6bGF1c2thcyA8bmljaG9s YXMua2F6bGF1c2thc0BhbWQuY29tPgpSZXZpZXdlZC1ieTogSGFycnkgV2VudGxhbmQgPEhhcnJ5 LldlbnRsYW5kQGFtZC5jb20+ClJldmlld2VkLWJ5OiBTdW4gcGVuZyBMaSA8U3VucGVuZy5MaUBh bWQuY29tPgpBY2tlZC1ieTogTGVvIExpIDxzdW5wZW5nLmxpQGFtZC5jb20+ClNpZ25lZC1vZmYt Ynk6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1kLmNvbT4KU2lnbmVkLW9mZi1i eTogU2FzaGEgTGV2aW4gPHNhc2hhbEBrZXJuZWwub3JnPgotLS0KIC4uLi9ncHUvZHJtL2FtZC9k aXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYyB8IDE0ICsrKysrKy0KIC4uLi9kcm0vYW1kL2Rp c3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV9jcmMuYyB8IDQyICsrKysrKysrKy0tLS0tLS0tLS0K IDIgZmlsZXMgY2hhbmdlZCwgMzQgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0u YyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMKaW5k ZXggMDA0MDYwNWNhY2U4Li44M2M4YTA0MDc1MzcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG0uYwpAQCAtNDk5NywxMCArNDk5NywyMiBA QCBzdGF0aWMgaW50IGFtZGdwdV9kbV9hdG9taWNfY29tbWl0KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCiAJICovCiAJZm9yX2VhY2hfb2xkbmV3X2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIG9s ZF9jcnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewogCQlzdHJ1Y3QgZG1fY3J0Y19zdGF0 ZSAqZG1fb2xkX2NydGNfc3RhdGUgPSB0b19kbV9jcnRjX3N0YXRlKG9sZF9jcnRjX3N0YXRlKTsK KwkJc3RydWN0IGRtX2NydGNfc3RhdGUgKmRtX25ld19jcnRjX3N0YXRlID0gdG9fZG1fY3J0Y19z dGF0ZShuZXdfY3J0Y19zdGF0ZSk7CiAJCXN0cnVjdCBhbWRncHVfY3J0YyAqYWNydGMgPSB0b19h bWRncHVfY3J0YyhjcnRjKTsKIAotCQlpZiAoZHJtX2F0b21pY19jcnRjX25lZWRzX21vZGVzZXQo bmV3X2NydGNfc3RhdGUpICYmIGRtX29sZF9jcnRjX3N0YXRlLT5zdHJlYW0pCisJCWlmIChkcm1f YXRvbWljX2NydGNfbmVlZHNfbW9kZXNldChuZXdfY3J0Y19zdGF0ZSkKKwkJICAgICYmIGRtX29s ZF9jcnRjX3N0YXRlLT5zdHJlYW0pIHsKKwkJCS8qCisJCQkgKiBDUkMgY2FwdHVyZSB3YXMgZW5h YmxlZCBidXQgbm90IGRpc2FibGVkLgorCQkJICogUmVsZWFzZSB0aGUgdmJsYW5rIHJlZmVyZW5j ZS4KKwkJCSAqLworCQkJaWYgKGRtX25ld19jcnRjX3N0YXRlLT5jcmNfZW5hYmxlZCkgeworCQkJ CWRybV9jcnRjX3ZibGFua19wdXQoY3J0Yyk7CisJCQkJZG1fbmV3X2NydGNfc3RhdGUtPmNyY19l bmFibGVkID0gZmFsc2U7CisJCQl9CisKIAkJCW1hbmFnZV9kbV9pbnRlcnJ1cHRzKGFkZXYsIGFj cnRjLCBmYWxzZSk7CisJCX0KIAl9CiAJLyoKIAkgKiBBZGQgY2hlY2sgaGVyZSBmb3IgU29DJ3Mg dGhhdCBzdXBwb3J0IGhhcmR3YXJlIGN1cnNvciBwbGFuZSwgdG8KZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtX2NyYy5jIGIvZHJpdmVy cy9ncHUvZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG1fY3JjLmMKaW5kZXggZjA4 OGFjNTg1OTc4Li4yNmI2NTExNDhjNjcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQv ZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtX2NyYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtX2NyYy5jCkBAIC02Niw2ICs2Niw3IEBAIGlu dCBhbWRncHVfZG1fY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGNv bnN0IGNoYXIgKnNyY19uYW1lKQogewogCXN0cnVjdCBkbV9jcnRjX3N0YXRlICpjcnRjX3N0YXRl ID0gdG9fZG1fY3J0Y19zdGF0ZShjcnRjLT5zdGF0ZSk7CiAJc3RydWN0IGRjX3N0cmVhbV9zdGF0 ZSAqc3RyZWFtX3N0YXRlID0gY3J0Y19zdGF0ZS0+c3RyZWFtOworCWJvb2wgZW5hYmxlOwogCiAJ ZW51bSBhbWRncHVfZG1fcGlwZV9jcmNfc291cmNlIHNvdXJjZSA9IGRtX3BhcnNlX2NyY19zb3Vy Y2Uoc3JjX25hbWUpOwogCkBAIC04MCwyOCArODEsMjcgQEAgaW50IGFtZGdwdV9kbV9jcnRjX3Nl dF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAqc3JjX25hbWUp CiAJCXJldHVybiAtRUlOVkFMOwogCX0KIAorCWVuYWJsZSA9IChzb3VyY2UgPT0gQU1ER1BVX0RN X1BJUEVfQ1JDX1NPVVJDRV9BVVRPKTsKKworCWlmICghZGNfc3RyZWFtX2NvbmZpZ3VyZV9jcmMo c3RyZWFtX3N0YXRlLT5jdHgtPmRjLCBzdHJlYW1fc3RhdGUsCisJCQkJICAgICBlbmFibGUsIGVu YWJsZSkpCisJCXJldHVybiAtRUlOVkFMOworCiAJLyogV2hlbiBlbmFibGluZyBDUkMsIHdlIHNo b3VsZCBhbHNvIGRpc2FibGUgZGl0aGVyaW5nLiAqLwotCWlmIChzb3VyY2UgPT0gQU1ER1BVX0RN X1BJUEVfQ1JDX1NPVVJDRV9BVVRPKSB7Ci0JCWlmIChkY19zdHJlYW1fY29uZmlndXJlX2NyYyhz dHJlYW1fc3RhdGUtPmN0eC0+ZGMsCi0JCQkJCSAgICBzdHJlYW1fc3RhdGUsCi0JCQkJCSAgICB0 cnVlLCB0cnVlKSkgewotCQkJY3J0Y19zdGF0ZS0+Y3JjX2VuYWJsZWQgPSB0cnVlOwotCQkJZGNf c3RyZWFtX3NldF9kaXRoZXJfb3B0aW9uKHN0cmVhbV9zdGF0ZSwKLQkJCQkJCSAgICBESVRIRVJf T1BUSU9OX1RSVU44KTsKLQkJfQotCQllbHNlCi0JCQlyZXR1cm4gLUVJTlZBTDsKLQl9IGVsc2Ug ewotCQlpZiAoZGNfc3RyZWFtX2NvbmZpZ3VyZV9jcmMoc3RyZWFtX3N0YXRlLT5jdHgtPmRjLAot CQkJCQkgICAgc3RyZWFtX3N0YXRlLAotCQkJCQkgICAgZmFsc2UsIGZhbHNlKSkgewotCQkJY3J0 Y19zdGF0ZS0+Y3JjX2VuYWJsZWQgPSBmYWxzZTsKLQkJCWRjX3N0cmVhbV9zZXRfZGl0aGVyX29w dGlvbihzdHJlYW1fc3RhdGUsCi0JCQkJCQkgICAgRElUSEVSX09QVElPTl9ERUZBVUxUKTsKLQkJ fQotCQllbHNlCi0JCQlyZXR1cm4gLUVJTlZBTDsKLQl9CisJZGNfc3RyZWFtX3NldF9kaXRoZXJf b3B0aW9uKHN0cmVhbV9zdGF0ZSwKKwkJCQkgICAgZW5hYmxlID8gRElUSEVSX09QVElPTl9UUlVO OAorCQkJCQkgICA6IERJVEhFUl9PUFRJT05fREVGQVVMVCk7CisKKwkvKgorCSAqIFJlYWRpbmcg dGhlIENSQyByZXF1aXJlcyB0aGUgdmJsYW5rIGludGVycnVwdCBoYW5kbGVyIHRvIGJlCisJICog ZW5hYmxlZC4gS2VlcCBhIHJlZmVyZW5jZSB1bnRpbCBDUkMgY2FwdHVyZSBzdG9wcy4KKwkgKi8K KwlpZiAoIWNydGNfc3RhdGUtPmNyY19lbmFibGVkICYmIGVuYWJsZSkKKwkJZHJtX2NydGNfdmJs YW5rX2dldChjcnRjKTsKKwllbHNlIGlmIChjcnRjX3N0YXRlLT5jcmNfZW5hYmxlZCAmJiAhZW5h YmxlKQorCQlkcm1fY3J0Y192YmxhbmtfcHV0KGNydGMpOworCisJY3J0Y19zdGF0ZS0+Y3JjX2Vu YWJsZWQgPSBlbmFibGU7CiAKIAkvKiBSZXNldCBjcmNfc2tpcHBlZCBvbiBkbSBzdGF0ZSAqLwog CWNydGNfc3RhdGUtPmNyY19za2lwX2NvdW50ID0gMDsKLS0gCjIuMTkuMQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlz dApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0 b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs