From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC] drm/i915: Engine discovery query Date: Wed, 14 Mar 2018 14:05:39 +0000 Message-ID: <20180314140539.9287-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id EBCF16E6D5 for ; Wed, 14 Mar 2018 14:05:55 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id u10so4106433wmu.4 for ; Wed, 14 Mar 2018 07:05:55 -0700 (PDT) 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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkVuZ2luZSBk aXNjb3ZlcnkgcXVlcnkgYWxsb3dzIHVzZXJzcGFjZSB0byBlbnVtZXJhdGUgZW5naW5lcywgcHJv YmUgdGhlaXIKY29uZmlndXJhdGlvbiBmZWF0dXJlcywgYWxsIHdpdGhvdXQgbmVlZGluZyB0byBt YWludGFpbiB0aGUgaW50ZXJuYWwgUENJCklEIGJhc2VkIGRhdGFiYXNlLgoKQSBuZXcgcXVlcnkg Zm9yIHRoZSBnZW5lcmljIGk5MTUgcXVlcnkgaW9jdGwgaXMgYWRkZWQgbmFtZWQKRFJNX0k5MTVf UVVFUllfRU5HSU5FX0lORk8sIHRvZ2V0aGVyIHdpdGggYWNjb21wYW55aW5nIHN0cnVjdHVyZQpk cm1faTkxNV9xdWVyeV9lbmdpbmVfaW5mby4gVGhlIGFkZHJlc3Mgb2YgbGF0dGVyIHNob3VsZCBi ZSBwYXNzZWQgdG8gdGhlCmtlcm5lbCBpbiB0aGUgcXVlcnkuZGF0YV9wdHIgZmllbGQsIGFuZCBz aG91bGQgYmUgbGFyZ2UgZW5vdWdoIGZvciB0aGUKa2VybmVsIHRvIGZpbGwgb3V0IGFsbCBrbm93 biBlbmdpbmVzIGFzIHN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5mbwplbGVtZW50cyB0cmFpbGlu ZyB0aGUgcXVlcnkuCgpBcyB3aXRoIG90aGVyIHF1ZXJpZXMsIHNldHRpbmcgdGhlIGl0ZW0gcXVl cnkgbGVuZ3RoIHRvIHplcm8gYWxsb3dzCnVzZXJzcGFjZSB0byBxdWVyeSBtaW5pbXVtIHJlcXVp cmVkIGJ1ZmZlciBzaXplLgoKRW51bWVyYXRlZCBlbmdpbmVzIGhhdmUgY29tbW9uIHR5cGUgbWFz ayB3aGljaCBjYW4gYmUgdXNlZCB0byBxdWVyeSBhbGwKaGFyZHdhcmUgZW5naW5lcywgdmVyc3Vz IGVuZ2luZXMgdXNlcnNwYWNlIGNhbiBzdWJtaXQgdG8gdXNpbmcgdGhlIGV4ZWNidWYKdUFQSS4K CkVuZ2luZXMgYWxzbyBoYXZlIGNhcGFiaWxpdGllcyB3aGljaCBhcmUgcGVyIGVuZ2luZSBjbGFz cyBuYW1lc3BhY2Ugb2YKYml0cyBkZXNjcmliaW5nIGZlYXR1cmVzIG5vdCBwcmVzZW50IG9uIGFs bCBlbmdpbmUgaW5zdGFuY2VzLgoKU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRr by51cnN1bGluQGludGVsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29u LmNvLnVrPgpDYzogSm9uIEJsb29tZmllbGQgPGpvbi5ibG9vbWZpZWxkQGludGVsLmNvbT4KQ2M6 IERtaXRyeSBSb2dvemhraW4gPGRtaXRyeS52LnJvZ296aGtpbkBpbnRlbC5jb20+CkNjOiBMaW9u ZWwgTGFuZHdlcmxpbiA8bGlvbmVsLmcubGFuZHdlcmxpbkBpbnRlbC5jb20+CkNjOiBKb29uYXMg TGFodGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+Ci0tLQpUaGlzIGlzIFJG QyBmb3Igbm93IHNpbmNlIGl0IGlzIG5vdCB2ZXJ5IHVzYWJsZSBiZWZvcmUgdGhlIG5ldyBleGVj YnVmIEFQSQpvciB2aXJ0dWFsIGVuZ2luZSBxdWV1ZSBzdWJtaXNzaW9uIGdldHMgY2xvc2VyLgoK SW4gdGhpcyB2ZXJzaW9uIEkgaGF2ZSBhZGRlZCBjYXBhYmlsaXR5IG9mIGRpc3Rpbmd1aXNoaW5n IGJldHdlZW4gaGFyZHdhcmUKZW5naW5lcyBhbmQgQUJJIGVuZ2luZXMuIFRoaXMgaXMgdG8gYWNj b3VudCBmb3IgcHJvYmFibGUgZnV0dXJlIHVzZSBjYXNlcwpsaWtlIHZpcnR1YWxpemF0aW9uLCB3 aGVyZSBndWVzdCBtaWdodCBvbmx5IHNlZSBvbmUgZW5naW5lIGluc3RhbmNlLCBidXQKd2lsbCB3 YW50IHRvIGtub3cgb3ZlcmFsbCBoYXJkd2FyZSBjYXBhYmlsaXRpZXMgaW4gb3JkZXIgdG8gdHVu ZSBpdHMKYmVoYXZpb3VyLgoKSW4gZ2VuZXJhbCBJIHRoaW5rIHdlIHdpbGwgaGF2ZSB0byB3YWl0 IGEgYml0IGJlZm9yZSBkZWZpbmluZyB0aGUgZmluYWwKbG9vayBvZiB0aGUgdUFQSSwgYnV0IGlu IHRoZSBtZWFudGltZSBJIHRob3VnaHQgaXQgdXNlZnVsIHRvIHNoYXJlIGFzIFJGQy4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3F1ZXJ5LmMgICAgICAgfCA2MSArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9j cy5jICB8ICAzICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmggfCAg MyArKwogaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oICAgICAgICAgICAgIHwgNDQgKysrKysr KysrKysrKysrKysrKysrKysrCiA0IGZpbGVzIGNoYW5nZWQsIDExMSBpbnNlcnRpb25zKCspCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9xdWVyeS5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9xdWVyeS5jCmluZGV4IDNhY2U5MjlkZDkwZi4uZTAwZDAyNzk2ZDQy IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3F1ZXJ5LmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9xdWVyeS5jCkBAIC04Miw5ICs4Miw3MCBAQCBzdGF0aWMg aW50IHF1ZXJ5X3RvcG9sb2d5X2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 LAogCXJldHVybiB0b3RhbF9sZW5ndGg7CiB9CiAKK3N0YXRpYyBpbnQKK3F1ZXJ5X2VuZ2luZV9p bmZvKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAorCQkgIHN0cnVjdCBkcm1faTkxNV9x dWVyeV9pdGVtICpxdWVyeV9pdGVtKQoreworCXN0cnVjdCBkcm1faTkxNV9xdWVyeV9lbmdpbmVf aW5mbyBxdWVyeSwgKnE7CisJc3RydWN0IGRybV9pOTE1X2VuZ2luZV9pbmZvICppbmZvOworCXN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKKwllbnVtIGludGVsX2VuZ2luZV9pZCBpZDsK KwlpbnQgbGVuOworCisJaWYgKHF1ZXJ5X2l0ZW0tPmZsYWdzKQorCQlyZXR1cm4gLUVJTlZBTDsK KworCWxlbiA9IHNpemVvZihzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfZW5naW5lX2luZm8pICsKKwkg ICAgICBJOTE1X05VTV9FTkdJTkVTICogc2l6ZW9mKHN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5m byk7CisKKwlpZiAoIXF1ZXJ5X2l0ZW0tPmxlbmd0aCkKKwkJcmV0dXJuIGxlbjsKKwllbHNlIGlm IChxdWVyeV9pdGVtLT5sZW5ndGggPCBsZW4pCisJCXJldHVybiAtRUlOVkFMOworCisJaWYgKGNv cHlfZnJvbV91c2VyKCZxdWVyeSwgdTY0X3RvX3VzZXJfcHRyKHF1ZXJ5X2l0ZW0tPmRhdGFfcHRy KSwKKwkJCSAgIHNpemVvZihxdWVyeSkpKQorCQlyZXR1cm4gLUVGQVVMVDsKKworCWlmIChxdWVy eS5udW1fZW5naW5lcyB8fAorCSAgICBxdWVyeS5yc3ZkWzBdIHx8IHF1ZXJ5LnJzdmRbMV0gfHwg cXVlcnkucnN2ZFsyXSkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlpZiAoIWFjY2Vzc19vayhWRVJJ RllfV1JJVEUsIHU2NF90b191c2VyX3B0cihxdWVyeV9pdGVtLT5kYXRhX3B0ciksCisJCSAgICAg ICBsZW4pKQorCQlyZXR1cm4gLUVGQVVMVDsKKworCXEgPSBremFsbG9jKGxlbiwgR0ZQX0tFUk5F TCk7CisJaWYgKCFxKQorCQlyZXR1cm4gLUVOT01FTTsKKworCWluZm8gPSAmcS0+ZW5naW5lc1sw XTsKKworCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGk5MTUsIGlkKSB7CisJCWluZm8tPmNsYXNz ID0gZW5naW5lLT51YWJpX2NsYXNzOworCQlpbmZvLT5pbnN0YW5jZSA9IGVuZ2luZS0+aW5zdGFu Y2U7CisJCWluZm8tPnR5cGUgPSBJOTE1X0VOR0lORV9UWVBFX1BIWVNJQ0FMIHwKKwkJCSAgICAg STkxNV9FTkdJTkVfVFlQRV9VQVBJOworCQlpbmZvLT5jYXBhYmlsaXRpZXMgPSBlbmdpbmUtPmNh cGFiaWxpdGllczsKKwkJaW5mbysrOworCQlxLT5udW1fZW5naW5lcysrOworCX0KKworCWlmIChf X2NvcHlfdG9fdXNlcih1NjRfdG9fdXNlcl9wdHIocXVlcnlfaXRlbS0+ZGF0YV9wdHIpLCBxLCBs ZW4pKSB7CisJCWxlbiA9IC1FRkFVTFQ7CisJCWdvdG8gb3V0OworCX0KKworb3V0OgorCWtmcmVl KHEpOworCisJcmV0dXJuIGxlbjsKK30KKwogc3RhdGljIGludCAoKiBjb25zdCBpOTE1X3F1ZXJ5 X2Z1bmNzW10pKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkJc3RydWN0 IGRybV9pOTE1X3F1ZXJ5X2l0ZW0gKnF1ZXJ5X2l0ZW0pID0gewogCXF1ZXJ5X3RvcG9sb2d5X2lu Zm8sCisJcXVlcnlfZW5naW5lX2luZm8sCiB9OwogCiBpbnQgaTkxNV9xdWVyeV9pb2N0bChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUpCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVfY3MuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCmluZGV4IGEyYjFlOWUyYzAwOC4uODFi ZTRhY2Q4MzU4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVf Y3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVfY3MuYwpAQCAtODYs NiArODYsNyBAQCBzdHJ1Y3QgZW5naW5lX2luZm8gewogCXVuc2lnbmVkIGludCB1YWJpX2lkOwog CXU4IGNsYXNzOwogCXU4IGluc3RhbmNlOworCXUzMiBjYXBhYmlsaXRpZXM7CiAJdTMyIG1taW9f YmFzZTsKIAl1bnNpZ25lZCBpcnFfc2hpZnQ7CiB9OwpAQCAtMTE0LDYgKzExNSw3IEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgZW5naW5lX2luZm8gaW50ZWxfZW5naW5lc1tdID0gewogCQkuaW5zdGFu Y2UgPSAwLAogCQkubW1pb19iYXNlID0gR0VONl9CU0RfUklOR19CQVNFLAogCQkuaXJxX3NoaWZ0 ID0gR0VOOF9WQ1MxX0lSUV9TSElGVCwKKwkJLmNhcGFiaWxpdGllcyA9IEk5MTVfVkNTX0NMQVNT X0NBUEFCSUxJVFlfSEVWQywKIAl9LAogCVtWQ1MyXSA9IHsKIAkJLmh3X2lkID0gVkNTMl9IVywK QEAgLTI3OSw2ICsyODEsNyBAQCBpbnRlbF9lbmdpbmVfc2V0dXAoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAogCWVuZ2luZS0+aXJxX3NoaWZ0ID0gaW5mby0+aXJxX3NoaWZ0Owog CWVuZ2luZS0+Y2xhc3MgPSBpbmZvLT5jbGFzczsKIAllbmdpbmUtPmluc3RhbmNlID0gaW5mby0+ aW5zdGFuY2U7CisJZW5naW5lLT5jYXBhYmlsaXRpZXMgPSBpbmZvLT5jYXBhYmlsaXRpZXM7CiAK IAllbmdpbmUtPnVhYmlfaWQgPSBpbmZvLT51YWJpX2lkOwogCWVuZ2luZS0+dWFiaV9jbGFzcyA9 IGNsYXNzX2luZm8tPnVhYmlfY2xhc3M7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9yaW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVm ZmVyLmgKaW5kZXggODFjZGJiZjI1N2VjLi5jNzNlMTM0NWYzNzYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKQEAgLTMyOSw2ICszMjksOSBAQCBzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzIHsKIAogCXU4IGNsYXNzOwogCXU4IGluc3RhbmNlOworCisJdTMyIGNhcGFiaWxp dGllczsKKwogCXUzMiBjb250ZXh0X3NpemU7CiAJdTMyIG1taW9fYmFzZTsKIAl1bnNpZ25lZCBp bnQgaXJxX3NoaWZ0OwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oIGIv aW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCmluZGV4IDdmNTYzNGNlOGU4OC4uNTdiNjFkYmRh NzIzIDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVk ZS91YXBpL2RybS9pOTE1X2RybS5oCkBAIC0xNjIwLDYgKzE2MjAsNyBAQCBzdHJ1Y3QgZHJtX2k5 MTVfcGVyZl9vYV9jb25maWcgewogc3RydWN0IGRybV9pOTE1X3F1ZXJ5X2l0ZW0gewogCV9fdTY0 IHF1ZXJ5X2lkOwogI2RlZmluZSBEUk1fSTkxNV9RVUVSWV9UT1BPTE9HWV9JTkZPICAgIDEKKyNk ZWZpbmUgRFJNX0k5MTVfUVVFUllfRU5HSU5FX0lORk8JMgogCiAJLyoKIAkgKiBXaGVuIHNldCB0 byB6ZXJvIGJ5IHVzZXJzcGFjZSwgdGhpcyBpcyBmaWxsZWQgd2l0aCB0aGUgc2l6ZSBvZiB0aGUK QEAgLTE3MTcsNiArMTcxOCw0OSBAQCBzdHJ1Y3QgZHJtX2k5MTVfcXVlcnlfdG9wb2xvZ3lfaW5m byB7CiAJX191OCBkYXRhW107CiB9OwogCisvKioKKyAqIHN0cnVjdCBkcm1faTkxNV9lbmdpbmVf aW5mbworICoKKyAqIERlc2NyaWJlcyBvbmUgZW5naW5lIGtub3duIHRvIHRoZSBkcml2ZXIsIHdo ZXRoZXIgb3Igbm90IGlzIHBoeXNpY2FsIGVuZ2luZQorICogb25seSwgb3IgaXQgY2FuIGFsc28g YmUgdGFyZ2V0dGVkIGZyb20gdXNlcnNwYWNlLCBhbmQgd2hhdCBhcmUgaXRzCisgKiBjYXBhYmls aXRpZXMgd2hlcmUgYXBwbGljYWJsZS4KKyAqLworc3RydWN0IGRybV9pOTE1X2VuZ2luZV9pbmZv IHsKKwkvKiogRW5naW5lIGNsYXNzIGFzIGluIGVudW0gZHJtX2k5MTVfZ2VtX2VuZ2luZV9jbGFz cy4gKi8KKwlfX3U4IGNsYXNzOworCisJLyoqIEVuZ2luZSBpbnN0YW5jZSBudW1iZXIuICovCisJ X191OCBpbnN0YW5jZTsKKworCS8qKiBFbmdpbmUgdHlwZSBmbGFncy4gKi8KKwlfX3UxNiB0eXBl OworI2RlZmluZSBJOTE1X0VOR0lORV9UWVBFX1BIWVNJQ0FMCUJJVCgwKQorI2RlZmluZSBJOTE1 X0VOR0lORV9UWVBFX1VBUEkJCUJJVCgxKQorCisJLyoqIENhcGFiaWxpdGllcyBvZiB0aGlzIGVu Z2luZS4gKi8KKwlfX3UzMiBjYXBhYmlsaXRpZXM7CisjZGVmaW5lIEk5MTVfVkNTX0NMQVNTX0NB UEFCSUxJVFlfSEVWQwlCSVQoMCkKKworCV9fdTMyIHJzdmRbNF07Cit9OworCisvKioKKyAqIHN0 cnVjdCBkcm1faTkxNV9xdWVyeV9lbmdpbmVfaW5mbworICoKKyAqIEVuZ2luZSBpbmZvIHF1ZXJ5 IGVudW1lcmF0ZXMgYWxsIHRoZSBlbmdpbmVzIGtub3duIHRvIHRoZSBkcml2ZXIgcmV0dXJuaW5n CisgKiB0aGUgYXJyYXkgb2Ygc3RydWN0IGRybV9pOTE1X2VuZ2luZV9pbmZvIHN0cnVjdHVyZXMu CisgKi8KK3N0cnVjdCBkcm1faTkxNV9xdWVyeV9lbmdpbmVfaW5mbyB7CisJLyoqIE51bWJlciBv ZiBzdHJ1Y3QgZHJtX2k5MTVfZW5naW5lX2luZm8gc3RydWN0cyBmb2xsb3dpbmcuICovCisJX191 MzIgbnVtX2VuZ2luZXM7CisKKwkvKiogTUJaICovCisJX191MzIgcnN2ZFszXTsKKworCS8qKiBN YXJrZXIgZm9yIGRybV9pOTE1X2VuZ2luZV9pbmZvIHN0cnVjdHVyZXMuICovCisJc3RydWN0IGRy bV9pOTE1X2VuZ2luZV9pbmZvIGVuZ2luZXNbXTsKK307CisKICNpZiBkZWZpbmVkKF9fY3BsdXNw bHVzKQogfQogI2VuZGlmCi0tIAoyLjE0LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3Rz LmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xp c3RpbmZvL2ludGVsLWdmeAo=