From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 1/3] drm/i915: Refactor code to select the DDI buf translation table Date: Fri, 24 Feb 2017 14:49:54 +0200 Message-ID: <20170224124954.GA31595@intel.com> References: <20170223173507.17600-1-ville.syrjala@linux.intel.com> <20170223174715.f67nqug52n7gatfc@boom> 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 ESMTPS id 40EA36E16B for ; Fri, 24 Feb 2017 12:49:57 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20170223174715.f67nqug52n7gatfc@boom> 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 T24gVGh1LCBGZWIgMjMsIDIwMTcgYXQgMDc6NDk6MjFQTSArMDIwMCwgRGF2aWQgV2VpbmVoYWxs IHdyb3RlOgo+IE9uIFRodSwgRmViIDIzLCAyMDE3IGF0IDA3OjM1OjA1UE0gKzAyMDAsIHZpbGxl LnN5cmphbGFAbGludXguaW50ZWwuY29tIHdyb3RlOgo+ID4gRnJvbTogVmlsbGUgU3lyasOkbMOk IDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KPiA+IAo+ID4gU3BsaXQgdGhlIGNvZGUg dG8gc2VsZWN0IHRoZSBjb3JyZWN0IHRyYXNuc2xhdGlvbiB0YWJsZSBpbnRvICBEUCwKPiAKPiB0 cmFuc2xhdGlvbnMsIHN1cGVyZmx1b3VzIHNwYWNlIGJlZm9yZSBEUAoKRml4ZWQuIEFuZCBzZXJp ZXMgcHVzaGVkIHRvIGRpbnEuIFRoYW5rcyBmb3IgdGhlIHJldmlldy4KCj4gCj4gPiBlRFAgYW5k IEZESSBzcGVjaWZpYyBoZWxwZXJzLiBUaGlzIHJlZHVjZXMgdGhlIGNsdXR0ZXIgaW4KPiA+IGlu dGVsX3ByZXBhcmVfZHBfZGRpX2J1ZmZlcnMoKSwgYW5kIHdlJ2xsIGhhdmUgb3RoZXIgdXNlcyBm b3Igc29tZQo+ID4gb2YgdGhlc2UgbmV3IGhlbHBlciBmdW5jdGlvbnMgbGF0ZXIgb24uCj4gPiAK PiA+IFNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5p bnRlbC5jb20+Cj4gCj4gUmV2aWV3ZWQtYnk6IERhdmlkIFdlaW5laGFsbCA8ZGF2aWQud2VpbmVo YWxsQGxpbnV4LmludGVsLmNvbT4KPiAKPiA+IC0tLQo+ID4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2RkaS5jIHwgMTI2ICsrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCA3MyBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMoLSkK PiA+IAo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGRpLmMKPiA+IGluZGV4IGNkNmZlZGQyMjlhMC4u NWU0YjAxNzI4MTBkIDEwMDY0NAo+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZGRpLmMKPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2RkaS5jCj4gPiBAQCAt NDY4LDYgKzQ2OCw1OSBAQCBzdGF0aWMgaW50IGludGVsX2RkaV9oZG1pX2xldmVsKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgZW51bSBwb3J0IHBvcgo+ID4gIAlyZXR1cm4gaGRt aV9sZXZlbDsKPiA+ICB9Cj4gPiAgCj4gPiArc3RhdGljIGNvbnN0IHN0cnVjdCBkZGlfYnVmX3Ry YW5zICoKPiA+ICtpbnRlbF9kZGlfZ2V0X2J1Zl90cmFuc19kcChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCj4gPiArCQkJICAgaW50ICpuX2VudHJpZXMpCj4gPiArewo+ID4gKwlp ZiAoSVNfS0FCWUxBS0UoZGV2X3ByaXYpKSB7Cj4gPiArCQlyZXR1cm4ga2JsX2dldF9idWZfdHJh bnNfZHAoZGV2X3ByaXYsIG5fZW50cmllcyk7Cj4gPiArCX0gZWxzZSBpZiAoSVNfU0tZTEFLRShk ZXZfcHJpdikpIHsKPiA+ICsJCXJldHVybiBza2xfZ2V0X2J1Zl90cmFuc19kcChkZXZfcHJpdiwg bl9lbnRyaWVzKTsKPiA+ICsJfSBlbHNlIGlmIChJU19CUk9BRFdFTEwoZGV2X3ByaXYpKSB7Cj4g PiArCQkqbl9lbnRyaWVzID0gQVJSQVlfU0laRShiZHdfZGRpX3RyYW5zbGF0aW9uc19kcCk7Cj4g PiArCQlyZXR1cm4gIGJkd19kZGlfdHJhbnNsYXRpb25zX2RwOwo+ID4gKwl9IGVsc2UgaWYgKElT X0hBU1dFTEwoZGV2X3ByaXYpKSB7Cj4gPiArCQkqbl9lbnRyaWVzID0gQVJSQVlfU0laRShoc3df ZGRpX3RyYW5zbGF0aW9uc19kcCk7Cj4gPiArCQlyZXR1cm4gaHN3X2RkaV90cmFuc2xhdGlvbnNf ZHA7Cj4gPiArCX0KPiA+ICsKPiA+ICsJKm5fZW50cmllcyA9IDA7Cj4gPiArCXJldHVybiBOVUxM Owo+ID4gK30KPiA+ICsKPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGRkaV9idWZfdHJhbnMgKgo+ ID4gK2ludGVsX2RkaV9nZXRfYnVmX3RyYW5zX2VkcChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCj4gPiArCQkJICAgIGludCAqbl9lbnRyaWVzKQo+ID4gK3sKPiA+ICsJaWYgKElT X0tBQllMQUtFKGRldl9wcml2KSB8fCBJU19TS1lMQUtFKGRldl9wcml2KSkgewo+ID4gKwkJcmV0 dXJuIHNrbF9nZXRfYnVmX3RyYW5zX2VkcChkZXZfcHJpdiwgbl9lbnRyaWVzKTsKPiA+ICsJfSBl bHNlIGlmIChJU19CUk9BRFdFTEwoZGV2X3ByaXYpKSB7Cj4gPiArCQlyZXR1cm4gYmR3X2dldF9i dWZfdHJhbnNfZWRwKGRldl9wcml2LCBuX2VudHJpZXMpOwo+ID4gKwl9IGVsc2UgaWYgKElTX0hB U1dFTEwoZGV2X3ByaXYpKSB7Cj4gPiArCQkqbl9lbnRyaWVzID0gQVJSQVlfU0laRShoc3dfZGRp X3RyYW5zbGF0aW9uc19kcCk7Cj4gPiArCQlyZXR1cm4gaHN3X2RkaV90cmFuc2xhdGlvbnNfZHA7 Cj4gPiArCX0KPiA+ICsKPiA+ICsJKm5fZW50cmllcyA9IDA7Cj4gPiArCXJldHVybiBOVUxMOwo+ ID4gK30KPiA+ICsKPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGRkaV9idWZfdHJhbnMgKgo+ID4g K2ludGVsX2RkaV9nZXRfYnVmX3RyYW5zX2ZkaShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYsCj4gPiArCQkJICAgIGludCAqbl9lbnRyaWVzKQo+ID4gK3sKPiA+ICsJaWYgKElTX0JS T0FEV0VMTChkZXZfcHJpdikpIHsKPiA+ICsJCSpuX2VudHJpZXMgPSBBUlJBWV9TSVpFKGhzd19k ZGlfdHJhbnNsYXRpb25zX2ZkaSk7Cj4gPiArCQlyZXR1cm4gaHN3X2RkaV90cmFuc2xhdGlvbnNf ZmRpOwo+ID4gKwl9IGVsc2UgaWYgKElTX0hBU1dFTEwoZGV2X3ByaXYpKSB7Cj4gPiArCQkqbl9l bnRyaWVzID0gQVJSQVlfU0laRShoc3dfZGRpX3RyYW5zbGF0aW9uc19mZGkpOwo+ID4gKwkJcmV0 dXJuIGhzd19kZGlfdHJhbnNsYXRpb25zX2ZkaTsKPiA+ICsJfQo+ID4gKwo+ID4gKwkqbl9lbnRy aWVzID0gMDsKPiA+ICsJcmV0dXJuIE5VTEw7Cj4gPiArfQo+ID4gKwo+ID4gIC8qCj4gPiAgICog U3RhcnRpbmcgd2l0aCBIYXN3ZWxsLCBEREkgcG9ydCBidWZmZXJzIG11c3QgYmUgcHJvZ3JhbW1l ZCB3aXRoIGNvcnJlY3QKPiA+ICAgKiB2YWx1ZXMgaW4gYWR2YW5jZS4gVGhpcyBmdW5jdGlvbiBw cm9ncmFtcyB0aGUgY29ycmVjdCB2YWx1ZXMgZm9yCj4gPiBAQCAtNDc3LDQ1ICs1MzAsMjkgQEAg dm9pZCBpbnRlbF9wcmVwYXJlX2RwX2RkaV9idWZmZXJzKHN0cnVjdCBpbnRlbF9lbmNvZGVyICpl bmNvZGVyKQo+ID4gIHsKPiA+ICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0g dG9faTkxNShlbmNvZGVyLT5iYXNlLmRldik7Cj4gPiAgCXUzMiBpYm9vc3RfYml0ID0gMDsKPiA+ IC0JaW50IGksIG5fZHBfZW50cmllcywgbl9lZHBfZW50cmllcywgc2l6ZTsKPiA+ICsJaW50IGks IG5fZW50cmllczsKPiA+ICAJZW51bSBwb3J0IHBvcnQgPSBpbnRlbF9kZGlfZ2V0X2VuY29kZXJf cG9ydChlbmNvZGVyKTsKPiA+IC0JY29uc3Qgc3RydWN0IGRkaV9idWZfdHJhbnMgKmRkaV90cmFu c2xhdGlvbnNfZmRpOwo+ID4gLQljb25zdCBzdHJ1Y3QgZGRpX2J1Zl90cmFucyAqZGRpX3RyYW5z bGF0aW9uc19kcDsKPiA+IC0JY29uc3Qgc3RydWN0IGRkaV9idWZfdHJhbnMgKmRkaV90cmFuc2xh dGlvbnNfZWRwOwo+ID4gIAljb25zdCBzdHJ1Y3QgZGRpX2J1Zl90cmFucyAqZGRpX3RyYW5zbGF0 aW9uczsKPiA+ICAKPiA+ICAJaWYgKElTX0dFTjlfTFAoZGV2X3ByaXYpKQo+ID4gIAkJcmV0dXJu Owo+ID4gIAo+ID4gLQlpZiAoSVNfS0FCWUxBS0UoZGV2X3ByaXYpKSB7Cj4gPiAtCQlkZGlfdHJh bnNsYXRpb25zX2ZkaSA9IE5VTEw7Cj4gPiAtCQlkZGlfdHJhbnNsYXRpb25zX2RwID0KPiA+IC0J CQkJa2JsX2dldF9idWZfdHJhbnNfZHAoZGV2X3ByaXYsICZuX2RwX2VudHJpZXMpOwo+ID4gLQkJ ZGRpX3RyYW5zbGF0aW9uc19lZHAgPQo+ID4gLQkJCQlza2xfZ2V0X2J1Zl90cmFuc19lZHAoZGV2 X3ByaXYsICZuX2VkcF9lbnRyaWVzKTsKPiA+IC0JfSBlbHNlIGlmIChJU19TS1lMQUtFKGRldl9w cml2KSkgewo+ID4gLQkJZGRpX3RyYW5zbGF0aW9uc19mZGkgPSBOVUxMOwo+ID4gLQkJZGRpX3Ry YW5zbGF0aW9uc19kcCA9Cj4gPiAtCQkJCXNrbF9nZXRfYnVmX3RyYW5zX2RwKGRldl9wcml2LCAm bl9kcF9lbnRyaWVzKTsKPiA+IC0JCWRkaV90cmFuc2xhdGlvbnNfZWRwID0KPiA+IC0JCQkJc2ts X2dldF9idWZfdHJhbnNfZWRwKGRldl9wcml2LCAmbl9lZHBfZW50cmllcyk7Cj4gPiAtCX0gZWxz ZSBpZiAoSVNfQlJPQURXRUxMKGRldl9wcml2KSkgewo+ID4gLQkJZGRpX3RyYW5zbGF0aW9uc19m ZGkgPSBiZHdfZGRpX3RyYW5zbGF0aW9uc19mZGk7Cj4gPiAtCQlkZGlfdHJhbnNsYXRpb25zX2Rw ID0gYmR3X2RkaV90cmFuc2xhdGlvbnNfZHA7Cj4gPiAtCQlkZGlfdHJhbnNsYXRpb25zX2VkcCA9 IGJkd19nZXRfYnVmX3RyYW5zX2VkcChkZXZfcHJpdiwgJm5fZWRwX2VudHJpZXMpOwo+ID4gLQkJ bl9kcF9lbnRyaWVzID0gQVJSQVlfU0laRShiZHdfZGRpX3RyYW5zbGF0aW9uc19kcCk7Cj4gPiAt CX0gZWxzZSBpZiAoSVNfSEFTV0VMTChkZXZfcHJpdikpIHsKPiA+IC0JCWRkaV90cmFuc2xhdGlv bnNfZmRpID0gaHN3X2RkaV90cmFuc2xhdGlvbnNfZmRpOwo+ID4gLQkJZGRpX3RyYW5zbGF0aW9u c19kcCA9IGhzd19kZGlfdHJhbnNsYXRpb25zX2RwOwo+ID4gLQkJZGRpX3RyYW5zbGF0aW9uc19l ZHAgPSBoc3dfZGRpX3RyYW5zbGF0aW9uc19kcDsKPiA+IC0JCW5fZHBfZW50cmllcyA9IG5fZWRw X2VudHJpZXMgPSBBUlJBWV9TSVpFKGhzd19kZGlfdHJhbnNsYXRpb25zX2RwKTsKPiA+IC0JfSBl bHNlIHsKPiA+IC0JCVdBUk4oMSwgImRkaSB0cmFuc2xhdGlvbiB0YWJsZSBtaXNzaW5nXG4iKTsK PiA+IC0JCWRkaV90cmFuc2xhdGlvbnNfZWRwID0gYmR3X2RkaV90cmFuc2xhdGlvbnNfZHA7Cj4g PiAtCQlkZGlfdHJhbnNsYXRpb25zX2ZkaSA9IGJkd19kZGlfdHJhbnNsYXRpb25zX2ZkaTsKPiA+ IC0JCWRkaV90cmFuc2xhdGlvbnNfZHAgPSBiZHdfZGRpX3RyYW5zbGF0aW9uc19kcDsKPiA+IC0J CW5fZWRwX2VudHJpZXMgPSBBUlJBWV9TSVpFKGJkd19kZGlfdHJhbnNsYXRpb25zX2VkcCk7Cj4g PiAtCQluX2RwX2VudHJpZXMgPSBBUlJBWV9TSVpFKGJkd19kZGlfdHJhbnNsYXRpb25zX2RwKTsK PiA+ICsJc3dpdGNoIChlbmNvZGVyLT50eXBlKSB7Cj4gPiArCWNhc2UgSU5URUxfT1VUUFVUX0VE UDoKPiA+ICsJCWRkaV90cmFuc2xhdGlvbnMgPSBpbnRlbF9kZGlfZ2V0X2J1Zl90cmFuc19lZHAo ZGV2X3ByaXYsCj4gPiArCQkJCQkJCSAgICAgICAmbl9lbnRyaWVzKTsKPiA+ICsJCWJyZWFrOwo+ ID4gKwljYXNlIElOVEVMX09VVFBVVF9EUDoKPiA+ICsJCWRkaV90cmFuc2xhdGlvbnMgPSBpbnRl bF9kZGlfZ2V0X2J1Zl90cmFuc19kcChkZXZfcHJpdiwKPiA+ICsJCQkJCQkJICAgICAgJm5fZW50 cmllcyk7Cj4gPiArCQlicmVhazsKPiA+ICsJY2FzZSBJTlRFTF9PVVRQVVRfQU5BTE9HOgo+ID4g KwkJZGRpX3RyYW5zbGF0aW9ucyA9IGludGVsX2RkaV9nZXRfYnVmX3RyYW5zX2ZkaShkZXZfcHJp diwKPiA+ICsJCQkJCQkJICAgICAgICZuX2VudHJpZXMpOwo+ID4gKwkJYnJlYWs7Cj4gPiArCWRl ZmF1bHQ6Cj4gPiArCQlNSVNTSU5HX0NBU0UoZW5jb2Rlci0+dHlwZSk7Cj4gPiArCQlyZXR1cm47 Cj4gPiAgCX0KPiA+ICAKPiA+ICAJaWYgKElTX0dFTjlfQkMoZGV2X3ByaXYpKSB7Cj4gPiBAQCAt NTI1LDI4ICs1NjIsMTEgQEAgdm9pZCBpbnRlbF9wcmVwYXJlX2RwX2RkaV9idWZmZXJzKHN0cnVj dCBpbnRlbF9lbmNvZGVyICplbmNvZGVyKQo+ID4gIAo+ID4gIAkJaWYgKFdBUk5fT04oZW5jb2Rl ci0+dHlwZSA9PSBJTlRFTF9PVVRQVVRfRURQICYmCj4gPiAgCQkJICAgIHBvcnQgIT0gUE9SVF9B ICYmIHBvcnQgIT0gUE9SVF9FICYmCj4gPiAtCQkJICAgIG5fZWRwX2VudHJpZXMgPiA5KSkKPiA+ IC0JCQluX2VkcF9lbnRyaWVzID0gOTsKPiA+IC0JfQo+ID4gLQo+ID4gLQlzd2l0Y2ggKGVuY29k ZXItPnR5cGUpIHsKPiA+IC0JY2FzZSBJTlRFTF9PVVRQVVRfRURQOgo+ID4gLQkJZGRpX3RyYW5z bGF0aW9ucyA9IGRkaV90cmFuc2xhdGlvbnNfZWRwOwo+ID4gLQkJc2l6ZSA9IG5fZWRwX2VudHJp ZXM7Cj4gPiAtCQlicmVhazsKPiA+IC0JY2FzZSBJTlRFTF9PVVRQVVRfRFA6Cj4gPiAtCQlkZGlf dHJhbnNsYXRpb25zID0gZGRpX3RyYW5zbGF0aW9uc19kcDsKPiA+IC0JCXNpemUgPSBuX2RwX2Vu dHJpZXM7Cj4gPiAtCQlicmVhazsKPiA+IC0JY2FzZSBJTlRFTF9PVVRQVVRfQU5BTE9HOgo+ID4g LQkJZGRpX3RyYW5zbGF0aW9ucyA9IGRkaV90cmFuc2xhdGlvbnNfZmRpOwo+ID4gLQkJc2l6ZSA9 IG5fZHBfZW50cmllczsKPiA+IC0JCWJyZWFrOwo+ID4gLQlkZWZhdWx0Ogo+ID4gLQkJQlVHKCk7 Cj4gPiArCQkJICAgIG5fZW50cmllcyA+IDkpKQo+ID4gKwkJCW5fZW50cmllcyA9IDk7Cj4gPiAg CX0KPiA+ICAKPiA+IC0JZm9yIChpID0gMDsgaSA8IHNpemU7IGkrKykgewo+ID4gKwlmb3IgKGkg PSAwOyBpIDwgbl9lbnRyaWVzOyBpKyspIHsKPiA+ICAJCUk5MTVfV1JJVEUoRERJX0JVRl9UUkFO U19MTyhwb3J0LCBpKSwKPiA+ICAJCQkgICBkZGlfdHJhbnNsYXRpb25zW2ldLnRyYW5zMSB8IGli b29zdF9iaXQpOwo+ID4gIAkJSTkxNV9XUklURShERElfQlVGX1RSQU5TX0hJKHBvcnQsIGkpLAo+ ID4gLS0gCj4gPiAyLjEwLjIKPiA+IAo+ID4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KPiA+IEludGVsLWdmeCBtYWlsaW5nIGxpc3QKPiA+IEludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiA+IGh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsIE9U QwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK