From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: [PATCH v3 17/19] drm/i915: Split out load time interface registration Date: Wed, 16 Mar 2016 13:39:06 +0200 Message-ID: <1458128348-15730-18-git-send-email-imre.deak@intel.com> References: <1458128348-15730-1-git-send-email-imre.deak@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 ESMTP id B7FC16E8CA for ; Wed, 16 Mar 2016 11:39:30 +0000 (UTC) In-Reply-To: <1458128348-15730-1-git-send-email-imre.deak@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 Cc: Daniel Vetter List-Id: intel-gfx@lists.freedesktop.org QWNjb3JkaW5nIHRvIHRoZSBuZXcgaW5pdCBwaGFzZXMgc2NoZW1lIHdlIHNob3VsZCByZWdpc3Rl ciB0aGUgZGV2aWNlCm1ha2luZyBpdCBhdmFpbGFibGUgdmlhIHNvbWUga2VybmVsIGludGVybmFs IG9yIHVzZXIgc3BhY2UgaW50ZXJmYWNlIGFzCnRoZSBsYXN0IHN0ZXAgaW4gdGhlIGluaXQgc2Vx dWVuY2UsIHNvIG1vdmUgdGhlIGNvcnJlc3BvbmRpbmcgY29kZSB0byBhCnNlcGFyYXRlIGZ1bmN0 aW9uLgoKQWxzbyBhZGQgYSBUT0RPIGNvbW1lbnQgYWJvdXQgY29kZSB0aGF0IHN0aWxsIG5lZWRz IHRvIGJlIG1vdmVkIGFyb3VuZAp0byBvbmUgb2YgdGhlIGluaXQgcGhhc2VzIGZ1bmN0aW9ucyBk ZXBlbmRpbmcgb24gd2hhdCB0aGUgcm9sZSBhbmQgZWZmZWN0Cm9mIHRoYXQgY29kZSBpcy4KCk5v IGZ1bmN0aW9uYWwgY2hhbmdlLCBleGNlcHQgZm9yIHRoZSByZW9yZGVyaW5nIG9mIHRoZSB1bmxv YWQgdGltZQp1bnJlZ2lzdHJhdGlvbiBzdGVwcyBvZiBzeXNmcyB3cnQuIGFjcGkgYW5kIG9wcmVn aW9uLgoKU3VnZ2VzdGVkIGJ5IENocmlzLgoKdjM6Ci0gcmVuYW1lIGk5MTVfZHJpdmVyX2luaXRf cmVnaXN0ZXIgdG8gaTkxNV9kcml2ZXJfaW5pdF9mcmFtZXdvcmtzCiAgKENocmlzKQotIHJlbmFt ZSBpOTE1X2RyaXZlcl9pbml0X2ZyYW1ld29ya3MgdG8gaTkxNV9kcml2ZXJfcmVnaXN0ZXIgKERh bmllbCkKCkNDOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ0M6IERh bmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+ClNpZ25lZC1vZmYtYnk6IEltcmUg RGVhayA8aW1yZS5kZWFrQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2RtYS5jIHwgODMgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KIDEg ZmlsZSBjaGFuZ2VkLCA1NCBpbnNlcnRpb25zKCspLCAyOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kbWEuYwppbmRleCBhYWYxYjE3Li5hNTEyMWNkIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf ZG1hLmMKQEAgLTEyMDksNiArMTIwOSw1MyBAQCBzdGF0aWMgdm9pZCBpOTE1X2RyaXZlcl9jbGVh bnVwX2h3KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIH0KIAogLyoqCisgKiBp OTE1X2RyaXZlcl9yZWdpc3RlciAtIHJlZ2lzdGVyIHRoZSBkcml2ZXIgd2l0aCB0aGUgcmVzdCBv ZiB0aGUgc3lzdGVtCisgKiBAZGV2X3ByaXY6IGRldmljZSBwcml2YXRlCisgKgorICogUGVyZm9y bSBhbnkgc3RlcHMgbmVjZXNzYXJ5IHRvIG1ha2UgdGhlIGRyaXZlciBhdmFpbGFibGUgdmlhIGtl cm5lbAorICogaW50ZXJuYWwgb3IgdXNlcnNwYWNlIGludGVyZmFjZXMuCisgKi8KK3N0YXRpYyB2 b2lkIGk5MTVfZHJpdmVyX3JlZ2lzdGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp dikKK3sKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2X3ByaXYtPmRldjsKKworCWk5MTVf Z2VtX3Nocmlua2VyX2luaXQoZGV2X3ByaXYpOworCS8qCisJICogTm90aWZ5IGEgdmFsaWQgc3Vy ZmFjZSBhZnRlciBtb2Rlc2V0dGluZywKKwkgKiB3aGVuIHJ1bm5pbmcgaW5zaWRlIGEgVk0uCisJ ICovCisJaWYgKGludGVsX3ZncHVfYWN0aXZlKGRldikpCisJCUk5MTVfV1JJVEUodmd0aWZfcmVn KGRpc3BsYXlfcmVhZHkpLCBWR1RfRFJWX0RJU1BMQVlfUkVBRFkpOworCisJaTkxNV9zZXR1cF9z eXNmcyhkZXYpOworCisJaWYgKElOVEVMX0lORk8oZGV2X3ByaXYpLT5udW1fcGlwZXMpIHsKKwkJ LyogTXVzdCBiZSBkb25lIGFmdGVyIHByb2Jpbmcgb3V0cHV0cyAqLworCQlpbnRlbF9vcHJlZ2lv bl9pbml0KGRldik7CisJCWFjcGlfdmlkZW9fcmVnaXN0ZXIoKTsKKwl9CisKKwlpZiAoSVNfR0VO NShkZXZfcHJpdikpCisJCWludGVsX2dwdV9pcHNfaW5pdChkZXZfcHJpdik7CisKKwlpOTE1X2F1 ZGlvX2NvbXBvbmVudF9pbml0KGRldl9wcml2KTsKK30KKworLyoqCisgKiBpOTE1X2RyaXZlcl91 bnJlZ2lzdGVyIC0gY2xlYW51cCB0aGUgcmVnaXN0cmF0aW9uIGRvbmUgaW4gaTkxNV9kcml2ZXJf cmVnaXNlcigpCisgKiBAZGV2X3ByaXY6IGRldmljZSBwcml2YXRlCisgKi8KK3N0YXRpYyB2b2lk IGk5MTVfZHJpdmVyX3VucmVnaXN0ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KQoreworCWk5MTVfYXVkaW9fY29tcG9uZW50X2NsZWFudXAoZGV2X3ByaXYpOworCWludGVsX2dw dV9pcHNfdGVhcmRvd24oKTsKKwlhY3BpX3ZpZGVvX3VucmVnaXN0ZXIoKTsKKwlpbnRlbF9vcHJl Z2lvbl9maW5pKGRldl9wcml2LT5kZXYpOworCWk5MTVfdGVhcmRvd25fc3lzZnMoZGV2X3ByaXYt PmRldik7CisJaTkxNV9nZW1fc2hyaW5rZXJfY2xlYW51cChkZXZfcHJpdik7Cit9CisKKy8qKgog ICogaTkxNV9kcml2ZXJfbG9hZCAtIHNldHVwIGNoaXAgYW5kIGNyZWF0ZSBhbiBpbml0aWFsIGNv bmZpZwogICogQGRldjogRFJNIGRldmljZQogICogQGZsYWdzOiBzdGFydHVwIGZsYWdzCkBAIC0x MjQ2LDYgKzEyOTMsMTEgQEAgaW50IGk5MTVfZHJpdmVyX2xvYWQoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwgdW5zaWduZWQgbG9uZyBmbGFncykKIAlpZiAocmV0IDwgMCkKIAkJZ290byBvdXRfY2xl YW51cF9tbWlvOwogCisJLyoKKwkgKiBUT0RPOiBtb3ZlIHRoZSB2YmxhbmsgaW5pdCBhbmQgcGFy dHMgb2YgbW9kZXNldCBpbml0IHN0ZXBzIGludG8gb25lCisJICogb2YgdGhlIGk5MTVfZHJpdmVy X2luaXRfL2k5MTVfZHJpdmVyX3JlZ2lzdGVyIGZ1bmN0aW9ucyBhY2NvcmRpbmcKKwkgKiB0byB0 aGUgcm9sZS9lZmZlY3Qgb2YgdGhlIGdpdmVuIGluaXQgc3RlcC4KKwkgKi8KIAlpZiAoSU5URUxf SU5GTyhkZXYpLT5udW1fcGlwZXMpIHsKIAkJcmV0ID0gZHJtX3ZibGFua19pbml0KGRldiwgSU5U RUxfSU5GTyhkZXYpLT5udW1fcGlwZXMpOwogCQlpZiAocmV0KQpAQCAtMTI1OCwyNiArMTMxMCw3 IEBAIGludCBpOTE1X2RyaXZlcl9sb2FkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVuc2lnbmVk IGxvbmcgZmxhZ3MpCiAJCWdvdG8gb3V0X3Bvd2VyX3dlbGw7CiAJfQogCi0JaTkxNV9nZW1fc2hy aW5rZXJfaW5pdChkZXZfcHJpdik7Ci0JLyoKLQkgKiBOb3RpZnkgYSB2YWxpZCBzdXJmYWNlIGFm dGVyIG1vZGVzZXR0aW5nLAotCSAqIHdoZW4gcnVubmluZyBpbnNpZGUgYSBWTS4KLQkgKi8KLQlp ZiAoaW50ZWxfdmdwdV9hY3RpdmUoZGV2KSkKLQkJSTkxNV9XUklURSh2Z3RpZl9yZWcoZGlzcGxh eV9yZWFkeSksIFZHVF9EUlZfRElTUExBWV9SRUFEWSk7Ci0KLQlpOTE1X3NldHVwX3N5c2ZzKGRl dik7Ci0KLQlpZiAoSU5URUxfSU5GTyhkZXYpLT5udW1fcGlwZXMpIHsKLQkJLyogTXVzdCBiZSBk b25lIGFmdGVyIHByb2Jpbmcgb3V0cHV0cyAqLwotCQlpbnRlbF9vcHJlZ2lvbl9pbml0KGRldik7 Ci0JCWFjcGlfdmlkZW9fcmVnaXN0ZXIoKTsKLQl9Ci0KLQlpZiAoSVNfR0VONShkZXYpKQotCQlp bnRlbF9ncHVfaXBzX2luaXQoZGV2X3ByaXYpOwotCi0JaTkxNV9hdWRpb19jb21wb25lbnRfaW5p dChkZXZfcHJpdik7CisJaTkxNV9kcml2ZXJfcmVnaXN0ZXIoZGV2X3ByaXYpOwogCiAJaW50ZWxf cnVudGltZV9wbV9lbmFibGUoZGV2X3ByaXYpOwogCkBAIC0xMzE2LDE1ICsxMzQ5LDcgQEAgaW50 IGk5MTVfZHJpdmVyX3VubG9hZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCiAJaW50ZWxfZGlz cGxheV9wb3dlcl9nZXQoZGV2X3ByaXYsIFBPV0VSX0RPTUFJTl9JTklUKTsKIAotCWk5MTVfYXVk aW9fY29tcG9uZW50X2NsZWFudXAoZGV2X3ByaXYpOwotCi0JaW50ZWxfZ3B1X2lwc190ZWFyZG93 bigpOwotCi0JaTkxNV90ZWFyZG93bl9zeXNmcyhkZXYpOwotCi0JYWNwaV92aWRlb191bnJlZ2lz dGVyKCk7Ci0JaW50ZWxfb3ByZWdpb25fZmluaShkZXYpOwotCWk5MTVfZ2VtX3Nocmlua2VyX2Ns ZWFudXAoZGV2X3ByaXYpOworCWk5MTVfZHJpdmVyX3VucmVnaXN0ZXIoZGV2X3ByaXYpOwogCiAJ ZHJtX3ZibGFua19jbGVhbnVwKGRldik7CiAKLS0gCjIuNS4wCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK