From mboxrd@z Thu Jan 1 00:00:00 1970 From: Imre Deak Subject: [PATCH v4 17/17] drm/i915: Split out load time interface registration Date: Mon, 14 Mar 2016 13:00:41 +0200 Message-ID: <1457953241-28785-1-git-send-email-imre.deak@intel.com> References: <1457728469-16443-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 mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id D82436E650 for ; Mon, 14 Mar 2016 11:00:43 +0000 (UTC) In-Reply-To: <1457728469-16443-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 cmVnaXN0ZXIgdG8gaTkxNV9kcml2ZXJfaW5pdF9mcmFtZXdvcmtzCiAgKENocmlzKQp2NDoKLSBy ZW5hbWUgaTkxNV9kcml2ZXJfaW5pdF9mcmFtZXdvcmtzIHRvIGk5MTVfZHJpdmVyX3JlZ2lzdGVy IChEYW5pZWwpCgpDQzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkND OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgpTaWduZWQtb2ZmLWJ5OiBJ bXJlIERlYWsgPGltcmUuZGVha0BpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kbWEuYyB8IDgzICsrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0t CiAxIGZpbGUgY2hhbmdlZCwgNTQgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZG1hLmMKaW5kZXggYWFmMWIxNy4uYTUxMjFjZCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2RtYS5jCkBAIC0xMjA5LDYgKzEyMDksNTMgQEAgc3RhdGljIHZvaWQgaTkxNV9kcml2ZXJf Y2xlYW51cF9odyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB9CiAKIC8qKgor ICogaTkxNV9kcml2ZXJfcmVnaXN0ZXIgLSByZWdpc3RlciB0aGUgZHJpdmVyIHdpdGggdGhlIHJl c3Qgb2YgdGhlIHN5c3RlbQorICogQGRldl9wcml2OiBkZXZpY2UgcHJpdmF0ZQorICoKKyAqIFBl cmZvcm0gYW55IHN0ZXBzIG5lY2Vzc2FyeSB0byBtYWtlIHRoZSBkcml2ZXIgYXZhaWxhYmxlIHZp YSBrZXJuZWwKKyAqIGludGVybmFsIG9yIHVzZXJzcGFjZSBpbnRlcmZhY2VzLgorICovCitzdGF0 aWMgdm9pZCBpOTE1X2RyaXZlcl9yZWdpc3RlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpCit7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGRldl9wcml2LT5kZXY7CisKKwlp OTE1X2dlbV9zaHJpbmtlcl9pbml0KGRldl9wcml2KTsKKwkvKgorCSAqIE5vdGlmeSBhIHZhbGlk IHN1cmZhY2UgYWZ0ZXIgbW9kZXNldHRpbmcsCisJICogd2hlbiBydW5uaW5nIGluc2lkZSBhIFZN LgorCSAqLworCWlmIChpbnRlbF92Z3B1X2FjdGl2ZShkZXYpKQorCQlJOTE1X1dSSVRFKHZndGlm X3JlZyhkaXNwbGF5X3JlYWR5KSwgVkdUX0RSVl9ESVNQTEFZX1JFQURZKTsKKworCWk5MTVfc2V0 dXBfc3lzZnMoZGV2KTsKKworCWlmIChJTlRFTF9JTkZPKGRldl9wcml2KS0+bnVtX3BpcGVzKSB7 CisJCS8qIE11c3QgYmUgZG9uZSBhZnRlciBwcm9iaW5nIG91dHB1dHMgKi8KKwkJaW50ZWxfb3By ZWdpb25faW5pdChkZXYpOworCQlhY3BpX3ZpZGVvX3JlZ2lzdGVyKCk7CisJfQorCisJaWYgKElT X0dFTjUoZGV2X3ByaXYpKQorCQlpbnRlbF9ncHVfaXBzX2luaXQoZGV2X3ByaXYpOworCisJaTkx NV9hdWRpb19jb21wb25lbnRfaW5pdChkZXZfcHJpdik7Cit9CisKKy8qKgorICogaTkxNV9kcml2 ZXJfdW5yZWdpc3RlciAtIGNsZWFudXAgdGhlIHJlZ2lzdHJhdGlvbiBkb25lIGluIGk5MTVfZHJp dmVyX3JlZ2lzZXIoKQorICogQGRldl9wcml2OiBkZXZpY2UgcHJpdmF0ZQorICovCitzdGF0aWMg dm9pZCBpOTE1X2RyaXZlcl91bnJlZ2lzdGVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdikKK3sKKwlpOTE1X2F1ZGlvX2NvbXBvbmVudF9jbGVhbnVwKGRldl9wcml2KTsKKwlpbnRl bF9ncHVfaXBzX3RlYXJkb3duKCk7CisJYWNwaV92aWRlb191bnJlZ2lzdGVyKCk7CisJaW50ZWxf b3ByZWdpb25fZmluaShkZXZfcHJpdi0+ZGV2KTsKKwlpOTE1X3RlYXJkb3duX3N5c2ZzKGRldl9w cml2LT5kZXYpOworCWk5MTVfZ2VtX3Nocmlua2VyX2NsZWFudXAoZGV2X3ByaXYpOworfQorCisv KioKICAqIGk5MTVfZHJpdmVyX2xvYWQgLSBzZXR1cCBjaGlwIGFuZCBjcmVhdGUgYW4gaW5pdGlh bCBjb25maWcKICAqIEBkZXY6IERSTSBkZXZpY2UKICAqIEBmbGFnczogc3RhcnR1cCBmbGFncwpA QCAtMTI0Niw2ICsxMjkzLDExIEBAIGludCBpOTE1X2RyaXZlcl9sb2FkKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHVuc2lnbmVkIGxvbmcgZmxhZ3MpCiAJaWYgKHJldCA8IDApCiAJCWdvdG8gb3V0 X2NsZWFudXBfbW1pbzsKIAorCS8qCisJICogVE9ETzogbW92ZSB0aGUgdmJsYW5rIGluaXQgYW5k IHBhcnRzIG9mIG1vZGVzZXQgaW5pdCBzdGVwcyBpbnRvIG9uZQorCSAqIG9mIHRoZSBpOTE1X2Ry aXZlcl9pbml0Xy9pOTE1X2RyaXZlcl9yZWdpc3RlciBmdW5jdGlvbnMgYWNjb3JkaW5nCisJICog dG8gdGhlIHJvbGUvZWZmZWN0IG9mIHRoZSBnaXZlbiBpbml0IHN0ZXAuCisJICovCiAJaWYgKElO VEVMX0lORk8oZGV2KS0+bnVtX3BpcGVzKSB7CiAJCXJldCA9IGRybV92YmxhbmtfaW5pdChkZXYs IElOVEVMX0lORk8oZGV2KS0+bnVtX3BpcGVzKTsKIAkJaWYgKHJldCkKQEAgLTEyNTgsMjYgKzEz MTAsNyBAQCBpbnQgaTkxNV9kcml2ZXJfbG9hZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1bnNp Z25lZCBsb25nIGZsYWdzKQogCQlnb3RvIG91dF9wb3dlcl93ZWxsOwogCX0KIAotCWk5MTVfZ2Vt X3Nocmlua2VyX2luaXQoZGV2X3ByaXYpOwotCS8qCi0JICogTm90aWZ5IGEgdmFsaWQgc3VyZmFj ZSBhZnRlciBtb2Rlc2V0dGluZywKLQkgKiB3aGVuIHJ1bm5pbmcgaW5zaWRlIGEgVk0uCi0JICov Ci0JaWYgKGludGVsX3ZncHVfYWN0aXZlKGRldikpCi0JCUk5MTVfV1JJVEUodmd0aWZfcmVnKGRp c3BsYXlfcmVhZHkpLCBWR1RfRFJWX0RJU1BMQVlfUkVBRFkpOwotCi0JaTkxNV9zZXR1cF9zeXNm cyhkZXYpOwotCi0JaWYgKElOVEVMX0lORk8oZGV2KS0+bnVtX3BpcGVzKSB7Ci0JCS8qIE11c3Qg YmUgZG9uZSBhZnRlciBwcm9iaW5nIG91dHB1dHMgKi8KLQkJaW50ZWxfb3ByZWdpb25faW5pdChk ZXYpOwotCQlhY3BpX3ZpZGVvX3JlZ2lzdGVyKCk7Ci0JfQotCi0JaWYgKElTX0dFTjUoZGV2KSkK LQkJaW50ZWxfZ3B1X2lwc19pbml0KGRldl9wcml2KTsKLQotCWk5MTVfYXVkaW9fY29tcG9uZW50 X2luaXQoZGV2X3ByaXYpOworCWk5MTVfZHJpdmVyX3JlZ2lzdGVyKGRldl9wcml2KTsKIAogCWlu dGVsX3J1bnRpbWVfcG1fZW5hYmxlKGRldl9wcml2KTsKIApAQCAtMTMxNiwxNSArMTM0OSw3IEBA IGludCBpOTE1X2RyaXZlcl91bmxvYWQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAogCWludGVs X2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2LCBQT1dFUl9ET01BSU5fSU5JVCk7CiAKLQlpOTE1 X2F1ZGlvX2NvbXBvbmVudF9jbGVhbnVwKGRldl9wcml2KTsKLQotCWludGVsX2dwdV9pcHNfdGVh cmRvd24oKTsKLQotCWk5MTVfdGVhcmRvd25fc3lzZnMoZGV2KTsKLQotCWFjcGlfdmlkZW9fdW5y ZWdpc3RlcigpOwotCWludGVsX29wcmVnaW9uX2ZpbmkoZGV2KTsKLQlpOTE1X2dlbV9zaHJpbmtl cl9jbGVhbnVwKGRldl9wcml2KTsKKwlpOTE1X2RyaXZlcl91bnJlZ2lzdGVyKGRldl9wcml2KTsK IAogCWRybV92YmxhbmtfY2xlYW51cChkZXYpOwogCi0tIAoyLjUuMAoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJ bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==