From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH 09/13] drm/fb-helper: Split dpms handling into legacy and atomic paths Date: Thu, 29 Jun 2017 13:23:46 +0200 Message-ID: <01e2d2d9-cf1b-c9e0-425f-ffa90e351457@linux.intel.com> References: <20170627145936.18983-1-daniel.vetter@ffwll.ch> <20170627145936.18983-10-daniel.vetter@ffwll.ch> <28764010-74e0-5049-ee9c-9ddc944efb20@linux.intel.com> <45b24a01-ade9-f8df-d6c9-99ea9cc4309a@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Daniel Vetter , Intel Graphics Development , Thierry Reding , Peter Rosin , DRI Development List-Id: dri-devel@lists.freedesktop.org T3AgMjktMDYtMTcgb20gMTM6MDAgc2NocmVlZiBEYW5pZWwgVmV0dGVyOgo+IE9uIFRodSwgSnVu IDI5LCAyMDE3IGF0IDEyOjU4IFBNLCBNYWFydGVuIExhbmtob3JzdAo+IDxtYWFydGVuLmxhbmto b3JzdEBsaW51eC5pbnRlbC5jb20+IHdyb3RlOgo+PiBPcCAyOS0wNi0xNyBvbSAxMjozMSBzY2hy ZWVmIERhbmllbCBWZXR0ZXI6Cj4+PiBPbiBUaHUsIEp1biAyOSwgMjAxNyBhdCAxMjoyMiBQTSwg TWFhcnRlbiBMYW5raG9yc3QKPj4+IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+ IHdyb3RlOgo+Pj4+PiArc3RhdGljIHZvaWQgZHBtc19hdG9taWMoc3RydWN0IGRybV9mYl9oZWxw ZXIgKmZiX2hlbHBlciwgaW50IGRwbXNfbW9kZSkKPj4+Pj4gK3sKPj4+Pj4gKyAgICAgc3RydWN0 IGRybV9kZXZpY2UgKmRldiA9IGZiX2hlbHBlci0+ZGV2Owo+Pj4+PiArICAgICBzdHJ1Y3QgZHJt X2F0b21pY19zdGF0ZSAqc3RhdGU7Cj4+Pj4+ICsgICAgIGludCBpLCByZXQ7Cj4+Pj4+ICsKPj4+ Pj4gKyAgICAgc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4IGN0eDsKPj4+Pj4gKwo+Pj4+ PiArICAgICBkcm1fbW9kZXNldF9hY3F1aXJlX2luaXQoJmN0eCwgMCk7Cj4+Pj4+ICsKPj4+Pj4g KyAgICAgc3RhdGUgPSBkcm1fYXRvbWljX3N0YXRlX2FsbG9jKGRldik7Cj4+Pj4+ICsgICAgIGlm ICghc3RhdGUpIHsKPj4+Pj4gKyAgICAgICAgICAgICByZXQgPSAtRU5PTUVNOwo+Pj4+PiArICAg ICAgICAgICAgIGdvdG8gb3V0X2N0eDsKPj4+Pj4gKyAgICAgfQo+Pj4+PiArCj4+Pj4+ICsgICAg IHN0YXRlLT5hY3F1aXJlX2N0eCA9ICZjdHg7Cj4+Pj4+ICtyZXRyeToKPj4+Pj4gKyAgICAgZm9y IChpID0gMDsgaSA8IGZiX2hlbHBlci0+Y3J0Y19jb3VudDsgaSsrKSB7Cj4+Pj4+ICsgICAgICAg ICAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+Pj4+PiArICAgICAgICAg ICAgIHN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKPj4+Pj4gKwo+Pj4+PiArICAgICAgICAgICAgIGlm ICghZmJfaGVscGVyLT5jcnRjX2luZm9baV0ubW9kZV9zZXQubW9kZSkKPj4+Pj4gKyAgICAgICAg ICAgICAgICAgICAgIGNvbnRpbnVlOwo+Pj4+PiArCj4+Pj4+ICsgICAgICAgICAgICAgY3J0YyA9 IGZiX2hlbHBlci0+Y3J0Y19pbmZvW2ldLm1vZGVfc2V0LmNydGM7Cj4+Pj4+ICsKPj4+Pj4gKyAg ICAgICAgICAgICBjcnRjX3N0YXRlID0gZHJtX2F0b21pY19nZXRfY3J0Y19zdGF0ZShzdGF0ZSwg Y3J0Yyk7Cj4+Pj4+ICsgICAgICAgICAgICAgaWYgKElTX0VSUihjcnRjX3N0YXRlKSkgewo+Pj4+ PiArICAgICAgICAgICAgICAgICAgICAgcmV0ID0gUFRSX0VSUihjcnRjX3N0YXRlKTsKPj4+Pj4g KyAgICAgICAgICAgICAgICAgICAgIGdvdG8gb3V0X3N0YXRlOwo+Pj4+PiArICAgICAgICAgICAg IH0KPj4+PiBIbSwgbWF5YmUgcmVtb3ZlIHRoZSBlYXJseSBjb250aW51ZSwgYW5kIGNoYW5nZSB0 aGlzIHRvIGlmIChjcnRjX3N0YXRlLT5lbmFibGUpIGNydGNfc3RhdGUtPmFjdGl2ZSA9IC4uLjsg Pwo+Pj4+Cj4+Pj4gSSBkb24ndCBrbm93IGlmIGl0IG1hdHRlcnMgaW4gcHJhY3RpY2UsIGJ1dCBp dCBtaWdodCBiZSBtb3JlIHJlc2lsaWVudCB3aGVuIGNydGMgc3RhdGUgZG9lcyBub3QgbWF0Y2gg b3VyIGV4cGVjdGVkIHN0YXRlLAo+Pj4+IHNpbWlsYXIgdG8gaG93IERQTVMgb24gaXMgaWdub3Jl ZCB3aXRob3V0IENSVEMuCj4+PiBJIGp1c3QgYmxpbmRseSBzbWFzaGVkIHRoZSBvbGQgZmJkZXYg Y29kZSBpbiB3aXRoIHRoZSBoZWxwZXIgYW5kIG1vdmVkCj4+PiB0aGUgbG9ja2luZyBvdXQuIE5v dCBzdXJlIHdoYXQgd291bGQgYmUgYmV0dGVyIGhlcmUsIHNpbmNlIHRoZQo+Pj4gY29udGludWUg aXMgaW4gYSB3YXkganVzdCBwYXJ0IG9mIGEgbm9uLWV4aXN0ZW50Cj4+PiBkcm1fZmJfaGVscGVy X2Zvcl9lYWNoX2FjdGl2ZV9jcnRjIGxvb3AgaXRlcmF0b3IuIE5vdCBzdXJlIGl0J3Mgd29ydGgK Pj4+IGl0IHRvIG92ZXJwb2xpc2ggdGhpcyBjb2RlIHRvIHN1Y2ggYW4gZXh0ZW50IDotKQo+Pj4g LURhbmllbAo+PiBXZWxsIGNoZWNraW5nIGZvciBjcnRjX3N0YXRlLT5lbmFibGUgaW5zdGVhZCBv ZiBtb2RlX3NldC5tb2RlIHByb2JhYmx5IG1lYW5zIHdlJ3JlIGF0IGxlYXN0IGJ1ZyBmb3IgYnVn Cj4+IGNvbXBhdGlibGUgdnMgbGVnYWN5LiBJdCBtaWdodCBiZSBiZXR0ZXIgdG8gYWRkIGEgYm9v bCBhY3RpdmUgdG8gcmVzdG9yZV9mYmRldl9tb2RlX2F0b21pYy4KPj4KPj4gV2hhdCBhYm91dCBz b21ldGhpbmcgbGlrZSB0aGlzPyBUaGUgbGVzcyBhdG9taWMgY29tbWl0cyB0aGUgYmV0dGVyLiA6 KQo+IEhtIHllYWgsIHRoYXQgc291bmRzIGxpa2UgYSB1c2VmdWwgc2ltcGxpZmljYXRpb24uIEkg ZG9uJ3QgdGhpbmsgd2UKPiBzaG91bGQgZG8gdG9vIG11Y2ggaW50byBleHRyZW1lcyBpbiBmYmRl diBhbmQgb25seSBoYXZlIDEgYXRvbWljCj4gY29tbWl0LCBiZWNhdXNlIGZiZGV2IGZ1bmRhbWVu dGFsbHkgaXNuJ3QgYXRvbWljLiBCdXQgbWVyZ2luZyB0aGVtCj4gd2hlcmUgaXQgbWFrZXMgc2Vu c2UgaXMgcmVhc29uYWJsZS4KPiAtRGFuaWVsCgpBZ3JlZWQsIHBlcmhhcHMgd2l0aCBwYW5fZGlz cGxheV9hdG9taWMgdG9vLCBpZiB3ZSBubyBsb25nZXIgdXNlIG1vZGVzZXQgbG9ja3MsCnRoZW4g aXQgYmVjb21lcyB2ZXJ5IHNpbXBsZS4uCldoYXQgYWJvdXQgZ2V0dGluZyByaWQgb2YgdGhhdCBv bmUgdG9vLCBpbiBmYXZvciBvZiB0aGlzPwoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9k cm1fZmJfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jCmluZGV4IDBj ZDIwMzVhYzFkMS4uYjQzNTZmZGY1ZTZkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJt X2ZiX2hlbHBlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKQEAgLTE1 NTcsNzAgKzE1NTcsMzYgQEAgaW50IGRybV9mYl9oZWxwZXJfc2V0X3BhcihzdHJ1Y3QgZmJfaW5m byAqaW5mbykKIH0KIEVYUE9SVF9TWU1CT0woZHJtX2ZiX2hlbHBlcl9zZXRfcGFyKTsKIAotc3Rh dGljIGludCBwYW5fZGlzcGxheV9hdG9taWMoc3RydWN0IGZiX3Zhcl9zY3JlZW5pbmZvICp2YXIs Ci0JCQkgICAgICBzdHJ1Y3QgZmJfaW5mbyAqaW5mbykKK3N0YXRpYyB2b2lkIHBhbl9zZXQoc3Ry dWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlciwgaW50IHgsIGludCB5KQogewotCXN0cnVjdCBk cm1fZmJfaGVscGVyICpmYl9oZWxwZXIgPSBpbmZvLT5wYXI7Ci0Jc3RydWN0IGRybV9kZXZpY2Ug KmRldiA9IGZiX2hlbHBlci0+ZGV2OwotCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZTsK LQlzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZTsKLQlpbnQgaSwgcmV0OwotCXVuc2lnbmVkIGludCBw bGFuZV9tYXNrOwotCXN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCBjdHg7Ci0KLQlkcm1f bW9kZXNldF9hY3F1aXJlX2luaXQoJmN0eCwgMCk7Ci0KLQlzdGF0ZSA9IGRybV9hdG9taWNfc3Rh dGVfYWxsb2MoZGV2KTsKLQlpZiAoIXN0YXRlKSB7Ci0JCXJldCA9IC1FTk9NRU07Ci0JCWdvdG8g b3V0X2N0eDsKLQl9CisJaW50IGk7CiAKLQlzdGF0ZS0+YWNxdWlyZV9jdHggPSAmY3R4OwotcmV0 cnk6Ci0JcGxhbmVfbWFzayA9IDA7CiAJZm9yIChpID0gMDsgaSA8IGZiX2hlbHBlci0+Y3J0Y19j b3VudDsgaSsrKSB7CiAJCXN0cnVjdCBkcm1fbW9kZV9zZXQgKm1vZGVfc2V0OwogCiAJCW1vZGVf c2V0ID0gJmZiX2hlbHBlci0+Y3J0Y19pbmZvW2ldLm1vZGVfc2V0OwogCi0JCW1vZGVfc2V0LT54 ID0gdmFyLT54b2Zmc2V0OwotCQltb2RlX3NldC0+eSA9IHZhci0+eW9mZnNldDsKLQotCQlyZXQg PSBfX2RybV9hdG9taWNfaGVscGVyX3NldF9jb25maWcobW9kZV9zZXQsIHN0YXRlKTsKLQkJaWYg KHJldCAhPSAwKQotCQkJZ290byBvdXRfc3RhdGU7Ci0KLQkJcGxhbmUgPSBtb2RlX3NldC0+Y3J0 Yy0+cHJpbWFyeTsKLQkJcGxhbmVfbWFzayB8PSAoMSA8PCBkcm1fcGxhbmVfaW5kZXgocGxhbmUp KTsKLQkJcGxhbmUtPm9sZF9mYiA9IHBsYW5lLT5mYjsKKwkJbW9kZV9zZXQtPnggPSB4OworCQlt b2RlX3NldC0+eSA9IHk7CiAJfQorfQogCi0JcmV0ID0gZHJtX2F0b21pY19jb21taXQoc3RhdGUp OwotCWlmIChyZXQgIT0gMCkKLQkJZ290byBvdXRfc3RhdGU7Ci0KLQlpbmZvLT52YXIueG9mZnNl dCA9IHZhci0+eG9mZnNldDsKLQlpbmZvLT52YXIueW9mZnNldCA9IHZhci0+eW9mZnNldDsKK3N0 YXRpYyBpbnQgcGFuX2Rpc3BsYXlfYXRvbWljKHN0cnVjdCBmYl92YXJfc2NyZWVuaW5mbyAqdmFy LAorCQkJICAgICAgc3RydWN0IGZiX2luZm8gKmluZm8pCit7CisJc3RydWN0IGRybV9mYl9oZWxw ZXIgKmZiX2hlbHBlciA9IGluZm8tPnBhcjsKKwlpbnQgcmV0OwogCi1vdXRfc3RhdGU6Ci0JZHJt X2F0b21pY19jbGVhbl9vbGRfZmIoZGV2LCBwbGFuZV9tYXNrLCByZXQpOworCXBhbl9zZXQoZmJf aGVscGVyLCB2YXItPnhvZmZzZXQsIHZhci0+eW9mZnNldCk7CiAKLQlpZiAocmV0ID09IC1FREVB RExLKQotCQlnb3RvIGJhY2tvZmY7Ci0KLQlkcm1fYXRvbWljX3N0YXRlX3B1dChzdGF0ZSk7Ci1v dXRfY3R4OgotCWRybV9tb2Rlc2V0X2Ryb3BfbG9ja3MoJmN0eCk7Ci0JZHJtX21vZGVzZXRfYWNx dWlyZV9maW5pKCZjdHgpOworCXJldCA9IHJlc3RvcmVfZmJkZXZfbW9kZShmYl9oZWxwZXIpOwor CWlmICghcmV0KSB7CisJCWluZm8tPnZhci54b2Zmc2V0ID0gdmFyLT54b2Zmc2V0OworCQlpbmZv LT52YXIueW9mZnNldCA9IHZhci0+eW9mZnNldDsKKwl9IGVsc2UKKwkJcGFuX3NldChmYl9oZWxw ZXIsIGluZm8tPnZhci54b2Zmc2V0LCBpbmZvLT52YXIueW9mZnNldCk7CiAKIAlyZXR1cm4gcmV0 OwotCi1iYWNrb2ZmOgotCWRybV9hdG9taWNfc3RhdGVfY2xlYXIoc3RhdGUpOwotCWRybV9tb2Rl c2V0X2JhY2tvZmYoJmN0eCk7Ci0KLQlnb3RvIHJldHJ5OwogfQogCiBzdGF0aWMgaW50IHBhbl9k aXNwbGF5X2xlZ2FjeShzdHJ1Y3QgZmJfdmFyX3NjcmVlbmluZm8gKnZhciwKCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK