From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nicholas Kazlauskas Subject: [PATCH 4/4] drm/amd/display: Lock the CRTC when setting CRC source Date: Tue, 20 Aug 2019 13:59:32 -0400 Message-ID: <20190820175932.7884-4-nicholas.kazlauskas@amd.com> References: <20190820175932.7884-1-nicholas.kazlauskas@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190820175932.7884-1-nicholas.kazlauskas-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 , David Francis , Bhawanpreet Lakha , Nicholas Kazlauskas W1doeV0KV2UgbmVlZCB0byBlbnN1cmUgdGhhdCB3ZSdyZSBob2xkaW5nIHRoZSBsb2NrIG9uIHRo ZSBDUlRDIHdoZW4gc2V0dGluZwp0aGUgQ1JDIHNvdXJjZSBzaW5jZSB3ZSdyZSBtb2RpZnlpbmcg dGhlIENSVEMgc3RhdGUgZGlyZWN0bHkuCgpXZSBhbHNvIG5lZWQgdG8gd2FpdCBmb3IgYW55IG91 dHN0YW5kaW5nIG5vbi1ibG9ja2luZyBjb21taXRzIHRvIGZpbmlzaApzbyB0aGV5IGFyZW4ndCBy ZWFkaW5nIHN0YXRlIHRoYXQncyBwb3RlbnRpYWxseSBiZWluZyBtb2RpZmllZCAtCm5vbi1ibG9j a2luZyBjb21taXRzIGRvbid0IGhvbGQgdGhlIENSVEMgbG9jayB3aGlsZSBkb2luZyBjb21taXQg dGFpbAp3b3JrLgoKW0hvd10KTG9jayB0aGUgQ1JUQyB1c2luZyBpdHMgbXV0ZXguIFdoaWxlIGhv bGRpbmcgdGhlIGxvY2sgY2hlY2sgaWYgdGhlcmUncwphbnkgY29tbWl0IGFjdGl2ZSBvbiB0aGUg Q1JUQyAtIGlmIHRoZXJlIGlzLCBpdCdzIG5vbi1ibG9ja2luZyBhbmQKd2Ugc2hvdWxkIHdhaXQg dW50aWwgaXQncyBmaW5pc2hlZCBieSB3YWl0aW5nIGZvciBod19kb25lIHRvIGJlCnNpZ25hbGVk IHNpbmNlIHRoYXQncyB0aGUgbGFzdCBwb2ludCB3aGVyZSB3ZSB0b3VjaCBDUlRDIHN0YXRlLgoK Q2M6IERhdmlkIEZyYW5jaXMgPERhdmlkLkZyYW5jaXNAYW1kLmNvbT4KQ2M6IEJoYXdhbnByZWV0 IExha2hhIDxCaGF3YW5wcmVldC5MYWtoYUBhbWQuY29tPgpDYzogTGVvIExpIDxzdW5wZW5nLmxp QGFtZC5jb20+ClNpZ25lZC1vZmYtYnk6IE5pY2hvbGFzIEthemxhdXNrYXMgPG5pY2hvbGFzLmth emxhdXNrYXNAYW1kLmNvbT4KLS0tCiAuLi4vZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRn cHVfZG1fY3JjLmMgfCA2MyArKysrKysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNTEg aW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FtZC9kaXNwbGF5L2FtZGdwdV9kbS9hbWRncHVfZG1fY3JjLmMgYi9kcml2ZXJzL2dwdS9k cm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbV9jcmMuYwppbmRleCBlOWQ1YjFmYWQ2 MjUuLmZhODZiOWU3MDZhZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNwbGF5 L2FtZGdwdV9kbS9hbWRncHVfZG1fY3JjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9kaXNw bGF5L2FtZGdwdV9kbS9hbWRncHVfZG1fY3JjLmMKQEAgLTEzNSwxMyArMTM1LDEzIEBAIGludCBh bWRncHVfZG1fY3J0Y19jb25maWd1cmVfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMs CiAKIGludCBhbWRncHVfZG1fY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsIGNvbnN0IGNoYXIgKnNyY19uYW1lKQogewotCXN0cnVjdCBkbV9jcnRjX3N0YXRlICpjcnRj X3N0YXRlID0gdG9fZG1fY3J0Y19zdGF0ZShjcnRjLT5zdGF0ZSk7CisJZW51bSBhbWRncHVfZG1f cGlwZV9jcmNfc291cmNlIHNvdXJjZSA9IGRtX3BhcnNlX2NyY19zb3VyY2Uoc3JjX25hbWUpOwor CXN0cnVjdCBkcm1fY3J0Y19jb21taXQgKmNvbW1pdDsKKwlzdHJ1Y3QgZG1fY3J0Y19zdGF0ZSAq Y3J0Y19zdGF0ZTsKIAlzdHJ1Y3QgZHJtX2RwX2F1eCAqYXV4ID0gTlVMTDsKIAlib29sIGVuYWJs ZSA9IGZhbHNlOwogCWJvb2wgZW5hYmxlZCA9IGZhbHNlOwotCWludCByZXQ7Ci0KLQllbnVtIGFt ZGdwdV9kbV9waXBlX2NyY19zb3VyY2Ugc291cmNlID0gZG1fcGFyc2VfY3JjX3NvdXJjZShzcmNf bmFtZSk7CisJaW50IHJldCA9IDA7CiAKIAlpZiAoc291cmNlIDwgMCkgewogCQlEUk1fREVCVUdf RFJJVkVSKCJVbmtub3duIENSQyBzb3VyY2UgJXMgZm9yIENSVEMlZFxuIiwKQEAgLTE0OSw3ICsx NDksMzMgQEAgaW50IGFtZGdwdV9kbV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YywgY29uc3QgY2hhciAqc3JjX25hbWUpCiAJCXJldHVybiAtRUlOVkFMOwogCX0KIAor CXJldCA9IGRybV9tb2Rlc2V0X2xvY2soJmNydGMtPm11dGV4LCBOVUxMKTsKKwlpZiAocmV0KQor CQlyZXR1cm4gcmV0OworCisJc3Bpbl9sb2NrKCZjcnRjLT5jb21taXRfbG9jayk7CisJY29tbWl0 ID0gbGlzdF9maXJzdF9lbnRyeV9vcl9udWxsKCZjcnRjLT5jb21taXRfbGlzdCwKKwkJCQkJICBz dHJ1Y3QgZHJtX2NydGNfY29tbWl0LCBjb21taXRfZW50cnkpOworCWlmIChjb21taXQpCisJCWRy bV9jcnRjX2NvbW1pdF9nZXQoY29tbWl0KTsKKwlzcGluX3VubG9jaygmY3J0Yy0+Y29tbWl0X2xv Y2spOworCisJaWYgKGNvbW1pdCkgeworCQkvKgorCQkgKiBOZWVkIHRvIHdhaXQgZm9yIGFsbCBv dXRzdGFuZGluZyBwcm9ncmFtbWluZyB0byBjb21wbGV0ZQorCQkgKiBpbiBjb21taXQgdGFpbCBz aW5jZSBpdCBjYW4gbW9kaWZ5IENSQyByZWxhdGVkIGZpZWxkcyBhbmQKKwkJICogaGFyZHdhcmUg c3RhdGUuIFNpbmNlIHdlJ3JlIGhvbGRpbmcgdGhlIENSVEMgbG9jayB3ZSdyZQorCQkgKiBndWFy YW50ZWVkIHRoYXQgbm8gb3RoZXIgY29tbWl0IHdvcmsgY2FuIGJlIHF1ZXVlZCBvZmYKKwkJICog YmVmb3JlIHdlIG1vZGlmeSB0aGUgc3RhdGUgYmVsb3cuCisJCSAqLworCQlyZXQgPSB3YWl0X2Zv cl9jb21wbGV0aW9uX2ludGVycnVwdGlibGVfdGltZW91dCgKKwkJCSZjb21taXQtPmh3X2RvbmUs IDEwICogSFopOworCQlpZiAocmV0KQorCQkJZ290byBjbGVhbnVwOworCX0KKwogCWVuYWJsZSA9 IGFtZGdwdV9kbV9pc192YWxpZF9jcmNfc291cmNlKHNvdXJjZSk7CisgCWNydGNfc3RhdGUgPSB0 b19kbV9jcnRjX3N0YXRlKGNydGMtPnN0YXRlKTsKIAogCS8qCiAJICogVVNFUiBSRVEgU1JDIHwg Q1VSUkVOVCBTUkMgfCBCRUhBVklPUgpAQCAtMTgzLDE5ICsyMDksMjMgQEAgaW50IGFtZGdwdV9k bV9jcnRjX3NldF9jcmNfc291cmNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgY29uc3QgY2hhciAq c3JjX25hbWUpCiAKIAkJaWYgKCFhY29ubikgewogCQkJRFJNX0RFQlVHX0RSSVZFUigiTm8gYW1k IGNvbm5lY3RvciBtYXRjaGluZyBDUlRDLSVkXG4iLCBjcnRjLT5pbmRleCk7Ci0JCQlyZXR1cm4g LUVJTlZBTDsKKwkJCXJldCA9IC1FSU5WQUw7CisJCQlnb3RvIGNsZWFudXA7CiAJCX0KIAogCQlh dXggPSAmYWNvbm4tPmRtX2RwX2F1eC5hdXg7CiAKIAkJaWYgKCFhdXgpIHsKIAkJCURSTV9ERUJV R19EUklWRVIoIk5vIGRwIGF1eCBmb3IgYW1kIGNvbm5lY3RvclxuIik7Ci0JCQlyZXR1cm4gLUVJ TlZBTDsKKwkJCXJldCA9IC1FSU5WQUw7CisJCQlnb3RvIGNsZWFudXA7CiAJCX0KIAl9CiAKLQlp ZiAoYW1kZ3B1X2RtX2NydGNfY29uZmlndXJlX2NyY19zb3VyY2UoY3J0YywgY3J0Y19zdGF0ZSwg c291cmNlKSkKLQkJcmV0dXJuIC1FSU5WQUw7CisJaWYgKGFtZGdwdV9kbV9jcnRjX2NvbmZpZ3Vy ZV9jcmNfc291cmNlKGNydGMsIGNydGNfc3RhdGUsIHNvdXJjZSkpIHsKKwkJcmV0ID0gLUVJTlZB TDsKKwkJZ290byBjbGVhbnVwOworCX0KIAogCS8qCiAJICogUmVhZGluZyB0aGUgQ1JDIHJlcXVp cmVzIHRoZSB2YmxhbmsgaW50ZXJydXB0IGhhbmRsZXIgdG8gYmUKQEAgLTIwNSwxMiArMjM1LDEz IEBAIGludCBhbWRncHVfZG1fY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsIGNvbnN0IGNoYXIgKnNyY19uYW1lKQogCWlmICghZW5hYmxlZCAmJiBlbmFibGUpIHsKIAkJ cmV0ID0gZHJtX2NydGNfdmJsYW5rX2dldChjcnRjKTsKIAkJaWYgKHJldCkKLQkJCXJldHVybiBy ZXQ7CisJCQlnb3RvIGNsZWFudXA7CiAKIAkJaWYgKGRtX2lzX2NyY19zb3VyY2VfZHByeChzb3Vy Y2UpKSB7CiAJCQlpZiAoZHJtX2RwX3N0YXJ0X2NyYyhhdXgsIGNydGMpKSB7CiAJCQkJRFJNX0RF QlVHX0RSSVZFUigiZHAgc3RhcnQgY3JjIGZhaWxlZFxuIik7Ci0JCQkJcmV0dXJuIC1FSU5WQUw7 CisJCQkJcmV0ID0gLUVJTlZBTDsKKwkJCQlnb3RvIGNsZWFudXA7CiAJCQl9CiAJCX0KIAl9IGVs c2UgaWYgKGVuYWJsZWQgJiYgIWVuYWJsZSkgewpAQCAtMjE4LDcgKzI0OSw4IEBAIGludCBhbWRn cHVfZG1fY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIGNvbnN0IGNo YXIgKnNyY19uYW1lKQogCQlpZiAoZG1faXNfY3JjX3NvdXJjZV9kcHJ4KHNvdXJjZSkpIHsKIAkJ CWlmIChkcm1fZHBfc3RvcF9jcmMoYXV4KSkgewogCQkJCURSTV9ERUJVR19EUklWRVIoImRwIHN0 b3AgY3JjIGZhaWxlZFxuIik7Ci0JCQkJcmV0dXJuIC1FSU5WQUw7CisJCQkJcmV0ID0gLUVJTlZB TDsKKwkJCQlnb3RvIGNsZWFudXA7CiAJCQl9CiAJCX0KIAl9CkBAIC0yMjcsNyArMjU5LDE0IEBA IGludCBhbWRncHVfZG1fY3J0Y19zZXRfY3JjX3NvdXJjZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMs IGNvbnN0IGNoYXIgKnNyY19uYW1lKQogCiAJLyogUmVzZXQgY3JjX3NraXBwZWQgb24gZG0gc3Rh dGUgKi8KIAljcnRjX3N0YXRlLT5jcmNfc2tpcF9jb3VudCA9IDA7Ci0JcmV0dXJuIDA7CisKK2Ns ZWFudXA6CisJaWYgKGNvbW1pdCkKKwkJZHJtX2NydGNfY29tbWl0X3B1dChjb21taXQpOworCisJ ZHJtX21vZGVzZXRfdW5sb2NrKCZjcnRjLT5tdXRleCk7CisKKwlyZXR1cm4gcmV0OwogfQogCiAv KioKLS0gCjIuMTcuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KYW1kLWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4