From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [RFC v2 6/8] drm: Handle fbdev emulation in core Date: Tue, 9 Jan 2018 11:38:19 +0100 Message-ID: <20180109103819.GS26573@phenom.ffwll.local> References: <20180103222110.45855-1-noralf@tronnes.org> <20180103222110.45855-7-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20180103222110.45855-7-noralf@tronnes.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= Cc: daniel.vetter@ffwll.ch, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, laurent.pinchart@ideasonboard.com List-Id: intel-gfx@lists.freedesktop.org T24gV2VkLCBKYW4gMDMsIDIwMTggYXQgMTE6MjE6MDhQTSArMDEwMCwgTm9yYWxmIFRyw7hubmVz IHdyb3RlOgo+IFByZXBhcmUgZm9yIGdlbmVyaWMgZmJkZXYgZW11bGF0aW9uIGJ5IGxldHRpbmcg RFJNIGNvcmUgd29yayBkaXJlY3RseQo+IHdpdGggdGhlIGZiZGV2IGNvbXBhdGliaWxpdHkgbGF5 ZXIuIFRoaXMgaXMgZG9uZSBieSBhZGRpbmcgbmV3IGZiZGV2Cj4gaGVscGVyIHZ0YWJsZSBjYWxs YmFja3MgZm9yIHJlc3RvcmUsIGhvdHBsdWdfZXZlbnQsIHVucmVnaXN0ZXIgYW5kCj4gcmVsZWFz ZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBOb3JhbGYgVHLDuG5uZXMgPG5vcmFsZkB0cm9ubmVzLm9y Zz4KCk5vIGNsdWUgd2hldGhlciBteSBpZGVhIGlzIGFueSBnb29kLCBidXQgaW5zcGlyZWQgYnkg dGhlIGJvb3RzcGxhc2gKZGlzY3Vzc2lvbiwgYW5kIHRoZSBwcm9zcGVjdCB0aGF0IHdlIG1pZ2h0 IGdldCBvdGhlciBpbi1rZXJuZWwgZHJtL2ttcwpjbGllbnRzIEknbSB3b25kZXJpbmcgd2hldGhl ciB3ZSBzaG91bGQgbWFrZSB0aGlzIGEgYml0IG1vcmUgZ2VuZXJpYyBhbmQKdGllIGl0IHRvIGRy bV9maWxlPwoKVGhlIGlkZWEgd291bGQgYmUgdG8gaGF2ZSBhIGxpc3Qgb2YgaW50ZXJuYWwgZHJt IGNsaWVudHMgYnkgcHV0dGluZyBhbGwKdGhlIGludGVybmFsIGRybV9maWxlcyBvbnRvIGEgbGlz dCAoc2FtZSB3YXkgd2UgZG8gd2l0aCB0aGUgdXNlcnNwYWNlCm9uZXMpLiBUaGVuIHdlJ2QganVz dCB3YWxrIHRoYXQgbGlzdCBhbmQgY2FsbCAtPmhvdHBsdWcsIC0+dW5yZWdpc3RlciBhbmQKLT5y ZWxlYXNlIGF0IHRoZSByaWdodCBwbGFjZXMuCgotPnJlc3RvcmUgd291bGQgYmUgYSBiaXQgZGlm ZmVyZW50LCBJIGd1ZXNzIGZvciB0aGF0IHdlJ2Qgb25seSBjYWxsIHRoZQotPnJlc3RvcmUgY2Fs bGJhY2sgb2YgdGhlIHZlcnkgZmlyc3Qga2VybmVsLWludGVybmFsIGNsaWVudC4KCldpdGggdGhh dCB3ZSBjb3VsZCB0aGVuIGFkZC9yZW1vdmUga2VybmVsLWludGVybmFsIGRybSBjbGllbnRzIGxp a2Ugbm9ybWFsCnVzZXJzcGFjZSBjbGllbnRzLCB3aGljaCBzaG91bGQgbWFrZSBpbnRlZ3JhdGlv biBvZiBlbWVyZ2VuY3kgY29uc29sZXMsCmJvb3Qgc3BsYXNoZXMgYW5kIHdoYXRldmVyIGVsc2Ug cmVhbCBlYXN5LiBBbmQgSSB0aGluayBpdCB3b3VsZCBiZSBhIGxvdApjbGVhbmVyIHRoYW4gbGVh a2luZyBmYl9oZWxwZXIga25vd2xlZGdlIGludG8gdGhlIGRybSBjb3JlLCB3aGljaCBmZWVscyBh CnJhdGhlciBiYWNrd2FyZHMuCgpPdG9oIHRoYXQgZmVlbHMgYSBiaXQgb3ZlcmVuZ2luZWVyZWQg KGJ1dCBhdCBsZWFzdCBpdCBzaG91bGRuJ3QgYmUgYSBsb3QKbW9yZSBjb2RlIHJlYWxseSkuIElm IHRoZSBsaXN0IGlzIHRvbyBtdWNoIHdvcmsgd2UgY291bGQgc3RhcnQgd2l0aCAxCmRybV9maWxl ICogcG9pbnRlciBmb3IgaW50ZXJuYWwgc3R1ZmYgKGJ1dCB3b3VsZCBzdGlsbCBuZWVkIGxvY2tp bmcsIHNvCmxpc3RfaGVhZCBpcyBwcm9iYWJseSBlYXNpZXIpLgoKVGhvdWdodHM/Ci1EYW5pZWwK Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fZmlsZS5jICAgICAgICAgfCAxMiArKysrKysr KysrKy0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9tb2RlX2NvbmZpZy5jICB8IDEwICsrKysrKysr KysKPiAgZHJpdmVycy9ncHUvZHJtL2RybV9wcm9iZV9oZWxwZXIuYyB8ICA0ICsrKysKPiAgaW5j bHVkZS9kcm0vZHJtX2ZiX2hlbHBlci5oICAgICAgICB8IDMzICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwo+ICA0IGZpbGVzIGNoYW5nZWQsIDU4IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9maWxlLmMgYi9k cml2ZXJzL2dwdS9kcm0vZHJtX2ZpbGUuYwo+IGluZGV4IDQwMGQ0NDQzN2U5My4uN2VjMDlmYjgz MTM1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmlsZS5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL2RybV9maWxlLmMKPiBAQCAtMzUsNiArMzUsNyBAQAo+ICAjaW5jbHVkZSA8 bGludXgvc2xhYi5oPgo+ICAjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+Cj4gIAo+ICsjaW5jbHVk ZSA8ZHJtL2RybV9mYl9oZWxwZXIuaD4KPiAgI2luY2x1ZGUgPGRybS9kcm1fZmlsZS5oPgo+ICAj aW5jbHVkZSA8ZHJtL2RybVAuaD4KPiAgCj4gQEAgLTQ0MSwxMCArNDQyLDE5IEBAIHN0YXRpYyB2 b2lkIGRybV9sZWdhY3lfZGV2X3JlaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICAKPiAg dm9pZCBkcm1fbGFzdGNsb3NlKHN0cnVjdCBkcm1fZGV2aWNlICogZGV2KQo+ICB7Cj4gKwlzdHJ1 Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyID0gZGV2LT5mYl9oZWxwZXI7Cj4gKwlpbnQgcmV0 Owo+ICsKPiAgCURSTV9ERUJVRygiXG4iKTsKPiAgCj4gLQlpZiAoZGV2LT5kcml2ZXItPmxhc3Rj bG9zZSkKPiArCWlmIChkZXYtPmRyaXZlci0+bGFzdGNsb3NlKSB7Cj4gIAkJZGV2LT5kcml2ZXIt Pmxhc3RjbG9zZShkZXYpOwo+ICsJfSBlbHNlIGlmIChmYl9oZWxwZXIgJiYgZmJfaGVscGVyLT5m dW5jcyAmJiBmYl9oZWxwZXItPmZ1bmNzLT5yZXN0b3JlKSB7Cj4gKwkJcmV0ID0gZmJfaGVscGVy LT5mdW5jcy0+cmVzdG9yZShmYl9oZWxwZXIpOwo+ICsJCWlmIChyZXQpCj4gKwkJCURSTV9FUlJP UigiRmFpbGVkIHRvIHJlc3RvcmUgZmJkZXY6ICVkXG4iLCByZXQpOwo+ICsJfQo+ICsKPiAgCURS TV9ERUJVRygiZHJpdmVyIGxhc3RjbG9zZSBjb21wbGV0ZWRcbiIpOwo+ICAKPiAgCWlmIChkcm1f Y29yZV9jaGVja19mZWF0dXJlKGRldiwgRFJJVkVSX0xFR0FDWSkpCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9kcm1fbW9kZV9jb25maWcuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fbW9k ZV9jb25maWcuYwo+IGluZGV4IGJjNWM0NjMwNmIzZC4uMjYwZWIxNzMwMjQ0IDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZV9jb25maWcuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fbW9kZV9jb25maWcuYwo+IEBAIC0yMSw2ICsyMSw3IEBACj4gICAqLwo+ICAKPiAg I2luY2x1ZGUgPGRybS9kcm1fZW5jb2Rlci5oPgo+ICsjaW5jbHVkZSA8ZHJtL2RybV9mYl9oZWxw ZXIuaD4KPiAgI2luY2x1ZGUgPGRybS9kcm1fbW9kZV9jb25maWcuaD4KPiAgI2luY2x1ZGUgPGRy bS9kcm1QLmg+Cj4gIAo+IEBAIC02MSw2ICs2MiwxMSBAQCBpbnQgZHJtX21vZGVzZXRfcmVnaXN0 ZXJfYWxsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIAo+ICB2b2lkIGRybV9tb2Rlc2V0X3Vu cmVnaXN0ZXJfYWxsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCj4gIHsKPiArCXN0cnVjdCBkcm1f ZmJfaGVscGVyICpmYl9oZWxwZXIgPSBkZXYtPmZiX2hlbHBlcjsKPiArCj4gKwlpZiAoZmJfaGVs cGVyICYmIGZiX2hlbHBlci0+ZnVuY3MgJiYgZmJfaGVscGVyLT5mdW5jcy0+dW5yZWdpc3RlcikK PiArCQlmYl9oZWxwZXItPmZ1bmNzLT51bnJlZ2lzdGVyKGZiX2hlbHBlcik7Cj4gKwo+ICAJZHJt X2Nvbm5lY3Rvcl91bnJlZ2lzdGVyX2FsbChkZXYpOwo+ICAJZHJtX2VuY29kZXJfdW5yZWdpc3Rl cl9hbGwoZGV2KTsKPiAgCWRybV9jcnRjX3VucmVnaXN0ZXJfYWxsKGRldik7Cj4gQEAgLTQwOCw2 ICs0MTQsNyBAQCBFWFBPUlRfU1lNQk9MKGRybV9tb2RlX2NvbmZpZ19pbml0KTsKPiAgICovCj4g IHZvaWQgZHJtX21vZGVfY29uZmlnX2NsZWFudXAoc3RydWN0IGRybV9kZXZpY2UgKmRldikKPiAg ewo+ICsJc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlciA9IGRldi0+ZmJfaGVscGVyOwo+ ICAJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcjsKPiAgCXN0cnVjdCBkcm1fY29ubmVj dG9yX2xpc3RfaXRlciBjb25uX2l0ZXI7Cj4gIAlzdHJ1Y3QgZHJtX2NydGMgKmNydGMsICpjdDsK PiBAQCAtNDE3LDYgKzQyNCw5IEBAIHZvaWQgZHJtX21vZGVfY29uZmlnX2NsZWFudXAoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKPiAgCXN0cnVjdCBkcm1fcHJvcGVydHlfYmxvYiAqYmxvYiwgKmJ0 Owo+ICAJc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsICpwbHQ7Cj4gIAo+ICsJaWYgKGZiX2hlbHBl ciAmJiBmYl9oZWxwZXItPmZ1bmNzICYmIGZiX2hlbHBlci0+ZnVuY3MtPnJlbGVhc2UpCj4gKwkJ ZmJfaGVscGVyLT5mdW5jcy0+cmVsZWFzZShmYl9oZWxwZXIpOwo+ICsKPiAgCWxpc3RfZm9yX2Vh Y2hfZW50cnlfc2FmZShlbmNvZGVyLCBlbmN0LCAmZGV2LT5tb2RlX2NvbmZpZy5lbmNvZGVyX2xp c3QsCj4gIAkJCQkgaGVhZCkgewo+ICAJCWVuY29kZXItPmZ1bmNzLT5kZXN0cm95KGVuY29kZXIp Owo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3Byb2JlX2hlbHBlci5jIGIvZHJp dmVycy9ncHUvZHJtL2RybV9wcm9iZV9oZWxwZXIuYwo+IGluZGV4IDU1NWZiZTU0ZDZlMi4uOWQ4 YjBiYTU0MTczIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcHJvYmVfaGVscGVy LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3Byb2JlX2hlbHBlci5jCj4gQEAgLTU1OSwx MCArNTU5LDE0IEBAIEVYUE9SVF9TWU1CT0woZHJtX2hlbHBlcl9wcm9iZV9zaW5nbGVfY29ubmVj dG9yX21vZGVzKTsKPiAgICovCj4gIHZvaWQgZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQo+ICB7Cj4gKwlzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJf aGVscGVyID0gZGV2LT5mYl9oZWxwZXI7Cj4gKwo+ICAJLyogc2VuZCBhIHVldmVudCArIGNhbGwg ZmJkZXYgKi8KPiAgCWRybV9zeXNmc19ob3RwbHVnX2V2ZW50KGRldik7Cj4gIAlpZiAoZGV2LT5t b2RlX2NvbmZpZy5mdW5jcy0+b3V0cHV0X3BvbGxfY2hhbmdlZCkKPiAgCQlkZXYtPm1vZGVfY29u ZmlnLmZ1bmNzLT5vdXRwdXRfcG9sbF9jaGFuZ2VkKGRldik7Cj4gKwllbHNlIGlmIChmYl9oZWxw ZXIgJiYgZmJfaGVscGVyLT5mdW5jcyAmJiBmYl9oZWxwZXItPmZ1bmNzLT5ob3RwbHVnX2V2ZW50 KQo+ICsJCWZiX2hlbHBlci0+ZnVuY3MtPmhvdHBsdWdfZXZlbnQoZmJfaGVscGVyKTsKPiAgfQo+ ICBFWFBPUlRfU1lNQk9MKGRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQpOwo+ICAKPiBkaWZm IC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2ZiX2hlbHBlci5oIGIvaW5jbHVkZS9kcm0vZHJtX2Zi X2hlbHBlci5oCj4gaW5kZXggMTZkODc3M2I2MGUzLi4zODVmOTY3YzM1NTIgMTAwNjQ0Cj4gLS0t IGEvaW5jbHVkZS9kcm0vZHJtX2ZiX2hlbHBlci5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2Zi X2hlbHBlci5oCj4gQEAgLTEyNSw2ICsxMjUsMzkgQEAgc3RydWN0IGRybV9mYl9oZWxwZXJfZnVu Y3Mgewo+ICAJCQkgICAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKiptb2RlcywKPiAgCQkJ ICAgICAgIHN0cnVjdCBkcm1fZmJfb2Zmc2V0ICpvZmZzZXRzLAo+ICAJCQkgICAgICAgYm9vbCAq ZW5hYmxlZCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKPiArCj4gKwkvKioKPiArCSAqIEByZXN0 b3JlOgo+ICsJICoKPiArCSAqIE9wdGlvbmFsIGNhbGxiYWNrIGZvciByZXN0b3JpbmcgZmJkZXYg ZW11bGF0aW9uLgo+ICsJICogQ2FsbGVkIGJ5IGRybV9sYXN0Y2xvc2UoKSBpZiAmZHJtX2RyaXZl ci0+bGFzdGNsb3NlIGlzIG5vdCBzZXQuCj4gKwkgKi8KPiArCWludCAoKnJlc3RvcmUpKHN0cnVj dCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIpOwo+ICsKPiArCS8qKgo+ICsJICogQGhvdHBsdWdf ZXZlbnQ6Cj4gKwkgKgo+ICsJICogT3B0aW9uYWwgY2FsbGJhY2sgZm9yIGhvdHBsdWcgZXZlbnRz Lgo+ICsJICogQ2FsbGVkIGJ5IGRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQoKSBpZgo+ICsJ ICogJmRybV9tb2RlX2NvbmZpZ19mdW5jcy0+b3V0cHV0X3BvbGxfY2hhbmdlZCAgaXMgbm90IHNl dC4KPiArCSAqLwo+ICsJaW50ICgqaG90cGx1Z19ldmVudCkoc3RydWN0IGRybV9mYl9oZWxwZXIg KmZiX2hlbHBlcik7Cj4gKwo+ICsJLyoqCj4gKwkgKiBAdW5yZWdpc3RlcjoKPiArCSAqCj4gKwkg KiBPcHRpb25hbCBjYWxsYmFjayBmb3IgdW5yZWdpc3RyZXJpbmcgZmJkZXYgZW11bGF0aW9uLgo+ ICsJICogQ2FsbGVkIGJ5IGRybV9kZXZfdW5yZWdpc3RlcigpLgo+ICsJICovCj4gKwl2b2lkICgq dW5yZWdpc3Rlcikoc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlcik7Cj4gKwo+ICsJLyoq Cj4gKwkgKiBAcmVsZWFzZToKPiArCSAqCj4gKwkgKiBPcHRpb25hbCBjYWxsYmFjayBmb3IgcmVs ZWFzaW5nIGZiZGV2IGVtdWxhdGlvbiByZXNvdXJjZXMuCj4gKwkgKiBDYWxsZWQgYnkgZHJtX21v ZGVfY29uZmlnX2NsZWFudXAoKS4KPiArCSAqLwo+ICsJdm9pZCAoKnJlbGVhc2UpKHN0cnVjdCBk cm1fZmJfaGVscGVyICpmYl9oZWxwZXIpOwo+ICB9Owo+ICAKPiAgc3RydWN0IGRybV9mYl9oZWxw ZXJfY29ubmVjdG9yIHsKPiAtLSAKPiAyLjE0LjIKPiAKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3 YXJlIEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFp bGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK