From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Yao Subject: [PATCH v3 5/8] drm/rockchip: support atomic asynchronous commit Date: Thu, 17 Dec 2015 11:06:14 +0800 Message-ID: <1450321574-31346-1-git-send-email-mark.yao@rock-chips.com> References: <1450321275-31154-1-git-send-email-mark.yao@rock-chips.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1450321275-31154-1-git-send-email-mark.yao@rock-chips.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: David Airlie , Heiko Stuebner , dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org List-Id: linux-rockchip.vger.kernel.org SWYgZHJtIGNvcmUgcmVxdWVzdHMgYSBhc3luYyBjb21taXQsIHJvY2tjaGlwX2RybV9hdG9taWNf Y29tbWl0CndpbGwgc2NoZWR1bGUgYSB3b3JrIHRhc2sgdG8gdXBkYXRlIGxhdGVyLgoKU2lnbmVk LW9mZi1ieTogTWFyayBZYW8gPG1hcmsueWFvQHJvY2stY2hpcHMuY29tPgotLS0KQ2hhbmdlcyBp biB2MzogTm9uZQpDaGFuZ2VzIGluIHYyOgotIHNlcmlhbGl6ZSBvdXRzdGFuZGluZyBhc3luY2hy b25vdXMgY29tbWl0cwogZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYu YyB8ICAgIDMgKysKIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fZHJ2Lmgg fCAgIDEwICsrKysrCiBkcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2ZiLmMg IHwgICA1NCArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgNTQg aW5zZXJ0aW9ucygrKSwgMTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hp cC9yb2NrY2hpcF9kcm1fZHJ2LmMKaW5kZXggYWIzZTBmNi4uNWVkZDVjY2IgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fZHJ2LmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuYwpAQCAtMTQwLDYgKzE0MCw5IEBA IHN0YXRpYyBpbnQgcm9ja2NoaXBfZHJtX2xvYWQoc3RydWN0IGRybV9kZXZpY2UgKmRybV9kZXYs IHVuc2lnbmVkIGxvbmcgZmxhZ3MpCiAJaWYgKCFwcml2YXRlKQogCQlyZXR1cm4gLUVOT01FTTsK IAorCW11dGV4X2luaXQoJnByaXZhdGUtPmNvbW1pdC5sb2NrKTsKKwlJTklUX1dPUksoJnByaXZh dGUtPmNvbW1pdC53b3JrLCByb2NrY2hpcF9kcm1fYXRvbWljX3dvcmspOworCiAJZHJtX2Rldi0+ ZGV2X3ByaXZhdGUgPSBwcml2YXRlOwogCiAJZHJtX21vZGVfY29uZmlnX2luaXQoZHJtX2Rldik7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX2Rydi5o IGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuaAppbmRleCA0NDY4 Zjk4Li5iYjhiMDc2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2No aXBfZHJtX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1f ZHJ2LmgKQEAgLTQyLDYgKzQyLDEzIEBAIHN0cnVjdCByb2NrY2hpcF9jcnRjX2Z1bmNzIHsKIAl2 b2lkICgqd2FpdF9mb3JfdXBkYXRlKShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpOwogfTsKIAorc3Ry dWN0IHJvY2tjaGlwX2F0b21pY19jb21taXQgeworCXN0cnVjdCB3b3JrX3N0cnVjdAl3b3JrOwor CXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 OworCXN0cnVjdCBtdXRleCBsb2NrOworfTsKKwogLyoKICAqIFJvY2tjaGlwIGRybSBwcml2YXRl IHN0cnVjdHVyZS4KICAqCkBAIC01Miw4ICs1OSwxMSBAQCBzdHJ1Y3Qgcm9ja2NoaXBfZHJtX3By aXZhdGUgewogCXN0cnVjdCBkcm1fZmJfaGVscGVyIGZiZGV2X2hlbHBlcjsKIAlzdHJ1Y3QgZHJt X2dlbV9vYmplY3QgKmZiZGV2X2JvOwogCWNvbnN0IHN0cnVjdCByb2NrY2hpcF9jcnRjX2Z1bmNz ICpjcnRjX2Z1bmNzW1JPQ0tDSElQX01BWF9DUlRDXTsKKworCXN0cnVjdCByb2NrY2hpcF9hdG9t aWNfY29tbWl0IGNvbW1pdDsKIH07CiAKK3ZvaWQgcm9ja2NoaXBfZHJtX2F0b21pY193b3JrKHN0 cnVjdCB3b3JrX3N0cnVjdCAqd29yayk7CiBpbnQgcm9ja2NoaXBfcmVnaXN0ZXJfY3J0Y19mdW5j cyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJCQkJIGNvbnN0IHN0cnVjdCByb2NrY2hpcF9jcnRj X2Z1bmNzICpjcnRjX2Z1bmNzKTsKIHZvaWQgcm9ja2NoaXBfdW5yZWdpc3Rlcl9jcnRjX2Z1bmNz KHN0cnVjdCBkcm1fY3J0YyAqY3J0Yyk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9j a2NoaXAvcm9ja2NoaXBfZHJtX2ZiLmMgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2No aXBfZHJtX2ZiLmMKaW5kZXggN2M5NzRhNC4uMGJjMWQ1ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV9mYi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9y b2NrY2hpcC9yb2NrY2hpcF9kcm1fZmIuYwpAQCAtMjEwLDIwICsyMTAsMTEgQEAgcm9ja2NoaXBf YXRvbWljX3dhaXRfZm9yX2NvbXBsZXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpvbGRfc3Rh dGUpCiAJfQogfQogCi1pbnQgcm9ja2NoaXBfZHJtX2F0b21pY19jb21taXQoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwKLQkJCSAgICAgICBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCi0J CQkgICAgICAgYm9vbCBhc3luYykKK3N0YXRpYyB2b2lkCityb2NrY2hpcF9hdG9taWNfY29tbWl0 X2NvbXBsZXRlKHN0cnVjdCByb2NrY2hpcF9hdG9taWNfY29tbWl0ICpjb21taXQpCiB7Ci0JaW50 IHJldDsKLQotCWlmIChhc3luYykKLQkJcmV0dXJuIC1FQlVTWTsKLQotCXJldCA9IGRybV9hdG9t aWNfaGVscGVyX3ByZXBhcmVfcGxhbmVzKGRldiwgc3RhdGUpOwotCWlmIChyZXQpCi0JCXJldHVy biByZXQ7Ci0KLQlkcm1fYXRvbWljX2hlbHBlcl9zd2FwX3N0YXRlKGRldiwgc3RhdGUpOworCXN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSA9IGNvbW1pdC0+c3RhdGU7CisJc3RydWN0IGRy bV9kZXZpY2UgKmRldiA9IGNvbW1pdC0+ZGV2OwogCiAJLyoKIAkgKiBUT0RPOiBkbyBmZW5jZSB3 YWl0IGhlcmUuCkBAIC0yNTUsNiArMjQ2LDQzIEBAIGludCByb2NrY2hpcF9kcm1fYXRvbWljX2Nv bW1pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCWRybV9hdG9taWNfaGVscGVyX2NsZWFudXBf cGxhbmVzKGRldiwgc3RhdGUpOwogCiAJZHJtX2F0b21pY19zdGF0ZV9mcmVlKHN0YXRlKTsKK30K Kwordm9pZCByb2NrY2hpcF9kcm1fYXRvbWljX3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3b3Jr KQoreworCXN0cnVjdCByb2NrY2hpcF9hdG9taWNfY29tbWl0ICpjb21taXQgPSBjb250YWluZXJf b2Yod29yaywKKwkJCQkJc3RydWN0IHJvY2tjaGlwX2F0b21pY19jb21taXQsIHdvcmspOworCisJ cm9ja2NoaXBfYXRvbWljX2NvbW1pdF9jb21wbGV0ZShjb21taXQpOworfQorCitpbnQgcm9ja2No aXBfZHJtX2F0b21pY19jb21taXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKKwkJCSAgICAgICBz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJCQkgICAgICAgYm9vbCBhc3luYykKK3sK KwlzdHJ1Y3Qgcm9ja2NoaXBfZHJtX3ByaXZhdGUgKnByaXZhdGUgPSBkZXYtPmRldl9wcml2YXRl OworCXN0cnVjdCByb2NrY2hpcF9hdG9taWNfY29tbWl0ICpjb21taXQgPSAmcHJpdmF0ZS0+Y29t bWl0OworCWludCByZXQ7CisKKwlyZXQgPSBkcm1fYXRvbWljX2hlbHBlcl9wcmVwYXJlX3BsYW5l cyhkZXYsIHN0YXRlKTsKKwlpZiAocmV0KQorCQlyZXR1cm4gcmV0OworCisJLyogc2VyaWFsaXpl IG91dHN0YW5kaW5nIGFzeW5jaHJvbm91cyBjb21taXRzICovCisJbXV0ZXhfbG9jaygmY29tbWl0 LT5sb2NrKTsKKwlmbHVzaF93b3JrKCZjb21taXQtPndvcmspOworCisJZHJtX2F0b21pY19oZWxw ZXJfc3dhcF9zdGF0ZShkZXYsIHN0YXRlKTsKKworCWNvbW1pdC0+ZGV2ID0gZGV2OworCWNvbW1p dC0+c3RhdGUgPSBzdGF0ZTsKKworCWlmIChhc3luYykKKwkJc2NoZWR1bGVfd29yaygmY29tbWl0 LT53b3JrKTsKKwllbHNlCisJCXJvY2tjaGlwX2F0b21pY19jb21taXRfY29tcGxldGUoY29tbWl0 KTsKKworCW11dGV4X3VubG9jaygmY29tbWl0LT5sb2NrKTsKIAogCXJldHVybiAwOwogfQotLSAK MS43LjkuNQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==