From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id AB4EE6E1A1 for ; Fri, 23 Mar 2018 13:03:29 +0000 (UTC) Date: Fri, 23 Mar 2018 15:03:25 +0200 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Message-ID: <20180323130325.GR5453@intel.com> References: <20180323124828.4350-1-maarten.lankhorst@linux.intel.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20180323124828.4350-1-maarten.lankhorst@linux.intel.com> Subject: Re: [igt-dev] [RFC incomplete PATCH i-g-t] lib/igt_kms: Reduce probing and allow initial hotplug during igt_display_init() List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: Maarten Lankhorst Cc: igt-dev@lists.freedesktop.org, Lyude , Dhinakaran Pandiyan List-ID: T24gRnJpLCBNYXIgMjMsIDIwMTggYXQgMDE6NDg6MjhQTSArMDEwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gV2hlbiBib290aW5nIHdpdGggZmJkZXYgZGlzYWJsZWQsIGFsbCBvdXRwdXRz IGFyZSBzZXQgdG8gVU5LTk9XTkNPTk5FQ1RJT04uCj4gSW4gdGhpcyBjYXNlIHdlIGhhdmUgdG8g cmVwcm9iZSwgYnV0IGluIGFsbCBvdGhlcnMgd2UgY2FuIHNhZmVseSBhc3N1bWUgdGhhdAo+IHRo ZSBvdXRwdXQgY29ubmVjdG9yIHN0YXR1cyBpcyB2YWxpZC4KPiAKPiBFbnVtZXJhdGUgYWxsIG91 dHB1dHMsIGFuZCBmb3IgZ29vZCBtZWFzdXJlIHJlY2hlY2sgYWZ0ZXIgd2UgcHJvYmVkLCB0byBh ZGQKPiBhbmQgRFAtTVNUIHdlIG1heSBoYXZlIG1pc3NlZC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBN YWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgo+IENj OiBMeXVkZSA8bHl1ZGVAcmVkaGF0LmNvbT4KPiBDYzogRGhpbmFrYXJhbiBQYW5kaXlhbiA8ZGhp bmFrYXJhbi5wYW5kaXlhbkBpbnRlbC5jb20+Cj4gLS0tCj4gVW5mb3J0dW5hdGVseSB3ZSBsYWNr IGEgd2F5IHRvIGRldGVybWluZSB3aGV0aGVyIHRoZSBwcm9iaW5nIHdpbGwgZW51bWVyYXRlCj4g YWRkaXRpb25hbCBEUC1NU1QgZGlzcGxheXMsIHNvIHRoZSBvbmx5IHdheSByaWdodCBub3cgdG8g dGVzdCBEUC1NU1Qgd291bGQgYmUKPiB0byBhZGQgYSBzbGVlcCg1KSBpbiBpZ3RfZGlzcGxheV9j aGVja19ob3RwbHVnLgo+IAo+IEFueSB0aG91Z2h0cyBob3cgd2UgY2FuIG1ha2UgdGhpcyBtb3Jl IHJlbGlhYmxlIGZvciBEUC1NU1Q/CgpXaGVuIGRvIHdlIGZpbGwgb3V0IHRoZSBkZWJ1Z2ZzIG1z dCB0b3BvbG9neSBpbmZvcm1hdGlvbj8KCj4gCj4gfk1hYXJ0ZW4KPiAKPiBsaWIvaWd0X2ttcy5j IHwgMTIwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0KPiAgbGliL2lndF9rbXMuaCB8ICAgMiArLQo+ICAyIGZpbGVzIGNoYW5nZWQsIDk5 IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQgYS9saWIvaWd0 X2ttcy5jIGIvbGliL2lndF9rbXMuYwo+IGluZGV4IDllMzJmNDA2NzNiYi4uMjQxN2FmMmZjMDgy IDEwMDY0NAo+IC0tLSBhL2xpYi9pZ3Rfa21zLmMKPiArKysgYi9saWIvaWd0X2ttcy5jCj4gQEAg LTk3NCw3ICs5NzQsNyBAQCBfa21zdGVzdF9jb25uZWN0b3JfY29uZmlnX2ZpbmRfZW5jb2Rlcihp bnQgZHJtX2ZkLCBkcm1Nb2RlQ29ubmVjdG9yICpjb25uZWN0b3IsCj4gIHN0YXRpYyBib29sIF9r bXN0ZXN0X2Nvbm5lY3Rvcl9jb25maWcoaW50IGRybV9mZCwgdWludDMyX3QgY29ubmVjdG9yX2lk LAo+ICAJCQkJICAgICAgdW5zaWduZWQgbG9uZyBjcnRjX2lkeF9tYXNrLAo+ICAJCQkJICAgICAg c3RydWN0IGttc3Rlc3RfY29ubmVjdG9yX2NvbmZpZyAqY29uZmlnLAo+IC0JCQkJICAgICAgYm9v bCBwcm9iZSkKPiArCQkJCSAgICAgIGludCBwcm9iZSkKPiAgewo+ICAJZHJtTW9kZVJlcyAqcmVz b3VyY2VzOwo+ICAJZHJtTW9kZUNvbm5lY3RvciAqY29ubmVjdG9yOwo+IEBAIC05ODgsMTEgKzk4 OCwxOSBAQCBzdGF0aWMgYm9vbCBfa21zdGVzdF9jb25uZWN0b3JfY29uZmlnKGludCBkcm1fZmQs IHVpbnQzMl90IGNvbm5lY3Rvcl9pZCwKPiAgCX0KPiAgCj4gIAkvKiBGaXJzdCwgZmluZCB0aGUg Y29ubmVjdG9yICYgbW9kZSAqLwo+IC0JaWYgKHByb2JlKQo+ICsJaWYgKHByb2JlID4gMCkKPiAg CQljb25uZWN0b3IgPSBkcm1Nb2RlR2V0Q29ubmVjdG9yKGRybV9mZCwgY29ubmVjdG9yX2lkKTsK PiAtCWVsc2UKPiArCWVsc2Ugewo+ICAJCWNvbm5lY3RvciA9IGRybU1vZGVHZXRDb25uZWN0b3JD dXJyZW50KGRybV9mZCwgY29ubmVjdG9yX2lkKTsKPiAgCj4gKwkJaWYgKHByb2JlIDwgMCAmJiBj b25uZWN0b3IgJiYKPiArCQkgICAgY29ubmVjdG9yLT5jb25uZWN0aW9uID09IERSTV9NT0RFX1VO S05PV05DT05ORUNUSU9OKSB7Cj4gKwkJCWRybU1vZGVGcmVlQ29ubmVjdG9yKGNvbm5lY3Rvcik7 Cj4gKwo+ICsJCQljb25uZWN0b3IgPSBkcm1Nb2RlR2V0Q29ubmVjdG9yKGRybV9mZCwgY29ubmVj dG9yX2lkKTsKPiArCQl9Cj4gKwl9Cj4gKwo+ICAJaWYgKCFjb25uZWN0b3IpCj4gIAkJZ290byBl cnIyOwo+ICAKPiBAQCAtMTgwMiw2ICsxODEwLDg3IEBAIHZvaWQgaWd0X2Rpc3BsYXlfcmVzZXQo aWd0X2Rpc3BsYXlfdCAqZGlzcGxheSkKPiAgCX0KPiAgfQo+ICAKPiArc3RhdGljIHZvaWQgX19p Z3RfZGlzcGxheV9hcHBlbmRfb3V0cHV0KGlndF9kaXNwbGF5X3QgKmRpc3BsYXksIHVuc2lnbmVk IGlkKQo+ICt7Cj4gKwlpZ3Rfb3V0cHV0X3QgKm91dHB1dDsKPiArCj4gKwlvdXRwdXQgPSAmZGlz cGxheS0+b3V0cHV0c1tkaXNwbGF5LT5uX291dHB1dHMrK107Cj4gKwltZW1zZXQob3V0cHV0LCAw LCBzaXplb2YoKm91dHB1dCkpOwo+ICsKPiArCS8qCj4gKwkgKiBXZSBkb24ndCBhc3NpZ24gZWFj aCBvdXRwdXQgYSBwaXBlIHVubGVzcwo+ICsJICogYSBwaXBlIGlzIHNldCB3aXRoIGlndF9vdXRw dXRfc2V0X3BpcGUoKS4KPiArCSAqLwo+ICsJb3V0cHV0LT5pZCA9IGlkOwo+ICsJb3V0cHV0LT5k aXNwbGF5ID0gZGlzcGxheTsKPiArCW91dHB1dC0+cGVuZGluZ19waXBlID0gUElQRV9OT05FOwo+ ICsJb3V0cHV0LT5mb3JjZV9yZXByb2JlID0gLTE7Cj4gKwo+ICsJaWd0X291dHB1dF9yZWZyZXNo KG91dHB1dCk7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkIGlndF9kaXNwbGF5X2FwcGVuZF9vdXRw dXQoaWd0X2Rpc3BsYXlfdCAqZGlzcGxheSwgdW5zaWduZWQgaWQpCj4gK3sKPiArCWRpc3BsYXkt Pm91dHB1dHMgPSByZWFsbG9jKGRpc3BsYXktPm91dHB1dHMsIHNpemVvZigqZGlzcGxheS0+b3V0 cHV0cykgKiAoMSArIGRpc3BsYXktPm5fb3V0cHV0cykpOwo+ICsJaWd0X2Fzc2VydChkaXNwbGF5 LT5vdXRwdXRzKTsKPiArCj4gKwlfX2lndF9kaXNwbGF5X2FwcGVuZF9vdXRwdXQoZGlzcGxheSwg aWQpOwo+ICsKPiArCWlndF9pbmZvKCJIT1RQTFVHISBBZGRlZCBuZXcgb3V0cHV0ICVzXG4iLCBv dXRwdXQtPm5hbWUpOwo+ICt9Cj4gKwo+ICtzdGF0aWMgdm9pZCBpZ3RfZGlzcGxheV9jaGVja19o b3RwbHVnKGlndF9kaXNwbGF5X3QgKmRpc3BsYXkpCj4gK3sKPiArCWludCBpLCBqLCBudW1fb3V0 cHV0czsKPiArCXVpbnQ2NF90IGNvbm5lY3Rvcl9tYXNrID0gMDsKPiArCWlndF9vdXRwdXRfdCAq bmV3X291dHB1dHM7Cj4gKwlkcm1Nb2RlUmVzICpyZXNvdXJjZXM7Cj4gKwo+ICsJLyogT3V0cHV0 cyBtYXkgaGF2ZSBiZWVuIGRpc2NvdmVyZWQgYnkgaWd0X291dHB1dF9yZWZyZXNoKCksIHJldHJ5 Li4gKi8KPiArCXJlc291cmNlcyA9IGRybU1vZGVHZXRSZXNvdXJjZXMoZGlzcGxheS0+ZHJtX2Zk KTsKPiArCj4gKwlmb3IgKGkgPSAwOyBpIDwgcmVzb3VyY2VzLT5jb3VudF9jb25uZWN0b3JzOyBp KyspIHsKPiArCQl1bnNpZ25lZCBpZCA9IHJlc291cmNlcy0+Y29ubmVjdG9yc1tpXTsKPiArCQli b29sIGZvdW5kID0gZmFsc2U7Cj4gKwo+ICsJCWZvciAoaiA9IDA7IGogPCBkaXNwbGF5LT5uX291 dHB1dHM7IGorKykgewo+ICsJCQlpZ3Rfb3V0cHV0X3QgKm91dHB1dCA9ICZkaXNwbGF5LT5vdXRw dXRzW2pdOwo+ICsKPiArCQkJaWYgKG91dHB1dC0+aWQgIT0gaWQpCj4gKwkJCQljb250aW51ZTsK PiArCj4gKwkJCWZvdW5kID0gdHJ1ZTsKPiArCQkJYnJlYWs7Cj4gKwkJfQo+ICsKPiArCQlpZiAo IWZvdW5kKQo+ICsJCQlpZ3RfZGlzcGxheV9hcHBlbmRfb3V0cHV0KGRpc3BsYXksIGlkKTsKPiAr Cj4gKwkJY29ubmVjdG9yX21hc2sgfD0gMVVMTCA8PCBqOwo+ICsJfQo+ICsKPiArCWRybU1vZGVG cmVlUmVzb3VyY2VzKHJlc291cmNlcyk7Cj4gKwo+ICsJbnVtX291dHB1dHMgPSBfX2J1aWx0aW5f cG9wY291bnRsbChjb25uZWN0b3JfbWFzayk7Cj4gKwlpZiAobnVtX291dHB1dHMgPT0gZGlzcGxh eS0+bl9vdXRwdXRzKQo+ICsJCXJldHVybjsKPiArCj4gKwluZXdfb3V0cHV0cyA9IG1hbGxvYyhz aXplb2YoKm5ld19vdXRwdXRzKSAqIG51bV9vdXRwdXRzKTsKPiArCj4gKwkvKiBHYXJiYWdlIGNv bGxlY3QgZGVhZCBvdXRwdXRzLiAqLwo+ICsJZm9yIChpID0gaiA9IDA7IGkgPCBkaXNwbGF5LT5u X291dHB1dHM7IGkrKykgewo+ICsJCWlmICghKGNvbm5lY3Rvcl9tYXNrICYgKDFVTEwgPDwgaSkp KSB7Cj4gKwkJCWlndF9pbmZvKCJPdXRwdXQgJXMgZGlzYXBwZWFyZWQhXG4iLCBkaXNwbGF5LT5v dXRwdXRzW2ldLm5hbWUpOwo+ICsJCQljb250aW51ZTsKPiArCQl9Cj4gKwo+ICsJCW5ld19vdXRw dXRzW2orK10gPSBkaXNwbGF5LT5vdXRwdXRzW2ldOwo+ICsJfQo+ICsKPiArCWZyZWUoZGlzcGxh eS0+b3V0cHV0cyk7Cj4gKwlkaXNwbGF5LT5vdXRwdXRzID0gbmV3X291dHB1dHM7Cj4gK30KPiAr Cj4gIHN0YXRpYyB2b2lkIGlndF9maWxsX3BsYW5lX2Zvcm1hdF9tb2QoaWd0X2Rpc3BsYXlfdCAq ZGlzcGxheSwgaWd0X3BsYW5lX3QgKnBsYW5lKTsKPiAgc3RhdGljIHZvaWQgaWd0X2ZpbGxfZGlz cGxheV9mb3JtYXRfbW9kKGlndF9kaXNwbGF5X3QgKmRpc3BsYXkpOwo+ICAKPiBAQCAtMjAxMiwz MSArMjEwMSwxOCBAQCB2b2lkIGlndF9kaXNwbGF5X2luaXQoaWd0X2Rpc3BsYXlfdCAqZGlzcGxh eSwgaW50IGRybV9mZCkKPiAgCj4gIAlpZ3RfZmlsbF9kaXNwbGF5X2Zvcm1hdF9tb2QoZGlzcGxh eSk7Cj4gIAo+IC0JLyoKPiAtCSAqIFRoZSBudW1iZXIgb2YgY29ubmVjdG9ycyBpcyBzZXQsIHNv IHdlIGp1c3QgaW5pdGlhbGl6ZSB0aGUgb3V0cHV0cwo+IC0JICogYXJyYXkgaW4gX2luaXQoKS4g VGhpcyBtYXkgY2hhbmdlIHdoZW4gd2UgbmVlZCBkeW5hbWljIGNvbm5lY3RvcnMKPiAtCSAqIChz YXkgRGlzcGxheVBvcnQgTVNUKS4KPiAtCSAqLwo+IC0JZGlzcGxheS0+bl9vdXRwdXRzID0gcmVz b3VyY2VzLT5jb3VudF9jb25uZWN0b3JzOwo+IC0JZGlzcGxheS0+b3V0cHV0cyA9IGNhbGxvYyhk aXNwbGF5LT5uX291dHB1dHMsIHNpemVvZihpZ3Rfb3V0cHV0X3QpKTsKPiArCWRpc3BsYXktPm5f b3V0cHV0cyA9IDA7Cj4gKwlkaXNwbGF5LT5vdXRwdXRzID0gbWFsbG9jKGRpc3BsYXktPm5fb3V0 cHV0cyAqIHNpemVvZihpZ3Rfb3V0cHV0X3QpKTsKPiAgCWlndF9hc3NlcnRfZihkaXNwbGF5LT5v dXRwdXRzLCAiRmFpbGVkIHRvIGFsbG9jYXRlIG1lbW9yeSBmb3IgJWQgb3V0cHV0c1xuIiwgZGlz cGxheS0+bl9vdXRwdXRzKTsKPiAgCj4gLQlmb3IgKGkgPSAwOyBpIDwgZGlzcGxheS0+bl9vdXRw dXRzOyBpKyspIHsKPiAtCQlpZ3Rfb3V0cHV0X3QgKm91dHB1dCA9ICZkaXNwbGF5LT5vdXRwdXRz W2ldOwo+IC0KPiAtCQkvKgo+IC0JCSAqIFdlIGRvbid0IGFzc2lnbiBlYWNoIG91dHB1dCBhIHBp cGUgdW5sZXNzCj4gLQkJICogYSBwaXBlIGlzIHNldCB3aXRoIGlndF9vdXRwdXRfc2V0X3BpcGUo KS4KPiAtCQkgKi8KPiAtCQlvdXRwdXQtPmlkID0gcmVzb3VyY2VzLT5jb25uZWN0b3JzW2ldOwo+ IC0JCW91dHB1dC0+ZGlzcGxheSA9IGRpc3BsYXk7Cj4gLQo+IC0JCWlndF9vdXRwdXRfcmVmcmVz aChvdXRwdXQpOwo+IC0JfQo+ICsJZm9yIChpID0gMDsgaSA8IGRpc3BsYXktPm5fb3V0cHV0czsg aSsrKQo+ICsJCV9faWd0X2Rpc3BsYXlfYXBwZW5kX291dHB1dChkaXNwbGF5LCByZXNvdXJjZXMt PmNvbm5lY3RvcnNbaV0pOwo+ICAKPiAgCWRybU1vZGVGcmVlUGxhbmVSZXNvdXJjZXMocGxhbmVf cmVzb3VyY2VzKTsKPiAgCWRybU1vZGVGcmVlUmVzb3VyY2VzKHJlc291cmNlcyk7Cj4gIAo+ICsJ aWd0X2Rpc3BsYXlfY2hlY2tfaG90cGx1ZyhkaXNwbGF5KTsKPiArCj4gIAkvKiBTZXQgcmVhc29u YWJsZSBkZWZhdWx0IHZhbHVlcyBmb3IgZXZlcnkgb2JqZWN0IGluIHRoZSBkaXNwbGF5LiAqLwo+ ICAJaWd0X2Rpc3BsYXlfcmVzZXQoZGlzcGxheSk7Cj4gIAo+IGRpZmYgLS1naXQgYS9saWIvaWd0 X2ttcy5oIGIvbGliL2lndF9rbXMuaAo+IGluZGV4IDZmMTZkYzhjZjg1ZS4uOWU3MzRhYjFhNWI4 IDEwMDY0NAo+IC0tLSBhL2xpYi9pZ3Rfa21zLmgKPiArKysgYi9saWIvaWd0X2ttcy5oCj4gQEAg LTM0MCw3ICszNDAsNyBAQCB0eXBlZGVmIHN0cnVjdCB7Cj4gIAl1aW50MzJfdCBpZDsJCQkJCS8q IEtNUyBpZCAqLwo+ICAJc3RydWN0IGttc3Rlc3RfY29ubmVjdG9yX2NvbmZpZyBjb25maWc7Cj4g IAljaGFyICpuYW1lOwo+IC0JYm9vbCBmb3JjZV9yZXByb2JlOwo+ICsJaW50IGZvcmNlX3JlcHJv YmU7Cj4gIAllbnVtIHBpcGUgcGVuZGluZ19waXBlOwo+ICAJYm9vbCB1c2Vfb3ZlcnJpZGVfbW9k ZTsKPiAgCWRybU1vZGVNb2RlSW5mbyBvdmVycmlkZV9tb2RlOwo+IC0tIAo+IDIuMTYuMgo+IAo+ IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gaWd0LWRl diBtYWlsaW5nIGxpc3QKPiBpZ3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwo+IGh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldgoKLS0gClZpbGxl IFN5cmrDpGzDpApJbnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3Qt ZGV2Cg==