From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lukas Wunner Subject: Re: [PATCH 1/4] drm/fb-helper: Support deferred setup Date: Sat, 4 Jun 2016 12:46:10 +0200 Message-ID: <20160604104610.GA16521@wunner.de> References: <20160603161119.30528-1-thierry.reding@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mailout3.hostsharing.net (mailout3.hostsharing.net [176.9.242.54]) by gabe.freedesktop.org (Postfix) with ESMTPS id 81BCF6E11A for ; Sat, 4 Jun 2016 10:42:31 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20160603161119.30528-1-thierry.reding@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Thierry Reding Cc: Daniel Vetter , Seung-Woo Kim , dri-devel@lists.freedesktop.org, Xinliang Liu , Kyungmin Park , Chen Feng List-Id: dri-devel@lists.freedesktop.org T24gRnJpLCBKdW4gMDMsIDIwMTYgYXQgMDY6MTE6MTZQTSArMDIwMCwgVGhpZXJyeSBSZWRpbmcg d3JvdGU6Cj4gRnJvbTogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KPiAKPiBG QiBoZWxwZXIgY29kZSBmYWxscyBiYWNrIHRvIGEgMTAyNHg3NjggbW9kZSBpZiBubyBvdXRwdXRz IGFyZSBjb25uZWN0ZWQKPiBvciBkb24ndCByZXBvcnQgYmFjayBhbnkgbW9kZXMgdXBvbiBpbml0 aWFsaXphdGlvbi4gVGhpcyBjYW4gYmUgYW5ub3lpbmcKPiBiZWNhdXNlIG91dHB1dHMgdGhhdCBh cmUgYWRkZWQgdG8gRkIgaGVscGVyIGxhdGVyIG9uIGNhbid0IGJlIHVzZWQgd2l0aAo+IEZCIGhl bHBlciBpZiB0aGV5IGRvbid0IHN1cHBvcnQgYSBtYXRjaGluZyBtb2RlLgo+IAo+IFRoZSBmYWxs YmFjayBpcyBpbiBwbGFjZSBiZWNhdXNlIFZHQSBjb25uZWN0b3JzIGNhbiBoYXBwZW4gdG8gcmVw b3J0IGFuCj4gdW5rbm93biBjb25uZWN0aW9uIHN0YXR1cyBldmVuIHdoZW4gdGhleSBhcmUgaW4g ZmFjdCBjb25uZWN0ZWQuCj4gCj4gU29tZSBkcml2ZXJzIGhhdmUgY3VzdG9tIHNvbHV0aW9ucyBp biBwbGFjZSB0byBkZWZlciBGQiBoZWxwZXIgc2V0dXAKPiB1bnRpbCBhdCBsZWFzdCBvbmUgb3V0 cHV0IGlzIGNvbm5lY3RlZC4gQnV0IHRoZSBsb2dpYyBiZWhpbmQgdGhlc2UKPiBzb2x1dGlvbnMg aXMgYWx3YXlzIHRoZSBzYW1lIGFuZCB0aGVyZSBpcyBub3RoaW5nIGRyaXZlci1zcGVjaWZpYyBh Ym91dAo+IGl0LCBzbyBhIGJldHRlciBhbHRlcmF0aXZlIGlzIHRvIGZpeCB0aGUgRkIgaGVscGVy IGNvcmUgYW5kIGFkZCBzdXBwb3J0Cj4gZm9yIGFsbCBkcml2ZXJzIGF1dG9tYXRpY2FsbHkuCj4g Cj4gVGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIGRlZmVycmVkIEZCIGhlbHBlciBzZXR1cC4g SXQgY2hlY2tzIGFsbCB0aGUKPiBjb25uZWN0b3JzIGZvciB0aGVpciBjb25uZWN0aW9uIHN0YXR1 cywgYW5kIGlmIGFsbCBvZiB0aGVtIHJlcG9ydCB0byBiZQo+IGRpc2Nvbm5lY3RlZCBtYXJrcyB0 aGUgRkIgaGVscGVyIGFzIG5lZWRpbmcgZGVmZXJyZWQgc2V0dXAuIFdoZXQgc2V0dXAKPiBpcyBk ZWZlcnJlZCwgdGhlIEZCIGhlbHBlciBjb3JlIHdpbGwgYXV0b21hdGljYWxseSByZXRyeSBzZXR1 cCBhZnRlciBhCj4gaG90cGx1ZyBldmVudCwgYW5kIGl0IHdpbGwga2VlcCB0cnlpbmcgdW50aWwg aXQgc3VjY2VlZHMuCgpUaGlzIG1pZ2h0IGhhdmUgYmVlbiBhbiBhbHRlcm5hdGl2ZSBzb2x1dGlv biB0byB0aGUgZHJpdmVyIGRlcGVuZGVuY2llcwpJIHdhcyBleHBlcmllbmNpbmcgd2l0aCBHUFUg c3dpdGNoaW5nIG9uIHRoZSBNYWNCb29rIFBybzogVGhlIGFwcGxlLWdtdXgKbW9kdWxlIG5lZWRz IHRvIGJlIGxvYWRlZCBvbiBwcmUtcmV0aW5hcyB0byBzd2l0Y2ggRERDLCBhbmQgb24gcmV0aW5h cwp0aGUgRFJNIGRyaXZlciBmb3IgdGhlIGFjdGl2ZSBHUFUgbmVlZHMgdG8gaGF2ZSBzZXQgdXAg dGhlIGVEUCBvdXRwdXQKc28gdGhhdCB0aGUgaW5hY3RpdmUgR1BVIGNhbiB1c2UgdGhlIHByZS1j YWxpYnJhdGVkIHYtc3dpbmcsIHByZS1lbXBoIGV0Yy4KCkkgdHJpZWQgc29tZXRoaW5nIHNpbWls YXIgdG8gdGhpcyBwYXRjaCBoZXJlIGZpcnN0LCBmYWxsaW5nIGJhY2sgdG8KMTAyNHg3ODYgaWYg dGhlIGRlcGVuZGVuY2llcyB3ZXJlbid0IG1ldCwgYW5kIHRoZW4gdGVhcmluZyBkb3duIGFuZApy ZWluaXRpYWxpemluZyB0aGUgZmJkZXYgb25jZSBhbGwgcHJlcmVxdWlzaXRlcyB3ZXJlIGZ1bGZp bGxlZC4KVGhpcyBhcHByb2FjaCB0dXJuZWQgb3V0IHRvIGJlIHRvbyBmcmFnaWxlIHNvIEkgc2V0 dGxlZCBvbiAtRVBST0JFX0RFRkVSLAp3aGljaCBoYWQgdGhlIGFkZGl0aW9uYWwgYWR2YW50YWdl IG9mIG5lZWRpbmcgbXVjaCBsZXNzIGNvZGUuCgpJJ20gbm90IHN1cmUgaWYgYSBob3RwbHVnIHNp Z25hbCBpcyBnZW5lcmF0ZWQgYXQgYWxsIG9uIG9sZGVyIG1hY2hpbmVzCndpdGggYSBwbGFpbiB2 YW5pbGxhIFZHQSBvdXRwdXQuIElmIHRoYXQgaXMgbm90IHRoZSBjYXNlLCB0aGlzIHBhdGNoCmhl cmUgd2lsbCBjYXVzZSBhIGNoYW5nZSBvZiBiZWhhdmlvdXIuCgpJdCBhbHNvIGRvZXNuJ3Qgc29s dmUgdGhlIGlzc3VlIHRoYXQgYSBkaXNwbGF5IGlzIHVucGx1Z2dlZCBhbmQgcmVwbGFjZWQKd2l0 aCBhIGxhcmdlciBkaXNwbGF5LiBUaGUgZmIgcmVzb2x1dGlvbiB3aWxsIHN0YXkgdGhlIHNhbWUu IElkZWFsbHkgd2UKc2hvdWxkIHRlYXIgZG93biB0aGUgZmJkZXYgaWYgdGhlIGxhc3QgZGlzcGxh eSB1c2luZyBpdCBpcyB1bnBsdWdnZWQgYW5kCnJlY3JlYXRlIGl0IG9uY2Ugc29tZXRoaW5nIGlz IHBsdWdnZWQgaW4gYWdhaW4uCgpCZXN0IHJlZ2FyZHMsCgpMdWthcwoKPiAKPiBTaWduZWQtb2Zm LWJ5OiBUaGllcnJ5IFJlZGluZyA8dHJlZGluZ0BudmlkaWEuY29tPgo+IC0tLQo+ICBkcml2ZXJz L2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jIHwgMzYgKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCj4gIGluY2x1ZGUvZHJtL2RybV9mYl9oZWxwZXIuaCAgICAgfCAyMSArKysrKysr KysrKysrKysrKysrKysKPiAgMiBmaWxlcyBjaGFuZ2VkLCA1NyBpbnNlcnRpb25zKCspCj4gCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX2ZiX2hlbHBlci5jCj4gaW5kZXggN2MyZWI3NWRiNjBmLi40ZjMzNGY5Y2FiMjgg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKPiBAQCAtNDQyLDYgKzQ0Miw5IEBAIGludCBk cm1fZmJfaGVscGVyX3Jlc3RvcmVfZmJkZXZfbW9kZV91bmxvY2tlZChzdHJ1Y3QgZHJtX2ZiX2hl bHBlciAqZmJfaGVscGVyKQo+ICAJaWYgKCFkcm1fZmJkZXZfZW11bGF0aW9uKQo+ICAJCXJldHVy biAtRU5PREVWOwo+ICAKPiArCWlmIChmYl9oZWxwZXItPmRlZmVycmVkX3NldHVwKQo+ICsJCXJl dHVybiAwOwo+ICsKPiAgCWRybV9tb2Rlc2V0X2xvY2tfYWxsKGRldik7Cj4gIAlyZXQgPSByZXN0 b3JlX2ZiZGV2X21vZGUoZmJfaGVscGVyKTsKPiAgCj4gQEAgLTEzOTgsNiArMTQwMSwyMyBAQCB1 bmxvY2s6Cj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fZmJfaGVscGVyX3Bhbl9kaXNwbGF5KTsK PiAgCj4gK3N0YXRpYyBib29sIGRybV9mYl9oZWxwZXJfbWF5YmVfY29ubmVjdGVkKHN0cnVjdCBk cm1fZmJfaGVscGVyICpoZWxwZXIpCj4gK3sKPiArCWJvb2wgY29ubmVjdGVkID0gZmFsc2U7Cj4g Kwl1bnNpZ25lZCBpbnQgaTsKPiArCj4gKwlmb3IgKGkgPSAwOyBpIDwgaGVscGVyLT5jb25uZWN0 b3JfY291bnQ7IGkrKykgewo+ICsJCXN0cnVjdCBkcm1fZmJfaGVscGVyX2Nvbm5lY3RvciAqZmIg PSBoZWxwZXItPmNvbm5lY3Rvcl9pbmZvW2ldOwo+ICsKPiArCQlpZiAoZmItPmNvbm5lY3Rvci0+ c3RhdHVzICE9IGNvbm5lY3Rvcl9zdGF0dXNfZGlzY29ubmVjdGVkKSB7Cj4gKwkJCWNvbm5lY3Rl ZCA9IHRydWU7Cj4gKwkJCWJyZWFrOwo+ICsJCX0KPiArCX0KPiArCj4gKwlyZXR1cm4gY29ubmVj dGVkOwo+ICt9Cj4gKwo+ICAvKgo+ICAgKiBBbGxvY2F0ZXMgdGhlIGJhY2tpbmcgc3RvcmFnZSBh bmQgc2V0cyB1cCB0aGUgZmJkZXYgaW5mbyBzdHJ1Y3R1cmUgdGhyb3VnaAo+ICAgKiB0aGUgLT5m Yl9wcm9iZSBjYWxsYmFjayBhbmQgdGhlbiByZWdpc3RlcnMgdGhlIGZiZGV2IGFuZCBzZXRzIHVw IHRoZSBwYW5pYwo+IEBAIC0xNDk5LDYgKzE1MTksMTcgQEAgc3RhdGljIGludCBkcm1fZmJfaGVs cGVyX3NpbmdsZV9mYl9wcm9iZShzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLAo+ICAJ CQlzaXplcy5mYl9oZWlnaHQgPSBtaW5fdCh1MzIsIGRlc2lyZWRfbW9kZS0+dmRpc3BsYXkgKyB5 LCBzaXplcy5mYl9oZWlnaHQpOwo+ICAJfQo+ICAKPiArCS8qCj4gKwkgKiBJZiBldmVyeXRoaW5n J3MgZGlzY29ubmVjdGVkLCB0aGVyZSdzIG5vIHVzZSBpbiBhdHRlbXB0aW5nIHRvIHNldAo+ICsJ ICogdXAgZmJkZXYuCj4gKwkgKi8KPiArCWlmICghZHJtX2ZiX2hlbHBlcl9tYXliZV9jb25uZWN0 ZWQoZmJfaGVscGVyKSkgewo+ICsJCURSTV9JTkZPKCJObyBvdXRwdXRzIGNvbm5lY3RlZCwgZGVm ZXJyaW5nIHNldHVwXG4iKTsKPiArCQlmYl9oZWxwZXItPnByZWZlcnJlZF9icHAgPSBwcmVmZXJy ZWRfYnBwOwo+ICsJCWZiX2hlbHBlci0+ZGVmZXJyZWRfc2V0dXAgPSB0cnVlOwo+ICsJCXJldHVy biAwOwo+ICsJfQo+ICsKPiAgCWlmIChjcnRjX2NvdW50ID09IDAgfHwgc2l6ZXMuZmJfd2lkdGgg PT0gLTEgfHwgc2l6ZXMuZmJfaGVpZ2h0ID09IC0xKSB7Cj4gIAkJLyogaG1tIGV2ZXJ5b25lIHdl bnQgYXdheSAtIGFzc3VtZSBWR0EgY2FibGUganVzdCBmZWxsIG91dAo+ICAJCSAgIGFuZCB3aWxs IGNvbWUgYmFjayBsYXRlci4gKi8KPiBAQCAtMTUzOSw2ICsxNTcwLDcgQEAgc3RhdGljIGludCBk cm1fZmJfaGVscGVyX3NpbmdsZV9mYl9wcm9iZShzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVs cGVyLAo+ICAKPiAgCWxpc3RfYWRkKCZmYl9oZWxwZXItPmtlcm5lbF9mYl9saXN0LCAma2VybmVs X2ZiX2hlbHBlcl9saXN0KTsKPiAgCj4gKwlmYl9oZWxwZXItPmRlZmVycmVkX3NldHVwID0gZmFs c2U7Cj4gIAlyZXR1cm4gMDsKPiAgfQo+ICAKPiBAQCAtMjIzNyw2ICsyMjY5LDEwIEBAIGludCBk cm1fZmJfaGVscGVyX2hvdHBsdWdfZXZlbnQoc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBl cikKPiAgCWlmICghZHJtX2ZiZGV2X2VtdWxhdGlvbikKPiAgCQlyZXR1cm4gMDsKPiAgCj4gKwlp ZiAoZmJfaGVscGVyLT5kZWZlcnJlZF9zZXR1cCkKPiArCQlyZXR1cm4gZHJtX2ZiX2hlbHBlcl9p bml0aWFsX2NvbmZpZyhmYl9oZWxwZXIsCj4gKwkJCQkJCSAgICBmYl9oZWxwZXItPnByZWZlcnJl ZF9icHApOwo+ICsKPiAgCW11dGV4X2xvY2soJmZiX2hlbHBlci0+ZGV2LT5tb2RlX2NvbmZpZy5t dXRleCk7Cj4gIAlpZiAoIWZiX2hlbHBlci0+ZmIgfHwgIWRybV9mYl9oZWxwZXJfaXNfYm91bmQo ZmJfaGVscGVyKSkgewo+ICAJCWZiX2hlbHBlci0+ZGVsYXllZF9ob3RwbHVnID0gdHJ1ZTsKPiBk aWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2ZiX2hlbHBlci5oIGIvaW5jbHVkZS9kcm0vZHJt X2ZiX2hlbHBlci5oCj4gaW5kZXggNWI0YWEzNTAyNmEzLi4yNTQ0NjY5MGIyYzEgMTAwNjQ0Cj4g LS0tIGEvaW5jbHVkZS9kcm0vZHJtX2ZiX2hlbHBlci5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJt X2ZiX2hlbHBlci5oCj4gQEAgLTIxNCw2ICsyMTQsMjcgQEAgc3RydWN0IGRybV9mYl9oZWxwZXIg ewo+ICAJYm9vbCBkZWxheWVkX2hvdHBsdWc7Cj4gIAo+ICAJLyoqCj4gKwkgKiBAZGVmZXJyZWRf c2V0dXA6Cj4gKwkgKgo+ICsJICogSWYgbm8gb3V0cHV0cyBhcmUgY29ubmVjdGVkIChkaXNjb25u ZWN0ZWQgb3IgdW5rbm93bikgdGhlIEZCIGhlbHBlcgo+ICsJICogY29kZSB3aWxsIGRlZmVyIHNl dHVwIHVudGlsIGF0IGxlYXN0IG9uZSBvZiB0aGUgb3V0cHV0cyBzaG93cyB1cC4KPiArCSAqIFRo aXMgZmllbGQga2VlcHMgdHJhY2sgb2YgdGhlIHN0YXR1cyBzbyB0aGF0IHNldHVwIGNhbiBiZSBy ZXRyaWVkCj4gKwkgKiBhdCBldmVyeSBob3RwbHVnIGV2ZW50IHVudGlsIGl0IHN1Y2NlZWRzIGV2 ZW50dWFsbHkuCj4gKwkgKi8KPiArCWJvb2wgZGVmZXJyZWRfc2V0dXA7Cj4gKwo+ICsJLyoqCj4g KwkgKiBAcHJlZmVycmVkX2JwcDoKPiArCSAqCj4gKwkgKiBUZW1wb3Jhcnkgc3RvcmFnZSBmb3Ig dGhlIGRyaXZlcidzIHByZWZlcnJlZCBCUFAgc2V0dGluZyBwYXNzZWQgdG8KPiArCSAqIEZCIGhl bHBlciBpbml0aWFsaXphdGlvbi4gVGhpcyBuZWVkcyB0byBiZSB0cmFja2VkIHNvIHRoYXQgZGVm ZXJyZWQKPiArCSAqIEZCIGhlbHBlciBzZXR1cCBjYW4gcGFzcyB0aGlzIG9uLgo+ICsJICoKPiAr CSAqIFNlZSBhbHNvOiBAZGVmZXJyZWRfc2V0dXAKPiArCSAqLwo+ICsJaW50IHByZWZlcnJlZF9i cHA7Cj4gKwo+ICsJLyoqCj4gIAkgKiBAYXRvbWljOgo+ICAJICoKPiAgCSAqIFVzZSBhdG9taWMg dXBkYXRlcyBmb3IgcmVzdG9yZV9mYmRldl9tb2RlKCksIGV0Yy4gIFRoaXMgZGVmYXVsdHMgdG8K PiAtLSAKPiAyLjguMwo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCj4gZHJpLWRldmVsIG1haWxpbmcgbGlzdAo+IGRyaS1kZXZlbEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2RyaS1kZXZlbApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwK