From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5D0D789939 for ; Mon, 26 Nov 2018 20:44:03 +0000 (UTC) From: Andi Shyti Date: Mon, 26 Nov 2018 22:43:48 +0200 Message-Id: <20181126204349.6739-3-andi.shyti@intel.com> In-Reply-To: <20181126204349.6739-1-andi.shyti@intel.com> References: <20181126204349.6739-1-andi.shyti@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH v3 2/3] lib: implement new engine discovery interface List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: IGT dev Cc: Tvrtko Ursulin , Andi Shyti List-ID: S2VybmVsIGNvbW1pdHM6CgpbMV0gYWU4ZjQ1NDRkZDhmICgiZHJtL2k5MTU6IEVuZ2luZSBkaXNj b3ZlcnkgcXVlcnkiKQpbMl0gMzFlN2QzNTY2N2EwICgiZHJtL2k5MTU6IEFsbG93IGEgY29udGV4 dCB0byBkZWZpbmUgaXRzIHNldCBvZiBlbmdpbmVzIikKCmZyb20gWypdIHJlcG9zaXRvcnksIGlt cGxlbWVudCBhIG5ldyB1YXBpIGZvciBlbmdpbmUgZGlzY292ZXJ5CnRoYXQgY29uc2lzdCBpbiBm aXJzdCBxdWVyeWluZyB0aGUgZHJpdmVyIGFib3V0IHRoZSBlbmdpbmVzIGluCnRoZSBncHUgWzFd IGFuZCB0aGVuIGJpbmRpbmcgYSBjb250ZXh0IHRvIHRoZSBzZXQgb2YgZW5naW5lcyB0aGF0Cml0 IGNhbiBhY2Nlc3MgWzJdLgoKSW4gaWd0IHRoZSBjbGFzc2ljIHdheSBmb3IgZGlzY292ZXJpbmcg ZW5naW5lcyBpcyBkb25lIHRocm91Z2gKdGhlIGZvcl9lYWNoX3BoeXNpY2FsX2VuZ2luZSgpIG1h Y3JvLCB0aGF0IHdvdWxkIGJlIHJlcGxhY2VkIGJ5CnRoZSBuZXcgZm9yX2VhY2hfZW5naW5lX2N0 eCgpLgoKWypdIGdpdDovL3Blb3BsZS5mcmVlZGVza3RvcC5vcmcvfnR1cnN1bGluL2RybS1pbnRl bAoKU2lnbmVkLW9mZi1ieTogQW5kaSBTaHl0aSA8YW5kaS5zaHl0aUBpbnRlbC5jb20+Ci0tLQog bGliL2lndF9ndC5jIHwgNzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogbGliL2lndF9ndC5oIHwgIDUgKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA3 OSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvbGliL2lndF9ndC5jIGIvbGliL2lndF9ndC5j CmluZGV4IGEyMDYxOTI0Li5lNTU0M2IyNyAxMDA2NDQKLS0tIGEvbGliL2lndF9ndC5jCisrKyBi L2xpYi9pZ3RfZ3QuYwpAQCAtNjUwLDMgKzY1MCw3NyBAQCBib29sIGdlbV9yaW5nX2hhc19waHlz aWNhbF9lbmdpbmUoaW50IGZkLCB1bnNpZ25lZCByaW5nKQogCiAJcmV0dXJuIGdlbV9oYXNfcmlu ZyhmZCwgcmluZyk7CiB9CisKK3N0YXRpYyBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfZW5naW5lX2lu Zm8gKnF1ZXJ5X2VuZ2luZXMoaW50IGZkKQoreworCXN0cnVjdCBkcm1faTkxNV9xdWVyeSBxdWVy eSA9IHsgfTsKKwlzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfaXRlbSBpdGVtID0geyB9OworCXN0cnVj dCBkcm1faTkxNV9xdWVyeV9lbmdpbmVfaW5mbyAqcXVlcnlfZW5naW5lczsKKworCWl0ZW0ucXVl cnlfaWQgPSBEUk1fSTkxNV9RVUVSWV9FTkdJTkVfSU5GTzsKKwlxdWVyeS5pdGVtc19wdHIgPSB0 b191c2VyX3BvaW50ZXIoJml0ZW0pOworCXF1ZXJ5Lm51bV9pdGVtcyA9IDE7CisKKwkvKgorCSAq IFRoZSBmaXJzdCBpb2N0bCBpcyBzZW50IHdpdGggaXRlbS5sZW5ndGggPSAwCisJICogd2hpY2gg YXNrcyB0byB0aGUgZHJpdmVyIHRvIHN0b3JlIGluIGxlbmd0aCB0aGUKKwkgKiBtZW1vcnkgbmVl ZGVkIGZvciB0aGUgZW5naW5lcy4gSW4gdGhlIGRyaXZlciwgbGVuZ3RoCisJICogaXMgZXF1YWwg dG8KKwkgKgorCSAqICAgbGVuID0gc2l6ZW9mKHN0cnVjdCBkcm1faTkxNV9xdWVyeV9lbmdpbmVf aW5mbykgKworCSAqICAgICAgICAgICAgICAgICAgIElOVEVMX0lORk8oaTkxNSktPm51bV9yaW5n cyAqCisJICogICAgICAgICAgICAgICAgICAgc2l6ZW9mKHN0cnVjdCBkcm1faTkxNV9lbmdpbmVf aW5mbyk7CisJICovCisJaWd0X3JlcXVpcmUoIWlvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9RVUVS WSwgJnF1ZXJ5KSk7CisKKwlpZ3RfYXNzZXJ0KChxdWVyeV9lbmdpbmVzID0gY2FsbG9jKGl0ZW0u bGVuZ3RoLCAxKSkpOworCWl0ZW0uZGF0YV9wdHIgPSB0b191c2VyX3BvaW50ZXIocXVlcnlfZW5n aW5lcyk7CisKKwkvKiBUaGUgc2Vjb25kIGlvY3RsIHN0b3JlcyB0aGUgZW5naW5lcyBpbiBxdWVy eV9lbmdpbmVzICovCisJaWd0X3JlcXVpcmUoIWlvY3RsKGZkLCBEUk1fSU9DVExfSTkxNV9RVUVS WSwgJnF1ZXJ5KSk7CisKKwlyZXR1cm4gcXVlcnlfZW5naW5lczsKK30KKworc3RhdGljIHZvaWQg c2V0X3BhcmFtKGludCBmZCwgdWludDMyX3QgY3R4X2lkLAorCQkgICAgICBzdHJ1Y3QgZHJtX2k5 MTVfcXVlcnlfZW5naW5lX2luZm8gKnF1ZXJ5X2VuZ2luZSkKK3sKKwlpbnQgaTsKKwlzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX2NvbnRleHRfcGFyYW0gY3R4X3BhcmFtOworCXN0cnVjdCBpOTE1X2NvbnRl eHRfcGFyYW1fZW5naW5lcyAqY3R4X2VuZ2luZTsKKwlzaXplX3Qgc2l6ZSA9IHNpemVvZihzdHJ1 Y3QgaTkxNV9jb250ZXh0X3BhcmFtX2VuZ2luZXMpICsKKwkJICAgICAgcXVlcnlfZW5naW5lLT5u dW1fZW5naW5lcyAqCisJCSAgICAgIHNpemVvZigqY3R4X2VuZ2luZS0+Y2xhc3NfaW5zdGFuY2Up OworCisJaWd0X2Fzc2VydCgoY3R4X2VuZ2luZSA9IG1hbGxvYyhzaXplKSkpOworCisJY3R4X2Vu Z2luZS0+ZXh0ZW5zaW9ucyA9IDA7CisJZm9yIChpID0gMDsgaSA8IHF1ZXJ5X2VuZ2luZS0+bnVt X2VuZ2luZXM7IGkrKykgeworCQljdHhfZW5naW5lLT5jbGFzc19pbnN0YW5jZVtpXS5jbGFzcyA9 IHF1ZXJ5X2VuZ2luZS0+ZW5naW5lc1tpXS5jbGFzczsKKwkJY3R4X2VuZ2luZS0+Y2xhc3NfaW5z dGFuY2VbaV0uaW5zdGFuY2UgPSBxdWVyeV9lbmdpbmUtPmVuZ2luZXNbaV0uaW5zdGFuY2U7CisJ fQorCisJY3R4X3BhcmFtLmN0eF9pZCA9IGN0eF9pZDsKKwljdHhfcGFyYW0uc2l6ZSA9IHNpemU7 CisJY3R4X3BhcmFtLnBhcmFtID0gSTkxNV9DT05URVhUX1BBUkFNX0VOR0lORVM7CisJY3R4X3Bh cmFtLnZhbHVlID0gdG9fdXNlcl9wb2ludGVyKGN0eF9lbmdpbmUpOworCisJLyogY2hlY2sgd2hl dGhlciB3ZSBmcmVlIHRoZSBlbmdpbmVzICovCisJaWd0X3JlcXVpcmUoIWlvY3RsKGZkLCBEUk1f SU9DVExfSTkxNV9HRU1fQ09OVEVYVF9TRVRQQVJBTSwgJmN0eF9wYXJhbSkpOworCisJZnJlZShj dHhfZW5naW5lKTsKK30KKworaW50IF9fZ2VtX3NldHVwX2N0eF9lbmdpbmVzKGludCBmZCwgdWlu dDMyX3QgY3R4X2lkKQoreworCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9lbmdpbmVfaW5mbyAqcXVl cnlfZW5naW5lOworCWludCBuOworCisJcXVlcnlfZW5naW5lID0gcXVlcnlfZW5naW5lcyhmZCk7 CisJc2V0X3BhcmFtKGZkLCBjdHhfaWQsIHF1ZXJ5X2VuZ2luZSk7CisKKwluID0gcXVlcnlfZW5n aW5lLT5udW1fZW5naW5lczsKKwlmcmVlKHF1ZXJ5X2VuZ2luZSk7CisKKwlyZXR1cm4gbjsKK30K ZGlmZiAtLWdpdCBhL2xpYi9pZ3RfZ3QuaCBiL2xpYi9pZ3RfZ3QuaAppbmRleCA1NGU5NWRhOS4u NTEyZjk1OGQgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfZ3QuaAorKysgYi9saWIvaWd0X2d0LmgKQEAg LTg2LDggKzg2LDEzIEBAIGV4dGVybiBjb25zdCBzdHJ1Y3QgaW50ZWxfZXhlY3V0aW9uX2VuZ2lu ZSB7CiAJICAgICBlX18rKykgXAogCQlmb3JfaWYgKGdlbV9yaW5nX2hhc19waHlzaWNhbF9lbmdp bmUoZmRfXywgZmxhZ3NfXyA9IGVfXy0+ZXhlY19pZCB8IGVfXy0+ZmxhZ3MpKQogCisjZGVmaW5l IGZvcl9lYWNoX2VuZ2luZV9jdHgoZmQsIGN0eCwgZSkgXAorCQlmb3IgKGludCBfX20gPSBfX2dl bV9zZXR1cF9jdHhfZW5naW5lcyhmZCwgY3R4KSwgX19lID0gZSA9IDE7IFwKKwkJCQlfX2UgPD0g X19tOyBlID0gKytfX2UpCisKIGJvb2wgZ2VtX3JpbmdfaXNfcGh5c2ljYWxfZW5naW5lKGludCBm ZCwgdW5zaWduZWQgaW50IHJpbmcpOwogYm9vbCBnZW1fcmluZ19oYXNfcGh5c2ljYWxfZW5naW5l KGludCBmZCwgdW5zaWduZWQgaW50IHJpbmcpOworaW50IF9fZ2VtX3NldHVwX2N0eF9lbmdpbmVz KGludCBmZCwgdWludDMyX3QgY3R4X2lkKTsKIAogYm9vbCBnZW1fY2FuX3N0b3JlX2R3b3JkKGlu dCBmZCwgdW5zaWduZWQgaW50IGVuZ2luZSk7CiAKLS0gCjIuMjAuMC5yYzEKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0 CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldgo=