From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH] drm/i915: Engine discovery query Date: Mon, 1 Oct 2018 17:15:24 +0100 Message-ID: <20181001161524.8104-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-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4AABA89BBE for ; Mon, 1 Oct 2018 16:15:32 +0000 (UTC) Received: by mail-wr1-x444.google.com with SMTP id n1-v6so4483808wrt.10 for ; Mon, 01 Oct 2018 09:15:32 -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 bCBlbmdpbmUgaW5zdGFuY2VzLgoKdjI6CiAqIEZpeGVkIEhFVkMgYXNzaWdubWVudC4KICogUmVv cmRlciBzb21lIGZpZWxkcywgcmVuYW1lIHR5cGUgdG8gZmxhZ3MsIGluY3JlYXNlIHdpZHRoLiAo TGlvbmVsKQogKiBObyBuZWVkIHRvIGFsbG9jYXRlIHRlbXBvcmFyeSBzdG9yYWdlIGlmIHdlIGRv IGl0IGVuZ2luZSBieSBlbmdpbmUuCiAgIChMaW9uZWwpCgp2MzoKICogRGVzY3JpYmUgZW5naW5l IGZsYWdzIGFuZCBtYXJrIG1ieiBmaWVsZHMuIChMaW9uZWwpCiAqIEhFVkMgb25seSBhcHBsaWVz IHRvIFZDUy4KCnY0OgogKiBTcXVhc2ggU0ZDIGZsYWcgaW50byBtYWluIHBhdGNoLgogKiBUaWR5 IHNvbWUgY29tbWVudHMuCgpTaWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVy c3VsaW5AaW50ZWwuY29tPgpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28u dWs+CkNjOiBKb24gQmxvb21maWVsZCA8am9uLmJsb29tZmllbGRAaW50ZWwuY29tPgpDYzogRG1p dHJ5IFJvZ296aGtpbiA8ZG1pdHJ5LnYucm9nb3poa2luQGludGVsLmNvbT4KQ2M6IExpb25lbCBM YW5kd2VybGluIDxsaW9uZWwuZy5sYW5kd2VybGluQGludGVsLmNvbT4KQ2M6IEpvb25hcyBMYWh0 aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KQ2M6IFRvbnkgWWUgPHRvbnku eWVAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcXVlcnkuYyAgICAg ICB8IDYzICsrKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2VuZ2luZV9jcy5jICB8ICA5ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Jp bmdidWZmZXIuaCB8ICAzICsrCiBpbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggICAgICAgICAg ICAgfCA1NCArKysrKysrKysrKysrKysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgMTI5IGluc2Vy dGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3F1ZXJ5LmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3F1ZXJ5LmMKaW5kZXggNTgyMTAwMmNhZDQyLi4y OTRmODE5NWVmYTcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcXVlcnku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3F1ZXJ5LmMKQEAgLTg0LDkgKzg0LDcy IEBAIHN0YXRpYyBpbnQgcXVlcnlfdG9wb2xvZ3lfaW5mbyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCiAJcmV0dXJuIHRvdGFsX2xlbmd0aDsKIH0KIAorc3RhdGljIGludAorcXVl cnlfZW5naW5lX2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCisJCSAgc3RydWN0 IGRybV9pOTE1X3F1ZXJ5X2l0ZW0gKnF1ZXJ5X2l0ZW0pCit7CisJc3RydWN0IGRybV9pOTE1X3F1 ZXJ5X2VuZ2luZV9pbmZvIF9fdXNlciAqcXVlcnlfcHRyID0KKwkJCQl1NjRfdG9fdXNlcl9wdHIo cXVlcnlfaXRlbS0+ZGF0YV9wdHIpOworCXN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5mbyBfX3Vz ZXIgKmluZm9fcHRyID0gJnF1ZXJ5X3B0ci0+ZW5naW5lc1swXTsKKwlzdHJ1Y3QgZHJtX2k5MTVf cXVlcnlfZW5naW5lX2luZm8gcXVlcnk7CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5l OworCWVudW0gaW50ZWxfZW5naW5lX2lkIGlkOworCWludCBsZW47CisKKwlpZiAocXVlcnlfaXRl bS0+ZmxhZ3MpCisJCXJldHVybiAtRUlOVkFMOworCisJbGVuID0gc2l6ZW9mKHN0cnVjdCBkcm1f aTkxNV9xdWVyeV9lbmdpbmVfaW5mbykgKworCSAgICAgIEk5MTVfTlVNX0VOR0lORVMgKiBzaXpl b2Yoc3RydWN0IGRybV9pOTE1X2VuZ2luZV9pbmZvKTsKKworCWlmICghcXVlcnlfaXRlbS0+bGVu Z3RoKQorCQlyZXR1cm4gbGVuOworCWVsc2UgaWYgKHF1ZXJ5X2l0ZW0tPmxlbmd0aCA8IGxlbikK KwkJcmV0dXJuIC1FSU5WQUw7CisKKwlpZiAoY29weV9mcm9tX3VzZXIoJnF1ZXJ5LCBxdWVyeV9w dHIsIHNpemVvZihxdWVyeSkpKQorCQlyZXR1cm4gLUVGQVVMVDsKKworCWlmIChxdWVyeS5udW1f ZW5naW5lcyB8fCBxdWVyeS5yc3ZkWzBdIHx8IHF1ZXJ5LnJzdmRbMV0gfHwKKwkgICAgcXVlcnku cnN2ZFsyXSkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlpZiAoIWFjY2Vzc19vayhWRVJJRllfV1JJ VEUsIHF1ZXJ5X3B0ciwgcXVlcnlfaXRlbS0+bGVuZ3RoKSkKKwkJcmV0dXJuIC1FRkFVTFQ7CisK Kwlmb3JfZWFjaF9lbmdpbmUoZW5naW5lLCBpOTE1LCBpZCkgeworCQlzdHJ1Y3QgZHJtX2k5MTVf ZW5naW5lX2luZm8gaW5mbzsKKworCQlpZiAoX19jb3B5X2Zyb21fdXNlcigmaW5mbywgaW5mb19w dHIsIHNpemVvZihpbmZvKSkpCisJCQlyZXR1cm4gLUVGQVVMVDsKKworCQlpZiAoaW5mby5mbGFn cyB8fCBpbmZvLmNsYXNzIHx8IGluZm8uaW5zdGFuY2UgfHwKKwkJICAgIGluZm8uY2FwYWJpbGl0 aWVzIHx8IGluZm8ucnN2ZDAgfHwgaW5mby5yc3ZkMVswXSB8fAorCQkgICAgaW5mby5yc3ZkMVsx XSkKKwkJCXJldHVybiAtRUlOVkFMOworCisJCWluZm8uY2xhc3MgPSBlbmdpbmUtPnVhYmlfY2xh c3M7CisJCWluZm8uaW5zdGFuY2UgPSBlbmdpbmUtPmluc3RhbmNlOworCQlpbmZvLmZsYWdzID0g STkxNV9FTkdJTkVfRkxBR19QSFlTSUNBTCB8IEk5MTVfRU5HSU5FX0ZMQUdfQUJJOworCQlpbmZv LmNhcGFiaWxpdGllcyA9IGVuZ2luZS0+Y2FwYWJpbGl0aWVzOworCisJCWlmIChfX2NvcHlfdG9f dXNlcihpbmZvX3B0ciwgJmluZm8sIHNpemVvZihpbmZvKSkpCisJCQlyZXR1cm4gLUVGQVVMVDsK KworCQlxdWVyeS5udW1fZW5naW5lcysrOworCQlpbmZvX3B0cisrOworCX0KKworCWlmIChfX2Nv cHlfdG9fdXNlcihxdWVyeV9wdHIsICZxdWVyeSwgc2l6ZW9mKHF1ZXJ5KSkpCisJCXJldHVybiAt RUZBVUxUOworCisJcmV0dXJuIGxlbjsKK30KKwogc3RhdGljIGludCAoKiBjb25zdCBpOTE1X3F1 ZXJ5X2Z1bmNzW10pKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkJc3Ry dWN0IGRybV9pOTE1X3F1ZXJ5X2l0ZW0gKnF1ZXJ5X2l0ZW0pID0gewogCXF1ZXJ5X3RvcG9sb2d5 X2luZm8sCisJcXVlcnlfZW5naW5lX2luZm8sCiB9OwogCiBpbnQgaTkxNV9xdWVyeV9pb2N0bChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUp CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVfY3MuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCmluZGV4IDFjNjE0M2JkZjVhNC4u OTdiNGFjZjhhZjVjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdp bmVfY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdpbmVfY3MuYwpAQCAt Mjk0LDYgKzI5NCwxNSBAQCBpbnRlbF9lbmdpbmVfc2V0dXAoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2LAogCWVuZ2luZS0+bW1pb19iYXNlID0gX19lbmdpbmVfbW1pb19iYXNlKGRl dl9wcml2LCBpbmZvLT5tbWlvX2Jhc2VzKTsKIAllbmdpbmUtPmNsYXNzID0gaW5mby0+Y2xhc3M7 CiAJZW5naW5lLT5pbnN0YW5jZSA9IGluZm8tPmluc3RhbmNlOworCWlmIChlbmdpbmUtPmNsYXNz ID09IFZJREVPX0RFQ09ERV9DTEFTUykgeworCQkvKiBIRVZDIHN1cHBvcnQgaXMgcHJlc2VudCBv bmx5IG9uIHZjczAuICovCisJCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDggJiYgaW5mby0+ aW5zdGFuY2UgPT0gMCkKKwkJCWVuZ2luZS0+Y2FwYWJpbGl0aWVzID0gSTkxNV9WQ1NfQ0xBU1Nf Q0FQQUJJTElUWV9IRVZDOworCisJCS8qIFNGQyBzdXBwb3J0IGlzIHdpcmVkIG9ubHkgdG8gZXZl biBWQ1MgaW5zdGFuY2VzLiAqLworCQlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5ICYmICEo aW5mby0+aW5zdGFuY2UgJiAxKSkKKwkJCWVuZ2luZS0+Y2FwYWJpbGl0aWVzIHw9IEk5MTVfVkNT X0NMQVNTX0NBUEFCSUxJVFlfU0ZDOworCX0KIAogCWVuZ2luZS0+dWFiaV9pZCA9IGluZm8tPnVh YmlfaWQ7CiAJZW5naW5lLT51YWJpX2NsYXNzID0gaW50ZWxfZW5naW5lX2NsYXNzZXNbaW5mby0+ Y2xhc3NdLnVhYmlfY2xhc3M7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9yaW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgK aW5kZXggMTUzNGRlNWJiODUyLi45MGNmNGVlYTBkZTIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmgKQEAgLTM3MCw2ICszNzAsOSBAQCBzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzIHsKIAogCXU4IGNsYXNzOwogCXU4IGluc3RhbmNlOworCisJdTMyIGNhcGFiaWxpdGllczsK KwogCXUzMiBjb250ZXh0X3NpemU7CiAJdTMyIG1taW9fYmFzZTsKIApkaWZmIC0tZ2l0IGEvaW5j bHVkZS91YXBpL2RybS9pOTE1X2RybS5oIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCmlu ZGV4IDI5OGIyZTE5Nzc0NC4uYzQyOTJlNWZlZDUyIDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkv ZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCkBAIC0xNjUw LDYgKzE2NTAsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfcGVyZl9vYV9jb25maWcgewogc3RydWN0IGRy bV9pOTE1X3F1ZXJ5X2l0ZW0gewogCV9fdTY0IHF1ZXJ5X2lkOwogI2RlZmluZSBEUk1fSTkxNV9R VUVSWV9UT1BPTE9HWV9JTkZPICAgIDEKKyNkZWZpbmUgRFJNX0k5MTVfUVVFUllfRU5HSU5FX0lO Rk8JMgogCiAJLyoKIAkgKiBXaGVuIHNldCB0byB6ZXJvIGJ5IHVzZXJzcGFjZSwgdGhpcyBpcyBm aWxsZWQgd2l0aCB0aGUgc2l6ZSBvZiB0aGUKQEAgLTE3NDcsNiArMTc0OCw1OSBAQCBzdHJ1Y3Qg ZHJtX2k5MTVfcXVlcnlfdG9wb2xvZ3lfaW5mbyB7CiAJX191OCBkYXRhW107CiB9OwogCisvKioK KyAqIHN0cnVjdCBkcm1faTkxNV9lbmdpbmVfaW5mbworICoKKyAqIERlc2NyaWJlcyBvbmUgZW5n aW5lIGtub3duIHRvIHRoZSBkcml2ZXIsIHdoZXRoZXIgb3Igbm90IGl0IGlzIGFuIHVzZXItCisg KiBhY2Nlc3NpYmxlIG9yIGhhcmR3YXJlIG9ubHkgZW5naW5lLCBhbmQgd2hhdCBhcmUgaXQncyBj YXBhYmlsaXRpZXMgd2hlcmUKKyAqIGFwcGxpY2FibGUuCisgKi8KK3N0cnVjdCBkcm1faTkxNV9l bmdpbmVfaW5mbyB7CisJLyoqCisJICogRW5naW5lIGZsYWdzLgorCSAqCisJICogSTkxNV9FTkdJ TkVfRkxBR19QSFlTSUNBTCAtIGVuZ2luZSBleGlzdHMgaW4gdGhlIGhhcmR3YXJlCisJICogSTkx NV9FTkdJTkVfRkxBR19BQkkgLSBlbmdpbmUgY2FuIGJlIHN1Ym1pdHRlZCB0byB2aWEgZXhlY2J1 ZgorCSAqLworCV9fdTY0IGZsYWdzOworI2RlZmluZSBJOTE1X0VOR0lORV9GTEFHX1BIWVNJQ0FM CSgxIDw8IDApCisjZGVmaW5lIEk5MTVfRU5HSU5FX0ZMQUdfQUJJCQkoMSA8PCAxKQorCisJLyoq IEVuZ2luZSBjbGFzcyBhcyBpbiBlbnVtIGRybV9pOTE1X2dlbV9lbmdpbmVfY2xhc3MuICovCisJ X191MTYgY2xhc3M7CisKKwkvKiogRW5naW5lIGluc3RhbmNlIG51bWJlci4gKi8KKwlfX3UxNiBp bnN0YW5jZTsKKworCS8qKiBSZXNlcnZlZCBmaWVsZCBtdXN0IGJlIGNsZWFyZWQgdG8gemVyby4g Ki8KKwlfX3UzMiByc3ZkMDsKKworCS8qKiBDYXBhYmlsaXRpZXMgb2YgdGhpcyBlbmdpbmUuICov CisJX191NjQgY2FwYWJpbGl0aWVzOworI2RlZmluZSBJOTE1X1ZDU19DTEFTU19DQVBBQklMSVRZ X0hFVkMJKDEgPDwgMCkKKyNkZWZpbmUgSTkxNV9WQ1NfQ0xBU1NfQ0FQQUJJTElUWV9TRkMJKDEg PDwgMSkKKworCS8qKiBSZXNlcnZlZCBmaWVsZHMgbXVzdCBiZSBjbGVhcmVkIHRvIHplcm8uICov CisJX191NjQgcnN2ZDFbMl07Cit9OworCisvKioKKyAqIHN0cnVjdCBkcm1faTkxNV9xdWVyeV9l bmdpbmVfaW5mbworICoKKyAqIEVuZ2luZSBpbmZvIHF1ZXJ5IGVudW1lcmF0ZXMgYWxsIGVuZ2lu ZXMga25vd24gdG8gdGhlIGRyaXZlciBieSBmaWxsaW5nIGluCisgKiBhbiBhcnJheSBvZiBzdHJ1 Y3QgZHJtX2k5MTVfZW5naW5lX2luZm8gc3RydWN0dXJlcy4KKyAqLworc3RydWN0IGRybV9pOTE1 X3F1ZXJ5X2VuZ2luZV9pbmZvIHsKKwkvKiogTnVtYmVyIG9mIHN0cnVjdCBkcm1faTkxNV9lbmdp bmVfaW5mbyBzdHJ1Y3RzIGZvbGxvd2luZy4gKi8KKwlfX3UzMiBudW1fZW5naW5lczsKKworCS8q KiBNQlogKi8KKwlfX3UzMiByc3ZkWzNdOworCisJLyoqIE1hcmtlciBmb3IgZHJtX2k5MTVfZW5n aW5lX2luZm8gc3RydWN0dXJlcy4gKi8KKwlzdHJ1Y3QgZHJtX2k5MTVfZW5naW5lX2luZm8gZW5n aW5lc1tdOworfTsKKwogI2lmIGRlZmluZWQoX19jcGx1c3BsdXMpCiB9CiAjZW5kaWYKLS0gCjIu MTcuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==