From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: [PATCH 09/13] drm/fb-helper: Split dpms handling into legacy and atomic paths Date: Tue, 27 Jun 2017 16:59:32 +0200 Message-ID: <20170627145936.18983-10-daniel.vetter@ffwll.ch> References: <20170627145936.18983-1-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170627145936.18983-1-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: DRI Development Cc: Daniel Vetter , Intel Graphics Development , John Stultz , Daniel Vetter , Thierry Reding , Peter Rosin List-Id: dri-devel@lists.freedesktop.org TGlrZSB3aXRoIHBhbm5pbmcgYW5kIG1vZGVzZXR0aW5nLCBhbmQgbGlrZSB3aXRoIHRob3NlLCBz dGljayB3aXRoCnNpbXBsZSBkcm1fbW9kZXNldF9sb2NraW5nX2FsbCBmb3IgdGhlIGxlZ2FjeSBw YXRoLCBhbmQgdGhlIGZ1bGwKYXRvbWljIGRhbmNlIGZvciBhdG9taWMgZHJpdmVycy4KClRoaXMg bWVhbnMgYSBiaXQgbW9yZSBib2lsZXJwbGF0ZSBzaW5jZSBzZXR0aW5nIHVwIHRoZSBhdG9taWMg c3RhdGUKbWFjaGluZXJ5IGlzIHJhdGhlciB2ZXJib3NlLCBidXQgdGhlbiB0aGlzIGlzIHNoYXJl ZCBjb2RlIGZvciAzMCsKZHJpdmVycyBvciBzbywgc28gbWVoLgoKQWZ0ZXIgdGhpcyBwYXRjaCB0 aGVyZSdzIG9ubHkgdGhlIExVVC9jbWFwIHBhdGggd2hpY2ggaXMgc3RpbGwgdXNpbmcKZHJtX21v ZGVzZXRfbG9ja19hbGwgZm9yIGFuIGF0b21pYyBkcml2ZXIuIEJ1dCBQZXRlciBpcyBhbHJlYWR5 CmxvY2tpbmcgaW50byByZXdvcmtpbmcgdGhhdCwgc28gSSdsbCBsZWF2ZSB0aGF0IGNvZGUgYXMt aXMgZm9yIG5vdy4KCkNjOiBQZXRlciBSb3NpbiA8cGVkYUBheGVudGlhLnNlPgpDYzogSm9obiBT dHVsdHogPGpvaG4uc3R1bHR6QGxpbmFyby5vcmc+CkNjOiBUaGllcnJ5IFJlZGluZyA8dHJlZGlu Z0BudmlkaWEuY29tPgpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVy QGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jIHwgODggKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA3 NiBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vZHJtX2ZiX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYwpp bmRleCA1OWUyOTE2NDcxYjIuLmJiZDRjNmQwMzc4ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2RybV9mYl9oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5j CkBAIC02MTYsMjMgKzYxNiwxMyBAQCBzdGF0aWMgc3RydWN0IHN5c3JxX2tleV9vcCBzeXNycV9k cm1fZmJfaGVscGVyX3Jlc3RvcmVfb3AgPSB7CiBzdGF0aWMgc3RydWN0IHN5c3JxX2tleV9vcCBz eXNycV9kcm1fZmJfaGVscGVyX3Jlc3RvcmVfb3AgPSB7IH07CiAjZW5kaWYKIAotc3RhdGljIHZv aWQgZHJtX2ZiX2hlbHBlcl9kcG1zKHN0cnVjdCBmYl9pbmZvICppbmZvLCBpbnQgZHBtc19tb2Rl KQorc3RhdGljIHZvaWQgZHBtc19sZWdhY3koc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBl ciwgaW50IGRwbXNfbW9kZSkKIHsKLQlzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyID0g aW5mby0+cGFyOwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBmYl9oZWxwZXItPmRldjsKIAlz dHJ1Y3QgZHJtX2NydGMgKmNydGM7CiAJc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcjsK IAlpbnQgaSwgajsKIAotCS8qCi0JICogRm9yIGVhY2ggQ1JUQyBpbiB0aGlzIGZiLCB0dXJuIHRo ZSBjb25uZWN0b3JzIG9uL29mZi4KLQkgKi8KLQltdXRleF9sb2NrKCZmYl9oZWxwZXItPmxvY2sp OwotCWlmICghZHJtX2ZiX2hlbHBlcl9pc19ib3VuZChmYl9oZWxwZXIpKSB7Ci0JCW11dGV4X3Vu bG9jaygmZmJfaGVscGVyLT5sb2NrKTsKLQkJcmV0dXJuOwotCX0KLQogCWRybV9tb2Rlc2V0X2xv Y2tfYWxsKGRldik7CiAJZm9yIChpID0gMDsgaSA8IGZiX2hlbHBlci0+Y3J0Y19jb3VudDsgaSsr KSB7CiAJCWNydGMgPSBmYl9oZWxwZXItPmNydGNfaW5mb1tpXS5tb2RlX3NldC5jcnRjOwpAQCAt NjQ5LDYgKzYzOSw4MSBAQCBzdGF0aWMgdm9pZCBkcm1fZmJfaGVscGVyX2RwbXMoc3RydWN0IGZi X2luZm8gKmluZm8sIGludCBkcG1zX21vZGUpCiAJCX0KIAl9CiAJZHJtX21vZGVzZXRfdW5sb2Nr X2FsbChkZXYpOworfQorCitzdGF0aWMgdm9pZCBkcG1zX2F0b21pYyhzdHJ1Y3QgZHJtX2ZiX2hl bHBlciAqZmJfaGVscGVyLCBpbnQgZHBtc19tb2RlKQoreworCXN0cnVjdCBkcm1fZGV2aWNlICpk ZXYgPSBmYl9oZWxwZXItPmRldjsKKwlzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGU7CisJ aW50IGksIHJldDsKKworCXN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCBjdHg7CisKKwlk cm1fbW9kZXNldF9hY3F1aXJlX2luaXQoJmN0eCwgMCk7CisKKwlzdGF0ZSA9IGRybV9hdG9taWNf c3RhdGVfYWxsb2MoZGV2KTsKKwlpZiAoIXN0YXRlKSB7CisJCXJldCA9IC1FTk9NRU07CisJCWdv dG8gb3V0X2N0eDsKKwl9CisKKwlzdGF0ZS0+YWNxdWlyZV9jdHggPSAmY3R4OworcmV0cnk6CisJ Zm9yIChpID0gMDsgaSA8IGZiX2hlbHBlci0+Y3J0Y19jb3VudDsgaSsrKSB7CisJCXN0cnVjdCBk cm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKKwkJc3RydWN0IGRybV9jcnRjICpjcnRjOworCisJ CWlmICghZmJfaGVscGVyLT5jcnRjX2luZm9baV0ubW9kZV9zZXQubW9kZSkKKwkJCWNvbnRpbnVl OworCisJCWNydGMgPSBmYl9oZWxwZXItPmNydGNfaW5mb1tpXS5tb2RlX3NldC5jcnRjOworCisJ CWNydGNfc3RhdGUgPSBkcm1fYXRvbWljX2dldF9jcnRjX3N0YXRlKHN0YXRlLCBjcnRjKTsKKwkJ aWYgKElTX0VSUihjcnRjX3N0YXRlKSkgeworCQkJcmV0ID0gUFRSX0VSUihjcnRjX3N0YXRlKTsK KwkJCWdvdG8gb3V0X3N0YXRlOworCQl9CisKKwkJY3J0Y19zdGF0ZS0+YWN0aXZlID0gZHBtc19t b2RlID09IERSTV9NT0RFX0RQTVNfT047CisJfQorCisJcmV0ID0gZHJtX2F0b21pY19jb21taXQo c3RhdGUpOworb3V0X3N0YXRlOgorCWlmIChyZXQgPT0gLUVERUFETEspCisJCWdvdG8gYmFja29m ZjsKKworCWRybV9hdG9taWNfc3RhdGVfcHV0KHN0YXRlKTsKK291dF9jdHg6CisJZHJtX21vZGVz ZXRfZHJvcF9sb2NrcygmY3R4KTsKKwlkcm1fbW9kZXNldF9hY3F1aXJlX2ZpbmkoJmN0eCk7CisK KwlyZXR1cm47CisKK2JhY2tvZmY6CisJZHJtX2F0b21pY19zdGF0ZV9jbGVhcihzdGF0ZSk7CisJ ZHJtX21vZGVzZXRfYmFja29mZigmY3R4KTsKKworCWdvdG8gcmV0cnk7CisKK30KKworc3RhdGlj IHZvaWQgZHJtX2ZiX2hlbHBlcl9kcG1zKHN0cnVjdCBmYl9pbmZvICppbmZvLCBpbnQgZHBtc19t b2RlKQoreworCXN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIgPSBpbmZvLT5wYXI7CisK KwkvKgorCSAqIEZvciBlYWNoIENSVEMgaW4gdGhpcyBmYiwgdHVybiB0aGUgY29ubmVjdG9ycyBv bi9vZmYuCisJICovCisJbXV0ZXhfbG9jaygmZmJfaGVscGVyLT5sb2NrKTsKKwlpZiAoIWRybV9m Yl9oZWxwZXJfaXNfYm91bmQoZmJfaGVscGVyKSkgeworCQltdXRleF91bmxvY2soJmZiX2hlbHBl ci0+bG9jayk7CisJCXJldHVybjsKKwl9CisKKwlpZiAoZHJtX2Rydl91c2VzX2F0b21pY19tb2Rl c2V0KGZiX2hlbHBlci0+ZGV2KSkKKwkJZHBtc19hdG9taWMoZmJfaGVscGVyLCBkcG1zX21vZGUp OworCWVsc2UKKwkJZHBtc19sZWdhY3koZmJfaGVscGVyLCBkcG1zX21vZGUpOwogCW11dGV4X3Vu bG9jaygmZmJfaGVscGVyLT5sb2NrKTsKIH0KIApAQCAtMjQ2Nyw3ICsyNTMyLDYgQEAgRVhQT1JU X1NZTUJPTChkcm1fZmJfaGVscGVyX2luaXRpYWxfY29uZmlnKTsKICAqLwogaW50IGRybV9mYl9o ZWxwZXJfaG90cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyKQogewot CXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBmYl9oZWxwZXItPmRldjsKIAlpbnQgZXJyID0gMDsK IAogCWlmICghZHJtX2ZiZGV2X2VtdWxhdGlvbikKLS0gCjIuMTEuMAoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJ bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==