From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH v2 09/13] drm/i915: Introduce intel_plane_alloc() Date: Wed, 30 May 2018 19:59:29 +0300 Message-ID: <20180530165933.11424-10-ville.syrjala@linux.intel.com> References: <20180530165933.11424-1-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1A0AF6EC2A for ; Wed, 30 May 2018 17:00:02 +0000 (UTC) In-Reply-To: <20180530165933.11424-1-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClB1 bGwgdGhlIGNvbW1vbiBwbGFuZStwbGFuZV9zdGF0ZSBhbGxvY2F0aW9uIGludG8gYSBzbWFsbCBo ZWxwZXIuClJlZHVjZXMgdGhlIGFtb3VudCBvZiBib2lsZXJwbGF0ZSBpbiB0aGUgcGxhbmUgaW5p dGlhbGl6YXRpb24KZnVuY3Rpb25zLgoKU2lnbmVkLW9mZi1ieTogVmlsbGUgU3lyasOkbMOkIDx2 aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kaXNwbGF5LmMgfCA0NCArKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgMyArKysKIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX3Nwcml0ZS5jICB8IDUwICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA0NyBpbnNlcnRpb25zKCspLCA1MCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggMmQ2MTQ3ZTcxYWNhLi5h NTgxMTE4ZjVjN2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3Bs YXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTEzNDQx LDggKzEzNDQxLDcgQEAgYm9vbCBza2xfcGxhbmVfaGFzX3BsYW5hcihzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYsCiBzdGF0aWMgc3RydWN0IGludGVsX3BsYW5lICoKIGludGVsX3By aW1hcnlfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51 bSBwaXBlIHBpcGUpCiB7Ci0Jc3RydWN0IGludGVsX3BsYW5lICpwcmltYXJ5ID0gTlVMTDsKLQlz dHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnN0YXRlID0gTlVMTDsKKwlzdHJ1Y3QgaW50ZWxfcGxh bmUgKnByaW1hcnk7CiAJY29uc3QgdWludDMyX3QgKmludGVsX3ByaW1hcnlfZm9ybWF0czsKIAl1 bnNpZ25lZCBpbnQgc3VwcG9ydGVkX3JvdGF0aW9uczsKIAl1bnNpZ25lZCBpbnQgcG9zc2libGVf Y3J0Y3M7CkBAIC0xMzQ1MCwxOSArMTM0NDksOSBAQCBpbnRlbF9wcmltYXJ5X3BsYW5lX2NyZWF0 ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcGlwZSBwaXBlKQogCWNv bnN0IHVpbnQ2NF90ICptb2RpZmllcnM7CiAJaW50IHJldDsKIAotCXByaW1hcnkgPSBremFsbG9j KHNpemVvZigqcHJpbWFyeSksIEdGUF9LRVJORUwpOwotCWlmICghcHJpbWFyeSkgewotCQlyZXQg PSAtRU5PTUVNOwotCQlnb3RvIGZhaWw7Ci0JfQotCi0Jc3RhdGUgPSBpbnRlbF9jcmVhdGVfcGxh bmVfc3RhdGUoJnByaW1hcnktPmJhc2UpOwotCWlmICghc3RhdGUpIHsKLQkJcmV0ID0gLUVOT01F TTsKLQkJZ290byBmYWlsOwotCX0KLQotCXByaW1hcnktPmJhc2Uuc3RhdGUgPSAmc3RhdGUtPmJh c2U7CisJcHJpbWFyeSA9IGludGVsX3BsYW5lX2FsbG9jKCk7CisJaWYgKElTX0VSUihwcmltYXJ5 KSkKKwkJcmV0dXJuIHByaW1hcnk7CiAKIAlwcmltYXJ5LT5jYW5fc2NhbGUgPSBmYWxzZTsKIAlw cmltYXJ5LT5tYXhfZG93bnNjYWxlID0gMTsKQEAgLTEzNTk3LDggKzEzNTg2LDcgQEAgaW50ZWxf cHJpbWFyeV9wbGFuZV9jcmVhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBl bnVtIHBpcGUgcGlwZSkKIAlyZXR1cm4gcHJpbWFyeTsKIAogZmFpbDoKLQlrZnJlZShzdGF0ZSk7 Ci0Ja2ZyZWUocHJpbWFyeSk7CisJaW50ZWxfcGxhbmVfZnJlZShwcmltYXJ5KTsKIAogCXJldHVy biBFUlJfUFRSKHJldCk7CiB9CkBAIC0xMzYwNywyNCArMTM1OTUsMTMgQEAgc3RhdGljIHN0cnVj dCBpbnRlbF9wbGFuZSAqCiBpbnRlbF9jdXJzb3JfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCSAgZW51bSBwaXBlIHBpcGUpCiB7Ci0Jc3RydWN0IGlu dGVsX3BsYW5lICpjdXJzb3IgPSBOVUxMOwotCXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqc3Rh dGUgPSBOVUxMOwogCXVuc2lnbmVkIGludCBwb3NzaWJsZV9jcnRjczsKKwlzdHJ1Y3QgaW50ZWxf cGxhbmUgKmN1cnNvcjsKIAlpbnQgcmV0OwogCi0JY3Vyc29yID0ga3phbGxvYyhzaXplb2YoKmN1 cnNvciksIEdGUF9LRVJORUwpOwotCWlmICghY3Vyc29yKSB7Ci0JCXJldCA9IC1FTk9NRU07Ci0J CWdvdG8gZmFpbDsKLQl9Ci0KLQlzdGF0ZSA9IGludGVsX2NyZWF0ZV9wbGFuZV9zdGF0ZSgmY3Vy c29yLT5iYXNlKTsKLQlpZiAoIXN0YXRlKSB7Ci0JCXJldCA9IC1FTk9NRU07Ci0JCWdvdG8gZmFp bDsKLQl9Ci0KLQljdXJzb3ItPmJhc2Uuc3RhdGUgPSAmc3RhdGUtPmJhc2U7CisJY3Vyc29yID0g aW50ZWxfcGxhbmVfYWxsb2MoKTsKKwlpZiAoSVNfRVJSKGN1cnNvcikpCisJCXJldHVybiBjdXJz b3I7CiAKIAljdXJzb3ItPmNhbl9zY2FsZSA9IGZhbHNlOwogCWN1cnNvci0+bWF4X2Rvd25zY2Fs ZSA9IDE7CkBAIC0xMzY3NCw4ICsxMzY1MSw3IEBAIGludGVsX2N1cnNvcl9wbGFuZV9jcmVhdGUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCXJldHVybiBjdXJzb3I7CiAKIGZh aWw6Ci0Ja2ZyZWUoc3RhdGUpOwotCWtmcmVlKGN1cnNvcik7CisJaW50ZWxfcGxhbmVfZnJlZShj dXJzb3IpOwogCiAJcmV0dXJuIEVSUl9QVFIocmV0KTsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2 LmgKaW5kZXggZTM5ODI3YjVkYTVmLi5iOTAzNTQzMmYyODUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rydi5oCkBAIC0yMDg5LDYgKzIwODksOSBAQCBib29sIHNrbF9wbGFuZV9oYXNfY2NzKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIGJvb2wgaW50ZWxfZm9ybWF0X2lzX3l1dih1 aW50MzJfdCBmb3JtYXQpOwogYm9vbCBza2xfcGxhbmVfaGFzX3BsYW5hcihzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkgIGVudW0gcGlwZSBwaXBlLCBlbnVtIHBsYW5lX2lk IHBsYW5lX2lkKTsKK3N0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmVfYWxsb2Modm9pZCk7 Cit2b2lkIGludGVsX3BsYW5lX2ZyZWUoc3RydWN0IGludGVsX3BsYW5lICpwbGFuZSk7CisKIAog LyogaW50ZWxfdHYuYyAqLwogdm9pZCBpbnRlbF90dl9pbml0KHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9z cHJpdGUuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCmluZGV4IGE4N2Vj MThiODgyOC4uMzZiODY0MTZmMTFlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9zcHJpdGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwpA QCAtMTM2OSwxMiArMTM2OSw0MCBAQCBib29sIHNrbF9wbGFuZV9oYXNfY2NzKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJIHBsYW5lX2lkID09IFBMQU5FX1NQUklURTApOwog fQogCitzdHJ1Y3QgaW50ZWxfcGxhbmUgKmludGVsX3BsYW5lX2FsbG9jKHZvaWQpCit7CisJc3Ry dWN0IGludGVsX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKKwlzdHJ1Y3QgaW50ZWxfcGxhbmUg KnBsYW5lOworCisJcGxhbmUgPSBremFsbG9jKHNpemVvZigqcGxhbmUpLCBHRlBfS0VSTkVMKTsK KwlpZiAoIXBsYW5lKQorCQlyZXR1cm4gRVJSX1BUUigtRU5PTUVNKTsKKworCXBsYW5lX3N0YXRl ID0gaW50ZWxfY3JlYXRlX3BsYW5lX3N0YXRlKCZwbGFuZS0+YmFzZSk7CisJaWYgKCFwbGFuZV9z dGF0ZSkgeworCQlrZnJlZShwbGFuZSk7CisJCXJldHVybiBFUlJfUFRSKC1FTk9NRU0pOworCX0K KworCXBsYW5lLT5iYXNlLnN0YXRlID0gJnBsYW5lX3N0YXRlLT5iYXNlOworCisJcmV0dXJuIHBs YW5lOworfQorCit2b2lkIGludGVsX3BsYW5lX2ZyZWUoc3RydWN0IGludGVsX3BsYW5lICpwbGFu ZSkKK3sKKwlzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlID0KKwkJdG9faW50 ZWxfcGxhbmVfc3RhdGUocGxhbmUtPmJhc2Uuc3RhdGUpOworCisJa2ZyZWUocGxhbmVfc3RhdGUp OworCWtmcmVlKHBsYW5lKTsKK30KKwogc3RydWN0IGludGVsX3BsYW5lICoKIGludGVsX3Nwcml0 ZV9wbGFuZV9jcmVhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJICBl bnVtIHBpcGUgcGlwZSwgaW50IHBsYW5lKQogewotCXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxf cGxhbmUgPSBOVUxMOwotCXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqc3RhdGUgPSBOVUxMOwor CXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmU7CiAJdW5zaWduZWQgbG9uZyBwb3NzaWJs ZV9jcnRjczsKIAljb25zdCB1aW50MzJfdCAqcGxhbmVfZm9ybWF0czsKIAljb25zdCB1aW50NjRf dCAqbW9kaWZpZXJzOwpAQCAtMTM4MiwxOCArMTQxMCw5IEBAIGludGVsX3Nwcml0ZV9wbGFuZV9j cmVhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCWludCBudW1fcGxhbmVf Zm9ybWF0czsKIAlpbnQgcmV0OwogCi0JaW50ZWxfcGxhbmUgPSBremFsbG9jKHNpemVvZigqaW50 ZWxfcGxhbmUpLCBHRlBfS0VSTkVMKTsKLQlpZiAoIWludGVsX3BsYW5lKSB7Ci0JCXJldCA9IC1F Tk9NRU07Ci0JCWdvdG8gZmFpbDsKLQl9Ci0KLQlzdGF0ZSA9IGludGVsX2NyZWF0ZV9wbGFuZV9z dGF0ZSgmaW50ZWxfcGxhbmUtPmJhc2UpOwotCWlmICghc3RhdGUpIHsKLQkJcmV0ID0gLUVOT01F TTsKLQkJZ290byBmYWlsOwotCX0KLQlpbnRlbF9wbGFuZS0+YmFzZS5zdGF0ZSA9ICZzdGF0ZS0+ YmFzZTsKKwlpbnRlbF9wbGFuZSA9IGludGVsX3BsYW5lX2FsbG9jKCk7CisJaWYgKElTX0VSUihp bnRlbF9wbGFuZSkpCisJCXJldHVybiBpbnRlbF9wbGFuZTsKIAogCWlmIChJTlRFTF9HRU4oZGV2 X3ByaXYpID49IDkpIHsKIAkJaW50ZWxfcGxhbmUtPmNhbl9zY2FsZSA9IHRydWU7CkBAIC0xNTE5 LDggKzE1MzgsNyBAQCBpbnRlbF9zcHJpdGVfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiwKIAlyZXR1cm4gaW50ZWxfcGxhbmU7CiAKIGZhaWw6Ci0Ja2ZyZWUo c3RhdGUpOwotCWtmcmVlKGludGVsX3BsYW5lKTsKKwlpbnRlbF9wbGFuZV9mcmVlKGludGVsX3Bs YW5lKTsKIAogCXJldHVybiBFUlJfUFRSKHJldCk7CiB9Ci0tIAoyLjE2LjEKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=