From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hai Li Subject: [PATCH v2 2/2] drm/msm/mdp5: Wait for PP_DONE irq for command mode CRTC atomic commit Date: Tue, 28 Apr 2015 19:35:38 -0400 Message-ID: <1430264138-31349-3-git-send-email-hali@codeaurora.org> References: <1430264138-31349-1-git-send-email-hali@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1430264138-31349-1-git-send-email-hali@codeaurora.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org Q1JUQ3MgaW4gRFNJIGNvbW1hbmQgbW9kZSBkYXRhIHBhdGggc2hvdWxkIHdhaXQgZm9yIHBpbmdw b25nIGRvbmUsCmluc3RlYWQgb2YgdmJsYW5rLCB0byBmaW5pc2ggYXRvbWljIGNvbW1pdC4KClRo aXMgY2hhbmdlIGlzIHRvIGVuYWJsZSBQUF9ET05FIGlycSBvbiBjb21tYW5kIG1vZGUgQ1JUQ3Mg YW5kIHdhaXQgZm9yCnRoaXMgaXJxIGhhcHBlbnMgYmVmb3JlIGF0b21pYyBjb21taXQgY29tcGxl dGlvbi4KClNpZ25lZC1vZmYtYnk6IEhhaSBMaSA8aGFsaUBjb2RlYXVyb3JhLm9yZz4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfY21kX2VuY29kZXIuYyB8ICA0IC0tCiBk cml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfY3J0Yy5jICAgICAgICB8IDgyICsrKysr KysrKysrKysrKysrKysrLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwg MjAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRw NS9tZHA1X2NtZF9lbmNvZGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVf Y21kX2VuY29kZXIuYwppbmRleCBlNGU4OTU2Li41Zjg3MzU3IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfY21kX2VuY29kZXIuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL21kcC9tZHA1L21kcDVfY21kX2VuY29kZXIuYwpAQCAtMjE2LDE2ICsyMTYsMTIg QEAgc3RhdGljIHZvaWQgbWRwNV9jbWRfZW5jb2Rlcl9tb2RlX3NldChzdHJ1Y3QgZHJtX2VuY29k ZXIgKmVuY29kZXIsCiBzdGF0aWMgdm9pZCBtZHA1X2NtZF9lbmNvZGVyX2Rpc2FibGUoc3RydWN0 IGRybV9lbmNvZGVyICplbmNvZGVyKQogewogCXN0cnVjdCBtZHA1X2NtZF9lbmNvZGVyICptZHA1 X2NtZF9lbmMgPSB0b19tZHA1X2NtZF9lbmNvZGVyKGVuY29kZXIpOwotCXN0cnVjdCBtZHA1X2tt cyAqbWRwNV9rbXMgPSBnZXRfa21zKGVuY29kZXIpOwogCXN0cnVjdCBtZHA1X2N0bCAqY3RsID0g bWRwNV9jcnRjX2dldF9jdGwoZW5jb2Rlci0+Y3J0Yyk7CiAJc3RydWN0IG1kcDVfaW50ZXJmYWNl ICppbnRmID0gJm1kcDVfY21kX2VuYy0+aW50ZjsKLQlpbnQgbG0gPSBtZHA1X2NydGNfZ2V0X2xt KGVuY29kZXItPmNydGMpOwogCiAJaWYgKFdBUk5fT04oIW1kcDVfY21kX2VuYy0+ZW5hYmxlZCkp CiAJCXJldHVybjsKIAotCS8qIFdhaXQgZm9yIHRoZSBsYXN0IGZyYW1lIGRvbmUgKi8KLQltZHBf aXJxX3dhaXQoJm1kcDVfa21zLT5iYXNlLCBsbTJwcGRvbmUobG0pKTsKIAlwaW5ncG9uZ190ZWFy Y2hlY2tfZGlzYWJsZShlbmNvZGVyKTsKIAogCW1kcDVfY3RsX3NldF9lbmNvZGVyX3N0YXRlKGN0 bCwgZmFsc2UpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1 X2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9jcnRjLmMKaW5kZXgg YWEwYjBjNS4uOGQ5ZDY3YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRw NS9tZHA1X2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21kcDVfY3J0 Yy5jCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoYykgMjAxNCBUaGUgTGludXgg Rm91bmRhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoYykgMjAxNC0y MDE1IFRoZSBMaW51eCBGb3VuZGF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJp Z2h0IChDKSAyMDEzIFJlZCBIYXQKICAqIEF1dGhvcjogUm9iIENsYXJrIDxyb2JkY2xhcmtAZ21h aWwuY29tPgogICoKQEAgLTYwLDYgKzYwLDExIEBAIHN0cnVjdCBtZHA1X2NydGMgewogCiAJc3Ry dWN0IG1kcF9pcnEgdmJsYW5rOwogCXN0cnVjdCBtZHBfaXJxIGVycjsKKwlzdHJ1Y3QgbWRwX2ly cSBwcF9kb25lOworCisJc3RydWN0IGNvbXBsZXRpb24gcHBfY29tcGxldGlvbjsKKworCWJvb2wg Y21kX21vZGU7CiAKIAlzdHJ1Y3QgewogCQkvKiBwcm90ZWN0IFJFR19NRFA1X0xNX0NVUlNPUiog cmVnaXN0ZXJzIGFuZCBjdXJzb3Igc2Nhbm91dF9ibyovCkBAIC04Nyw2ICs5MiwxMiBAQCBzdGF0 aWMgdm9pZCByZXF1ZXN0X3BlbmRpbmcoc3RydWN0IGRybV9jcnRjICpjcnRjLCB1aW50MzJfdCBw ZW5kaW5nKQogCW1kcF9pcnFfcmVnaXN0ZXIoJmdldF9rbXMoY3J0YyktPmJhc2UsICZtZHA1X2Ny dGMtPnZibGFuayk7CiB9CiAKK3N0YXRpYyB2b2lkIHJlcXVlc3RfcHBfZG9uZV9wZW5kaW5nKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YykKK3sKKwlzdHJ1Y3QgbWRwNV9jcnRjICptZHA1X2NydGMgPSB0 b19tZHA1X2NydGMoY3J0Yyk7CisJcmVpbml0X2NvbXBsZXRpb24oJm1kcDVfY3J0Yy0+cHBfY29t cGxldGlvbik7Cit9CisKIHN0YXRpYyB1MzIgY3J0Y19mbHVzaChzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsIHUzMiBmbHVzaF9tYXNrKQogewogCXN0cnVjdCBtZHA1X2NydGMgKm1kcDVfY3J0YyA9IHRv X21kcDVfY3J0YyhjcnRjKTsKQEAgLTI4Miw2ICsyOTMsOSBAQCBzdGF0aWMgdm9pZCBtZHA1X2Ny dGNfZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJLyogc2V0IFNUQUdFX1VOVVNFRCBm b3IgYWxsIGxheWVycyAqLwogCW1kcDVfY3RsX2JsZW5kKG1kcDVfY3J0Yy0+Y3RsLCBtZHA1X2Ny dGMtPmxtLCAweDAwMDAwMDAwKTsKIAorCWlmIChtZHA1X2NydGMtPmNtZF9tb2RlKQorCQltZHBf aXJxX3VucmVnaXN0ZXIoJm1kcDVfa21zLT5iYXNlLCAmbWRwNV9jcnRjLT5wcF9kb25lKTsKKwog CW1kcF9pcnFfdW5yZWdpc3RlcigmbWRwNV9rbXMtPmJhc2UsICZtZHA1X2NydGMtPmVycik7CiAJ bWRwNV9kaXNhYmxlKG1kcDVfa21zKTsKIApAQCAtMzAxLDYgKzMxNSw5IEBAIHN0YXRpYyB2b2lk IG1kcDVfY3J0Y19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCW1kcDVfZW5hYmxlKG1k cDVfa21zKTsKIAltZHBfaXJxX3JlZ2lzdGVyKCZtZHA1X2ttcy0+YmFzZSwgJm1kcDVfY3J0Yy0+ ZXJyKTsKIAorCWlmIChtZHA1X2NydGMtPmNtZF9tb2RlKQorCQltZHBfaXJxX3JlZ2lzdGVyKCZt ZHA1X2ttcy0+YmFzZSwgJm1kcDVfY3J0Yy0+cHBfZG9uZSk7CisKIAltZHA1X2NydGMtPmVuYWJs ZWQgPSB0cnVlOwogfQogCkBAIC00MDIsNiArNDE5LDE1IEBAIHN0YXRpYyB2b2lkIG1kcDVfY3J0 Y19hdG9taWNfZmx1c2goc3RydWN0IGRybV9jcnRjICpjcnRjKQogCiAJYmxlbmRfc2V0dXAoY3J0 Yyk7CiAKKwkvKiBQUF9ET05FIGlycSBpcyBvbmx5IHVzZWQgYnkgY29tbWFuZCBtb2RlIGZvciBu b3cuCisJICogSXQgaXMgYmV0dGVyIHRvIHJlcXVlc3QgcGVuZGluZyBiZWZvcmUgRkxVU0ggYW5k IFNUQVJUIHRyaWdnZXIKKwkgKiB0byBtYWtlIHN1cmUgbm8gcHBfZG9uZSBpcnEgbWlzc2VkLgor CSAqIFRoaXMgaXMgc2FmZSBiZWNhdXNlIG5vIHBwX2RvbmUgd2lsbCBoYXBwZW4gYmVmb3JlIFNX IHRyaWdnZXIKKwkgKiBpbiBjb21tYW5kIG1vZGUuCisJICovCisJaWYgKG1kcDVfY3J0Yy0+Y21k X21vZGUpCisJCXJlcXVlc3RfcHBfZG9uZV9wZW5kaW5nKGNydGMpOworCiAJbWRwNV9jcnRjLT5m bHVzaGVkX21hc2sgPSBjcnRjX2ZsdXNoX2FsbChjcnRjKTsKIAogCXJlcXVlc3RfcGVuZGluZyhj cnRjLCBQRU5ESU5HX0ZMSVApOwpAQCAtNjEyLDYgKzYzOCwyNiBAQCBzdGF0aWMgdm9pZCBtZHA1 X2NydGNfZXJyX2lycShzdHJ1Y3QgbWRwX2lycSAqaXJxLCB1aW50MzJfdCBpcnFzdGF0dXMpCiAJ REJHKCIlczogZXJyb3I6ICUwOHgiLCBtZHA1X2NydGMtPm5hbWUsIGlycXN0YXR1cyk7CiB9CiAK K3N0YXRpYyB2b2lkIG1kcDVfY3J0Y19wcF9kb25lX2lycShzdHJ1Y3QgbWRwX2lycSAqaXJxLCB1 aW50MzJfdCBpcnFzdGF0dXMpCit7CisJc3RydWN0IG1kcDVfY3J0YyAqbWRwNV9jcnRjID0gY29u dGFpbmVyX29mKGlycSwgc3RydWN0IG1kcDVfY3J0YywKKwkJCQkJCQkJcHBfZG9uZSk7CisKKwlj b21wbGV0ZSgmbWRwNV9jcnRjLT5wcF9jb21wbGV0aW9uKTsKK30KKworc3RhdGljIHZvaWQgbWRw NV9jcnRjX3dhaXRfZm9yX3BwX2RvbmUoc3RydWN0IGRybV9jcnRjICpjcnRjKQoreworCXN0cnVj dCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7CisJc3RydWN0IG1kcDVfY3J0YyAqbWRwNV9j cnRjID0gdG9fbWRwNV9jcnRjKGNydGMpOworCWludCByZXQ7CisKKwlyZXQgPSB3YWl0X2Zvcl9j b21wbGV0aW9uX3RpbWVvdXQoJm1kcDVfY3J0Yy0+cHBfY29tcGxldGlvbiwKKwkJCQkJCW1zZWNz X3RvX2ppZmZpZXMoNTApKTsKKwlpZiAocmV0ID09IDApCisJCWRldl93YXJuKGRldi0+ZGV2LCAi cHAgZG9uZSB0aW1lIG91dCwgbG09JWRcbiIsIG1kcDVfY3J0Yy0+bG0pOworfQorCiBzdGF0aWMg dm9pZCBtZHA1X2NydGNfd2FpdF9mb3JfZmx1c2hfZG9uZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMp CiB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGNydGMtPmRldjsKQEAgLTY1OSwxNiArNzA1 LDE4IEBAIHZvaWQgbWRwNV9jcnRjX3NldF9pbnRmKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yywgc3Ry dWN0IG1kcDVfaW50ZXJmYWNlICppbnRmKQogCiAJLyogbm93IHRoYXQgd2Uga25vdyB3aGF0IGly cSdzIHdlIHdhbnQ6ICovCiAJbWRwNV9jcnRjLT5lcnIuaXJxbWFzayA9IGludGYyZXJyKGludGYt Pm51bSk7Ci0KLQkvKiBSZWdpc3RlciBjb21tYW5kIG1vZGUgUGluZ3BvbmcgZG9uZSBhcyB2Ymxh bmsgZm9yIG5vdywKLQkgKiBzbyB0aGF0IGF0b21pYyBjb21taXQgc2hvdWxkIHdhaXQgZm9yIGl0 IHRvIGZpbmlzaC4KLQkgKiBJZGVhbGx5LCBpbiB0aGUgZnV0dXJlLCB3ZSBzaG91bGQgdGFrZSBy ZF9wdHIgZG9uZSBhcyB2YmxhbmssCi0JICogYW5kIGxldCBhdG9taWMgY29tbWl0IHdhaXQgZm9y IHBpbmdwb25nIGRvbmUgZm9yIGNvbW1vbmQgbW9kZS4KLQkgKi8KLQlpZiAoaW50Zi0+bW9kZSA9 PSBNRFA1X0lOVEZfRFNJX01PREVfQ09NTUFORCkKLQkJbWRwNV9jcnRjLT52YmxhbmsuaXJxbWFz ayA9IGxtMnBwZG9uZShsbSk7Ci0JZWxzZQotCQltZHA1X2NydGMtPnZibGFuay5pcnFtYXNrID0g aW50ZjJ2YmxhbmsobG0sIGludGYpOworCW1kcDVfY3J0Yy0+dmJsYW5rLmlycW1hc2sgPSBpbnRm MnZibGFuayhsbSwgaW50Zik7CisKKwlpZiAoKGludGYtPnR5cGUgPT0gSU5URl9EU0kpICYmCisJ CShpbnRmLT5tb2RlID09IE1EUDVfSU5URl9EU0lfTU9ERV9DT01NQU5EKSkgeworCQltZHA1X2Ny dGMtPnBwX2RvbmUuaXJxbWFzayA9IGxtMnBwZG9uZShsbSk7CisJCW1kcDVfY3J0Yy0+cHBfZG9u ZS5pcnEgPSBtZHA1X2NydGNfcHBfZG9uZV9pcnE7CisJCW1kcDVfY3J0Yy0+Y21kX21vZGUgPSB0 cnVlOworCX0gZWxzZSB7CisJCW1kcDVfY3J0Yy0+cHBfZG9uZS5pcnFtYXNrID0gMDsKKwkJbWRw NV9jcnRjLT5wcF9kb25lLmlycSA9IE5VTEw7CisJCW1kcDVfY3J0Yy0+Y21kX21vZGUgPSBmYWxz ZTsKKwl9CiAKIAltZHBfaXJxX3VwZGF0ZSgmbWRwNV9rbXMtPmJhc2UpOwogCkBAIC02ODksMTEg KzczNywxMiBAQCBzdHJ1Y3QgbWRwNV9jdGwgKm1kcDVfY3J0Y19nZXRfY3RsKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YykKIAogdm9pZCBtZHA1X2NydGNfd2FpdF9mb3JfY29tbWl0X2RvbmUoc3RydWN0 IGRybV9jcnRjICpjcnRjKQogewotCS8qIHdhaXRfZm9yX2ZsdXNoX2RvbmUgaXMgdGhlIG9ubHkg Y2FzZSBmb3Igbm93LgotCSAqIExhdGVyIHdlIHdpbGwgaGF2ZSBjb21tYW5kIG1vZGUgQ1JUQyB0 byB3YWl0IGZvcgotCSAqIG90aGVyIGV2ZW50LgotCSAqLwotCW1kcDVfY3J0Y193YWl0X2Zvcl9m bHVzaF9kb25lKGNydGMpOworCXN0cnVjdCBtZHA1X2NydGMgKm1kcDVfY3J0YyA9IHRvX21kcDVf Y3J0YyhjcnRjKTsKKworCWlmIChtZHA1X2NydGMtPmNtZF9tb2RlKQorCQltZHA1X2NydGNfd2Fp dF9mb3JfcHBfZG9uZShjcnRjKTsKKwllbHNlCisJCW1kcDVfY3J0Y193YWl0X2Zvcl9mbHVzaF9k b25lKGNydGMpOwogfQogCiAvKiBpbml0aWFsaXplIGNydGMgKi8KQEAgLTcxNCw2ICs3NjMsNyBA QCBzdHJ1Y3QgZHJtX2NydGMgKm1kcDVfY3J0Y19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs CiAKIAlzcGluX2xvY2tfaW5pdCgmbWRwNV9jcnRjLT5sbV9sb2NrKTsKIAlzcGluX2xvY2tfaW5p dCgmbWRwNV9jcnRjLT5jdXJzb3IubG9jayk7CisJaW5pdF9jb21wbGV0aW9uKCZtZHA1X2NydGMt PnBwX2NvbXBsZXRpb24pOwogCiAJbWRwNV9jcnRjLT52YmxhbmsuaXJxID0gbWRwNV9jcnRjX3Zi bGFua19pcnE7CiAJbWRwNV9jcnRjLT5lcnIuaXJxID0gbWRwNV9jcnRjX2Vycl9pcnE7Ci0tIApU aGUgUXVhbGNvbW0gSW5ub3ZhdGlvbiBDZW50ZXIsIEluYy4gaXMgYSBtZW1iZXIgb2YgdGhlIENv ZGUgQXVyb3JhIEZvcnVtLApob3N0ZWQgYnkgVGhlIExpbnV4IEZvdW5kYXRpb24KCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5n IGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==