From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH] drm/i915: Small compaction of the engine init code Date: Wed, 22 Jun 2016 16:55:51 +0100 Message-ID: <1466610951-3482-1-git-send-email-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id 924C46E818 for ; Wed, 22 Jun 2016 15:55:54 +0000 (UTC) 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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkVmZmVjdGl2 ZWx5IHJlbW92ZXMgb25lIGxheWVyIG9mIGluZGlyZWN0aW9uIGJldHdlZW4gdGhlIG1hc2sgb2YK cG9zc2libGUgZW5naW5lcyBhbmQgdGhlIGVuZ2luZSBjb25zdHJ1Y3RvcnMuIEluc3RlYWQgb2Yg c3BlbGxpbmcKb3V0IGluIGNvZGUgdGhlIG1hcHBpbmcgb2YgSEFTXzxlbmdpbmU+IHRvIGNvbnN0 cnVjdG9ycywgbWFrZXMKbW9yZSB1c2Ugb2YgdGhlIHJlY2VudGx5IGFkZGVkIGRhdGEgZHJpdmVu IGFwcHJvYWNoIGJ5IHB1dHRpbmcKZW5naW5lIGNvbnN0cnVjdG9yIHZmdW5jcyBpbnRvIHRoZSB0 YWJsZSBhcyB3ZWxsLgoKRWZmZWN0IGlzIGZld2VyIGxpbmVzIG9mIHNvdXJjZSBhbmQgc21hbGxl ciBiaW5hcnkuCgpBdCB0aGUgc2FtZSB0aW1lIHNpbXBsaWZ5IHRoZSBlcnJvciBoYW5kbGluZyBz aW5jZSBlbmdpbmUKZGVzdHJ1Y3RvcnMgY2FuIHJ1biBvbiB1bml0aWFsaXplZCBlbmdpbmVzIGFu eXdheS4KClNpbWlsYXIgYXBwcm9hY2ggY291bGQgYmUgZG9uZSBmb3IgbGVnYWN5IHN1Ym1pc3Np b24gaXMgd2FudGVkLgoKU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1 bGluQGludGVsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVr PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIHwgMTA3ICsrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDM2IGluc2VydGlv bnMoKyksIDcxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5kZXggZGVi ZWQwMTFhOTU4Li42MTliZTJhOWQ1ZDEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2xyYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCkBAIC0y MDE2LDEyICsyMDE2LDE2IEBAIGxyY19zZXR1cF9od3Moc3RydWN0IGludGVsX2VuZ2luZV9jcyAq ZW5naW5lLAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IGxvZ2ljYWxfcmVuZGVyX3Jpbmdf aW5pdChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpOworc3RhdGljIGludCBsb2dpY2Fs X3JpbmdfaW5pdChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpOworCiBzdGF0aWMgY29u c3Qgc3RydWN0IGxvZ2ljYWxfcmluZ19pbmZvIHsKIAljb25zdCBjaGFyICpuYW1lOwogCXVuc2ln bmVkIGV4ZWNfaWQ7CiAJdW5zaWduZWQgZ3VjX2lkOwogCXUzMiBtbWlvX2Jhc2U7CiAJdW5zaWdu ZWQgaXJxX3NoaWZ0OworCWludCAoKmluaXQpKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2lu ZSk7CiB9IGxvZ2ljYWxfcmluZ3NbXSA9IHsKIAlbUkNTXSA9IHsKIAkJLm5hbWUgPSAicmVuZGVy IHJpbmciLApAQCAtMjAyOSw2ICsyMDMzLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBsb2dpY2Fs X3JpbmdfaW5mbyB7CiAJCS5ndWNfaWQgPSBHVUNfUkVOREVSX0VOR0lORSwKIAkJLm1taW9fYmFz ZSA9IFJFTkRFUl9SSU5HX0JBU0UsCiAJCS5pcnFfc2hpZnQgPSBHRU44X1JDU19JUlFfU0hJRlQs CisJCS5pbml0ID0gbG9naWNhbF9yZW5kZXJfcmluZ19pbml0LAogCX0sCiAJW0JDU10gPSB7CiAJ CS5uYW1lID0gImJsaXR0ZXIgcmluZyIsCkBAIC0yMDM2LDYgKzIwNDEsNyBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IGxvZ2ljYWxfcmluZ19pbmZvIHsKIAkJLmd1Y19pZCA9IEdVQ19CTElUVEVSX0VO R0lORSwKIAkJLm1taW9fYmFzZSA9IEJMVF9SSU5HX0JBU0UsCiAJCS5pcnFfc2hpZnQgPSBHRU44 X0JDU19JUlFfU0hJRlQsCisJCS5pbml0ID0gbG9naWNhbF9yaW5nX2luaXQsCiAJfSwKIAlbVkNT XSA9IHsKIAkJLm5hbWUgPSAiYnNkIHJpbmciLApAQCAtMjA0Myw2ICsyMDQ5LDcgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBsb2dpY2FsX3JpbmdfaW5mbyB7CiAJCS5ndWNfaWQgPSBHVUNfVklERU9f RU5HSU5FLAogCQkubW1pb19iYXNlID0gR0VONl9CU0RfUklOR19CQVNFLAogCQkuaXJxX3NoaWZ0 ID0gR0VOOF9WQ1MxX0lSUV9TSElGVCwKKwkJLmluaXQgPSBsb2dpY2FsX3JpbmdfaW5pdCwKIAl9 LAogCVtWQ1MyXSA9IHsKIAkJLm5hbWUgPSAiYnNkMiByaW5nIiwKQEAgLTIwNTAsNiArMjA1Nyw3 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbG9naWNhbF9yaW5nX2luZm8gewogCQkuZ3VjX2lkID0g R1VDX1ZJREVPX0VOR0lORTIsCiAJCS5tbWlvX2Jhc2UgPSBHRU44X0JTRDJfUklOR19CQVNFLAog CQkuaXJxX3NoaWZ0ID0gR0VOOF9WQ1MyX0lSUV9TSElGVCwKKwkJLmluaXQgPSBsb2dpY2FsX3Jp bmdfaW5pdCwKIAl9LAogCVtWRUNTXSA9IHsKIAkJLm5hbWUgPSAidmlkZW8gZW5oYW5jZW1lbnQg cmluZyIsCkBAIC0yMDU3LDE0ICsyMDY1LDE0IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbG9naWNh bF9yaW5nX2luZm8gewogCQkuZ3VjX2lkID0gR1VDX1ZJREVPRU5IQU5DRV9FTkdJTkUsCiAJCS5t bWlvX2Jhc2UgPSBWRUJPWF9SSU5HX0JBU0UsCiAJCS5pcnFfc2hpZnQgPSBHRU44X1ZFQ1NfSVJR X1NISUZULAorCQkuaW5pdCA9IGxvZ2ljYWxfcmluZ19pbml0LAogCX0sCiB9OwogCiBzdGF0aWMg c3RydWN0IGludGVsX2VuZ2luZV9jcyAqCi1sb2dpY2FsX3Jpbmdfc2V0dXAoc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgZW51bSBpbnRlbF9lbmdpbmVfaWQgaWQpCitsb2dpY2FsX3Jpbmdfc2V0dXAo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCBlbnVtIGludGVsX2VuZ2luZV9pZCBp ZCkKIHsKIAljb25zdCBzdHJ1Y3QgbG9naWNhbF9yaW5nX2luZm8gKmluZm8gPSAmbG9naWNhbF9y aW5nc1tpZF07Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShk ZXYpOwogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSA9ICZkZXZfcHJpdi0+ZW5naW5l W2lkXTsKIAllbnVtIGZvcmNld2FrZV9kb21haW5zIGZ3X2RvbWFpbnM7CiAKQEAgLTIxMDcsNyAr MjExNSw3IEBAIGxvZ2ljYWxfcmluZ19zZXR1cChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBlbnVt IGludGVsX2VuZ2luZV9pZCBpZCkKIAlsb2dpY2FsX3JpbmdfZGVmYXVsdF9pcnFzKGVuZ2luZSwg aW5mby0+aXJxX3NoaWZ0KTsKIAogCWludGVsX2VuZ2luZV9pbml0X2hhbmdjaGVjayhlbmdpbmUp OwotCWk5MTVfZ2VtX2JhdGNoX3Bvb2xfaW5pdChkZXYsICZlbmdpbmUtPmJhdGNoX3Bvb2wpOwor CWk5MTVfZ2VtX2JhdGNoX3Bvb2xfaW5pdChkZXZfcHJpdi0+ZGV2LCAmZW5naW5lLT5iYXRjaF9w b29sKTsKIAogCXJldHVybiBlbmdpbmU7CiB9CkBAIC0yMTQ4LDE2ICsyMTU2LDE2IEBAIGVycm9y OgogCXJldHVybiByZXQ7CiB9CiAKLXN0YXRpYyBpbnQgbG9naWNhbF9yZW5kZXJfcmluZ19pbml0 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCitzdGF0aWMgaW50IGxvZ2ljYWxfcmVuZGVyX3Jpbmdf aW5pdChzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiB7Ci0Jc3RydWN0IGludGVsX2Vu Z2luZV9jcyAqZW5naW5lID0gbG9naWNhbF9yaW5nX3NldHVwKGRldiwgUkNTKTsKKwlzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBlbmdpbmUtPmk5MTU7CiAJaW50IHJldDsKIAot CWlmIChIQVNfTDNfRFBGKGRldikpCisJaWYgKEhBU19MM19EUEYoZGV2X3ByaXYpKQogCQllbmdp bmUtPmlycV9rZWVwX21hc2sgfD0gR1RfUkVOREVSX0wzX1BBUklUWV9FUlJPUl9JTlRFUlJVUFQ7 CiAKIAkvKiBPdmVycmlkZSBzb21lIGZvciByZW5kZXIgcmluZy4gKi8KLQlpZiAoSU5URUxfSU5G TyhkZXYpLT5nZW4gPj0gOSkKKwlpZiAoSU5URUxfR0VOKGRldl9wcml2KSA+PSA5KQogCQllbmdp bmUtPmluaXRfaHcgPSBnZW45X2luaXRfcmVuZGVyX3Jpbmc7CiAJZWxzZQogCQllbmdpbmUtPmlu aXRfaHcgPSBnZW44X2luaXRfcmVuZGVyX3Jpbmc7CkBAIC0yMTg5LDg3ICsyMTk3LDQ0IEBAIHN0 YXRpYyBpbnQgbG9naWNhbF9yZW5kZXJfcmluZ19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp CiAJcmV0dXJuIHJldDsKIH0KIAotc3RhdGljIGludCBsb2dpY2FsX2JzZF9yaW5nX2luaXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKLXsKLQlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUg PSBsb2dpY2FsX3Jpbmdfc2V0dXAoZGV2LCBWQ1MpOwotCi0JcmV0dXJuIGxvZ2ljYWxfcmluZ19p bml0KGVuZ2luZSk7Ci19Ci0KLXN0YXRpYyBpbnQgbG9naWNhbF9ic2QyX3JpbmdfaW5pdChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQotewotCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSA9 IGxvZ2ljYWxfcmluZ19zZXR1cChkZXYsIFZDUzIpOwotCi0JcmV0dXJuIGxvZ2ljYWxfcmluZ19p bml0KGVuZ2luZSk7Ci19Ci0KLXN0YXRpYyBpbnQgbG9naWNhbF9ibHRfcmluZ19pbml0KHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpCi17Ci0Jc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lID0g bG9naWNhbF9yaW5nX3NldHVwKGRldiwgQkNTKTsKLQotCXJldHVybiBsb2dpY2FsX3JpbmdfaW5p dChlbmdpbmUpOwotfQotCi1zdGF0aWMgaW50IGxvZ2ljYWxfdmVib3hfcmluZ19pbml0KHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpCi17Ci0Jc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lID0g bG9naWNhbF9yaW5nX3NldHVwKGRldiwgVkVDUyk7Ci0KLQlyZXR1cm4gbG9naWNhbF9yaW5nX2lu aXQoZW5naW5lKTsKLX0KLQogLyoqCiAgKiBpbnRlbF9sb2dpY2FsX3JpbmdzX2luaXQoKSAtIGFs bG9jYXRlLCBwb3B1bGF0ZSBhbmQgaW5pdCB0aGUgRW5naW5lIENvbW1hbmQgU3RyZWFtZXJzCiAg KiBAZGV2OiBEUk0gZGV2aWNlLgogICoKLSAqIFRoaXMgZnVuY3Rpb24gaW5pdHMgdGhlIGVuZ2lu ZXMgZm9yIGFuIEV4ZWNsaXN0cyBzdWJtaXNzaW9uIHN0eWxlICh0aGUgZXF1aXZhbGVudCBpbiB0 aGUKLSAqIGxlZ2FjeSByaW5nYnVmZmVyIHN1Ym1pc3Npb24gd29ybGQgd291bGQgYmUgaTkxNV9n ZW1faW5pdF9lbmdpbmVzKS4gSXQgZG9lcyBpdCBvbmx5IGZvcgotICogdGhvc2UgZW5naW5lcyB0 aGF0IGFyZSBwcmVzZW50IGluIHRoZSBoYXJkd2FyZS4KKyAqIFRoaXMgZnVuY3Rpb24gaW5pdHMg dGhlIGVuZ2luZXMgZm9yIGFuIEV4ZWNsaXN0cyBzdWJtaXNzaW9uIHN0eWxlICh0aGUKKyAqIGVx dWl2YWxlbnQgaW4gdGhlIGxlZ2FjeSByaW5nYnVmZmVyIHN1Ym1pc3Npb24gd29ybGQgd291bGQg YmUKKyAqIGk5MTVfZ2VtX2luaXRfZW5naW5lcykuIEl0IGRvZXMgaXQgb25seSBmb3IgdGhvc2Ug ZW5naW5lcyB0aGF0IGFyZSBwcmVzZW50IGluCisgKiB0aGUgaGFyZHdhcmUuCiAgKgogICogUmV0 dXJuOiBub24temVybyBpZiB0aGUgaW5pdGlhbGl6YXRpb24gZmFpbGVkLgogICovCiBpbnQgaW50 ZWxfbG9naWNhbF9yaW5nc19pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB7CiAJc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKwlzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICplbmdpbmU7CisJdW5zaWduZWQgaW50IGk7CiAJaW50IHJldDsKIAot CXJldCA9IGxvZ2ljYWxfcmVuZGVyX3JpbmdfaW5pdChkZXYpOwotCWlmIChyZXQpCi0JCXJldHVy biByZXQ7CisJQlVJTERfQlVHX09OKCgxIDw8IFJDUykgIT0gUkVOREVSX1JJTkcpOworCUJVSUxE X0JVR19PTigoMSA8PCBCQ1MpICE9IEJMVF9SSU5HKTsKKwlCVUlMRF9CVUdfT04oKDEgPDwgVkNT KSAhPSBCU0RfUklORyk7CisJQlVJTERfQlVHX09OKCgxIDw8IFZDUzIpICE9IEJTRDJfUklORyk7 CisJQlVJTERfQlVHX09OKCgxIDw8IFZFQ1MpICE9IFZFQk9YX1JJTkcpOwogCi0JaWYgKEhBU19C U0QoZGV2KSkgewotCQlyZXQgPSBsb2dpY2FsX2JzZF9yaW5nX2luaXQoZGV2KTsKLQkJaWYgKHJl dCkKLQkJCWdvdG8gY2xlYW51cF9yZW5kZXJfcmluZzsKLQl9Ci0KLQlpZiAoSEFTX0JMVChkZXYp KSB7Ci0JCXJldCA9IGxvZ2ljYWxfYmx0X3JpbmdfaW5pdChkZXYpOwotCQlpZiAocmV0KQotCQkJ Z290byBjbGVhbnVwX2JzZF9yaW5nOwotCX0KLQotCWlmIChIQVNfVkVCT1goZGV2KSkgewotCQly ZXQgPSBsb2dpY2FsX3ZlYm94X3JpbmdfaW5pdChkZXYpOwotCQlpZiAocmV0KQotCQkJZ290byBj bGVhbnVwX2JsdF9yaW5nOwotCX0KLQotCWlmIChIQVNfQlNEMihkZXYpKSB7Ci0JCXJldCA9IGxv Z2ljYWxfYnNkMl9yaW5nX2luaXQoZGV2KTsKLQkJaWYgKHJldCkKLQkJCWdvdG8gY2xlYW51cF92 ZWJveF9yaW5nOworCWZvciAoaSA9IDA7IGkgPCBJOTE1X05VTV9FTkdJTkVTOyBpKyspIHsKKwkJ aWYgKGRldl9wcml2LT5pbmZvLnJpbmdfbWFzayAmICgxIDw8IGkpKSB7CisJCQllbmdpbmUgPSBs b2dpY2FsX3Jpbmdfc2V0dXAoZGV2X3ByaXYsIGkpOworCQkJcmV0ID0gbG9naWNhbF9yaW5nc1tp XS5pbml0KGVuZ2luZSk7CisJCQlpZiAocmV0KQorCQkJCWdvdG8gY2xlYW51cDsKKwkJfQogCX0K IAogCXJldHVybiAwOwogCi1jbGVhbnVwX3ZlYm94X3Jpbmc6Ci0JaW50ZWxfbG9naWNhbF9yaW5n X2NsZWFudXAoJmRldl9wcml2LT5lbmdpbmVbVkVDU10pOwotY2xlYW51cF9ibHRfcmluZzoKLQlp bnRlbF9sb2dpY2FsX3JpbmdfY2xlYW51cCgmZGV2X3ByaXYtPmVuZ2luZVtCQ1NdKTsKLWNsZWFu dXBfYnNkX3Jpbmc6Ci0JaW50ZWxfbG9naWNhbF9yaW5nX2NsZWFudXAoJmRldl9wcml2LT5lbmdp bmVbVkNTXSk7Ci1jbGVhbnVwX3JlbmRlcl9yaW5nOgotCWludGVsX2xvZ2ljYWxfcmluZ19jbGVh bnVwKCZkZXZfcHJpdi0+ZW5naW5lW1JDU10pOworY2xlYW51cDoKKwlmb3IgKGkgPSAwOyBpIDwg STkxNV9OVU1fRU5HSU5FUzsgaSsrKQorCQlpbnRlbF9sb2dpY2FsX3JpbmdfY2xlYW51cCgmZGV2 X3ByaXYtPmVuZ2luZVtpXSk7CiAKIAlyZXR1cm4gcmV0OwogfQotLSAKMS45LjEKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=