From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 06/11] drm/i915: refactor VBT validation Date: Mon, 14 Dec 2015 15:41:41 +0200 Message-ID: <20151214134141.GI4437@intel.com> References: <068ea5809a2ebe1e79aef85bc91d05ef69041f1d.1450089383.git.jani.nikula@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 C92BE6E24D for ; Mon, 14 Dec 2015 05:41:44 -0800 (PST) Content-Disposition: inline In-Reply-To: <068ea5809a2ebe1e79aef85bc91d05ef69041f1d.1450089383.git.jani.nikula@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Jani Nikula Cc: Deepak M , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBEZWMgMTQsIDIwMTUgYXQgMTI6NTA6NTBQTSArMDIwMCwgSmFuaSBOaWt1bGEgd3Jv dGU6Cj4gTWFrZSB0aGUgdmFsaWRhdGlvbiBmdW5jdGlvbiBhIGJvb2xlYW4gb3BlcmF0aW5nIG9u IGEgYnVmZmVyIG9mIGdpdmVuCj4gc2l6ZSwgcmVtb3ZpbmcgdGhlIGV4dHJhIHBvaW50ZXIgZGFu Y2VzLgo+IAo+IE1vdmUgdGhlIE9wUmVnaW9uIGJhc2VkIFZCVCB2YWxpZGF0aW9uIHRvIGludGVs X29wcmVnaW9uX3NldHVwKCksIG9ubHkKPiBpbml0aWFsaXppbmcgb3ByZWdpb24tPnZidCBpZiBp dCdzIHZhbGlkLgo+IAo+IFNpZ25lZC1vZmYtYnk6IEphbmkgTmlrdWxhIDxqYW5pLm5pa3VsYUBp bnRlbC5jb20+Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICAg fCAgMSArCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYyAgICAgfCA2MyArKysr KysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9vcHJlZ2lvbi5jIHwgIDkgKysrLS0KPiAgMyBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRp b25zKCspLCAzMyBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBpbmRl eCBhMmJkNGM2YTg2YTEuLmVmMTVmMTcxMGI1MCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAo+IEBAIC0zMzU0LDYgKzMzNTQsNyBAQCBleHRlcm4gdm9pZCBpbnRlbF9pMmNfcmVzZXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldik7Cj4gIAo+ICAvKiBpbnRlbF9iaW9zLmMgKi8KPiAgaW50IGlu dGVsX2Jpb3NfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKPiArYm9vbCBpbnRlbF9iaW9z X2lzX3ZhbGlkX3ZidChjb25zdCB2b2lkICpidWYsIHNpemVfdCBzaXplKTsKPiAgCj4gIC8qIGlu dGVsX29wcmVnaW9uLmMgKi8KPiAgI2lmZGVmIENPTkZJR19BQ1BJCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Jpb3MuYwo+IGluZGV4IGYyYjc5YjdkMTJiOC4uMDA3YjJiNzU5NjAwIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo+IEBAIC0xMjIxLDM3ICsxMjIxLDQwIEBAIHN0YXRpYyBj b25zdCBzdHJ1Y3QgYmRiX2hlYWRlciAqZ2V0X2JkYl9oZWFkZXIoY29uc3Qgc3RydWN0IHZidF9o ZWFkZXIgKnZidCkKPiAgCXJldHVybiBfdmJ0ICsgdmJ0LT5iZGJfb2Zmc2V0Owo+ICB9Cj4gIAo+ IC1zdGF0aWMgY29uc3Qgc3RydWN0IHZidF9oZWFkZXIgKnZhbGlkYXRlX3ZidChjb25zdCB2b2lk ICpiYXNlLAo+IC0JCQkJCSAgICAgc2l6ZV90IHNpemUsCj4gLQkJCQkJICAgICBjb25zdCB2b2lk ICpfdmJ0KQo+ICsvKioKPiArICogaW50ZWxfYmlvc19pc192YWxpZF92YnQgLSBkb2VzIHRoZSBn aXZlbiBidWZmZXIgY29udGFpbiBhIHZhbGlkIFZCVAo+ICsgKiBAYnVmOglwb2ludGVyIHRvIGEg YnVmZmVyIHRvIHZhbGlkYXRlCj4gKyAqIEBzaXplOglzaXplIG9mIHRoZSBidWZmZXIKPiArICoK PiArICogUmV0dXJucyB0cnVlIG9uIHZhbGlkIFZCVC4KPiArICovCj4gK2Jvb2wgaW50ZWxfYmlv c19pc192YWxpZF92YnQoY29uc3Qgdm9pZCAqYnVmLCBzaXplX3Qgc2l6ZSkKPiAgewo+IC0Jc2l6 ZV90IG9mZnNldCA9IF92YnQgLSBiYXNlOwo+IC0JY29uc3Qgc3RydWN0IHZidF9oZWFkZXIgKnZi dCA9IF92YnQ7Cj4gKwljb25zdCBzdHJ1Y3QgdmJ0X2hlYWRlciAqdmJ0ID0gYnVmOwo+ICAJY29u c3Qgc3RydWN0IGJkYl9oZWFkZXIgKmJkYjsKPiAgCj4gIAlpZiAoIXZidCkKPiAtCQlyZXR1cm4g TlVMTDsKPiArCQlyZXR1cm4gZmFsc2U7Cj4gIAo+IC0JaWYgKG9mZnNldCArIHNpemVvZihzdHJ1 Y3QgdmJ0X2hlYWRlcikgPiBzaXplKSB7Cj4gKwlpZiAoc2l6ZW9mKHN0cnVjdCB2YnRfaGVhZGVy KSA+IHNpemUpIHsKPiAgCQlEUk1fREVCVUdfRFJJVkVSKCJWQlQgaGVhZGVyIGluY29tcGxldGVc biIpOwo+IC0JCXJldHVybiBOVUxMOwo+ICsJCXJldHVybiBmYWxzZTsKPiAgCX0KPiAgCj4gIAlp ZiAobWVtY21wKHZidC0+c2lnbmF0dXJlLCAiJFZCVCIsIDQpKSB7Cj4gIAkJRFJNX0RFQlVHX0RS SVZFUigiVkJUIGludmFsaWQgc2lnbmF0dXJlXG4iKTsKPiAtCQlyZXR1cm4gTlVMTDsKPiArCQly ZXR1cm4gZmFsc2U7Cj4gIAl9Cj4gIAo+IC0Jb2Zmc2V0ICs9IHZidC0+YmRiX29mZnNldDsKPiAt CWlmIChvZmZzZXQgKyBzaXplb2Yoc3RydWN0IGJkYl9oZWFkZXIpID4gc2l6ZSkgewo+ICsJaWYg KHZidC0+YmRiX29mZnNldCArIHNpemVvZihzdHJ1Y3QgYmRiX2hlYWRlcikgPiBzaXplKSB7Cj4g IAkJRFJNX0RFQlVHX0RSSVZFUigiQkRCIGhlYWRlciBpbmNvbXBsZXRlXG4iKTsKPiAtCQlyZXR1 cm4gTlVMTDsKPiArCQlyZXR1cm4gZmFsc2U7Cj4gIAl9Cj4gIAo+ICAJYmRiID0gZ2V0X2JkYl9o ZWFkZXIodmJ0KTsKPiAtCWlmIChvZmZzZXQgKyBiZGItPmJkYl9zaXplID4gc2l6ZSkgewo+ICsJ aWYgKHZidC0+YmRiX29mZnNldCArIGJkYi0+YmRiX3NpemUgPiBzaXplKSB7Cj4gIAkJRFJNX0RF QlVHX0RSSVZFUigiQkRCIGluY29tcGxldGVcbiIpOwo+IC0JCXJldHVybiBOVUxMOwo+ICsJCXJl dHVybiBmYWxzZTsKPiAgCX0KPiAgCj4gIAlyZXR1cm4gdmJ0Owo+IEBAIC0xMjU5LDI2ICsxMjYy LDI3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgdmJ0X2hlYWRlciAqdmFsaWRhdGVfdmJ0KGNvbnN0 IHZvaWQgKmJhc2UsCj4gIAo+ICBzdGF0aWMgY29uc3Qgc3RydWN0IHZidF9oZWFkZXIgKmZpbmRf dmJ0KHZvaWQgX19pb21lbSAqYmlvcywgc2l6ZV90IHNpemUpCj4gIHsKPiAtCWNvbnN0IHN0cnVj dCB2YnRfaGVhZGVyICp2YnQgPSBOVUxMOwo+ICAJc2l6ZV90IGk7Cj4gIAo+ICAJLyogU2NvdXIg bWVtb3J5IGxvb2tpbmcgZm9yIHRoZSBWQlQgc2lnbmF0dXJlLiAqLwo+ICAJZm9yIChpID0gMDsg aSArIDQgPCBzaXplOyBpKyspIHsKPiAtCQlpZiAoaW9yZWFkMzIoYmlvcyArIGkpID09ICooKGNv bnN0IHUzMiAqKSAiJFZCVCIpKSB7Cj4gLQkJCS8qCj4gLQkJCSAqIFRoaXMgaXMgdGhlIG9uZSBw bGFjZSB3aGVyZSB3ZSBleHBsaWNpdGx5IGRpc2NhcmQgdGhlCj4gLQkJCSAqIGFkZHJlc3Mgc3Bh Y2UgKF9faW9tZW0pIG9mIHRoZSBCSU9TL1ZCVC4gRnJvbSBub3cgb24KPiAtCQkJICogZXZlcnl0 aGluZyBpcyBiYXNlZCBvbiAnYmFzZScsIGFuZCB0cmVhdGVkIGFzIHJlZ3VsYXIKPiAtCQkJICog bWVtb3J5Lgo+IC0JCQkgKi8KPiAtCQkJdm9pZCAqX2Jpb3MgPSAodm9pZCBfX2ZvcmNlICopIGJp b3M7Cj4gKwkJdm9pZCAqdmJ0Owo+ICAKPiAtCQkJdmJ0ID0gdmFsaWRhdGVfdmJ0KF9iaW9zLCBz aXplLCBfYmlvcyArIGkpOwo+IC0JCQlicmVhazsKPiAtCQl9Cj4gKwkJaWYgKGlvcmVhZDMyKGJp b3MgKyBpKSAhPSAqKChjb25zdCB1MzIgKikgIiRWQlQiKSkKPiArCQkJY29udGludWU7Cj4gKwo+ ICsJCS8qCj4gKwkJICogVGhpcyBpcyB0aGUgb25lIHBsYWNlIHdoZXJlIHdlIGV4cGxpY2l0bHkg ZGlzY2FyZCB0aGUgYWRkcmVzcwo+ICsJCSAqIHNwYWNlIChfX2lvbWVtKSBvZiB0aGUgQklPUy9W QlQuCj4gKwkJICovCj4gKwkJdmJ0ID0gKHZvaWQgX19mb3JjZSAqKSBiaW9zICsgaTsKPiArCQlp ZiAoaW50ZWxfYmlvc19pc192YWxpZF92YnQodmJ0LCBzaXplIC0gaSkpCj4gKwkJCXJldHVybiB2 YnQ7Cj4gKwo+ICsJCWJyZWFrOwo+ICAJfQo+ICAKPiAtCXJldHVybiB2YnQ7Cj4gKwlyZXR1cm4g TlVMTDsKPiAgfQo+ICAKPiAgLyoqCj4gQEAgLTEyOTUsNyArMTI5OSw3IEBAIGludGVsX2Jpb3Nf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICB7Cj4gIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ICAJc3RydWN0IHBjaV9kZXYgKnBk ZXYgPSBkZXYtPnBkZXY7Cj4gLQljb25zdCBzdHJ1Y3QgdmJ0X2hlYWRlciAqdmJ0Owo+ICsJY29u c3Qgc3RydWN0IHZidF9oZWFkZXIgKnZidCA9IGRldl9wcml2LT5vcHJlZ2lvbi52YnQ7Cj4gIAlj b25zdCBzdHJ1Y3QgYmRiX2hlYWRlciAqYmRiOwo+ICAJdTggX19pb21lbSAqYmlvcyA9IE5VTEw7 Cj4gIAo+IEBAIC0xMzA0LDkgKzEzMDgsNiBAQCBpbnRlbF9iaW9zX2luaXQoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKPiAgCj4gIAlpbml0X3ZidF9kZWZhdWx0cyhkZXZfcHJpdik7Cj4gIAo+IC0J LyogWFhYIFNob3VsZCB0aGlzIHZhbGlkYXRpb24gYmUgbW92ZWQgdG8gaW50ZWxfb3ByZWdpb24u Yz8gKi8KPiAtCXZidCA9IHZhbGlkYXRlX3ZidChkZXZfcHJpdi0+b3ByZWdpb24uaGVhZGVyLCBP UFJFR0lPTl9TSVpFLAo+IC0JCQkgICBkZXZfcHJpdi0+b3ByZWdpb24udmJ0KTsKPiAgCWlmICh2 YnQpIHsKPiAgCQlEUk1fREVCVUdfS01TKCJVc2luZyBWQlQgZnJvbSBBQ1BJIE9wUmVnaW9uOiAl MjBzXG4iLAo+ICAJCQkgICAgICB2YnQtPnNpZ25hdHVyZSk7CgpNYXliZSB0aGUgZGVidWcgbWVz c2FnZSBzaG91bGQgYmUgbW92ZWQgdG9vPyBJdCBsb29rcyBhIGJpdCBvdXQgb2YgcGxhY2UKYWZ0 ZXIgdGhlIHZhbGlkYXRpb24gZ2V0cyBtb3ZlZC4KCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX29wcmVnaW9uLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9v cHJlZ2lvbi5jCj4gaW5kZXggNWI5ZmM3OTBkMzAwLi45Zjk5MmU3YzYxODUgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfb3ByZWdpb24uYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX29wcmVnaW9uLmMKPiBAQCAtOTg2LDggKzk4NiwxMyBAQCBpbnQg aW50ZWxfb3ByZWdpb25fc2V0dXAoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAgCWlmIChtYm94 ZXMgJiBNQk9YX0FTTEVfRVhUKQo+ICAJCURSTV9ERUJVR19EUklWRVIoIkFTTEUgZXh0ZW5zaW9u IHN1cHBvcnRlZFxuIik7Cj4gIAo+IC0JaWYgKCFkbWlfY2hlY2tfc3lzdGVtKGludGVsX25vX29w cmVnaW9uX3ZidCkpCj4gLQkJb3ByZWdpb24tPnZidCA9IGJhc2UgKyBPUFJFR0lPTl9WQlRfT0ZG U0VUOwo+ICsJaWYgKCFkbWlfY2hlY2tfc3lzdGVtKGludGVsX25vX29wcmVnaW9uX3ZidCkpIHsK PiArCQl2b2lkICp2YnQgPSBiYXNlICsgT1BSRUdJT05fVkJUX09GRlNFVDsKPiArCQl1MzIgdmJ0 X3NpemUgPSBPUFJFR0lPTl9TSVpFIC0gT1BSRUdJT05fVkJUX09GRlNFVDsKPiArCj4gKwkJaWYg KGludGVsX2Jpb3NfaXNfdmFsaWRfdmJ0KHZidCwgdmJ0X3NpemUpKQo+ICsJCQlvcHJlZ2lvbi0+ dmJ0ID0gdmJ0Owo+ICsJfQo+ICAKPiAgCXJldHVybiAwOwo+ICAKPiAtLSAKPiAyLjEuNAo+IAo+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRw Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAK VmlsbGUgU3lyasOkbMOkCkludGVsIE9UQwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAo=