From mboxrd@z Thu Jan 1 00:00:00 1970 From: Subject: [PATCH xf86-video-amdgpu 09/13] Move drmmode_do_crtc_dpms Date: Thu, 3 May 2018 14:31:51 -0400 Message-ID: <1525372315-28462-10-git-send-email-sunpeng.li@amd.com> References: <1525372315-28462-1-git-send-email-sunpeng.li@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1525372315-28462-1-git-send-email-sunpeng.li-5C7GfCeVMHo@public.gmane.org> List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: amd-gfx-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "amd-gfx" To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: "Leo (Sunpeng) Li" , michel-otUistvHUpPR7s880joybQ@public.gmane.org, harry.wentland-5C7GfCeVMHo@public.gmane.org RnJvbTogIkxlbyAoU3VucGVuZykgTGkiIDxzdW5wZW5nLmxpQGFtZC5jb20+CgpUbyBhdm9pZCBm b3J3YXJkIGRlY2xhcmF0aW9ucyBpbiB1cGNvbW1pbmcgY2hhbmdlcwoKU2lnbmVkLW9mZi1ieTog TGVvIChTdW5wZW5nKSBMaSA8c3VucGVuZy5saUBhbWQuY29tPgotLS0KIHNyYy9kcm1tb2RlX2Rp c3BsYXkuYyB8IDExOCArKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDU5IGluc2VydGlvbnMoKyksIDU5IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyYy9kcm1tb2RlX2Rpc3BsYXkuYyBiL3NyYy9kcm1tb2RlX2Rpc3Bs YXkuYwppbmRleCBmODZmOTlhLi40NWM1ODJjIDEwMDY0NAotLS0gYS9zcmMvZHJtbW9kZV9kaXNw bGF5LmMKKysrIGIvc3JjL2RybW1vZGVfZGlzcGxheS5jCkBAIC0yNzYsNjUgKzI3Niw2IEBAIGlu dCBkcm1tb2RlX2NydGNfZ2V0X3VzdF9tc2MoeGY4NkNydGNQdHIgY3J0YywgQ0FSRDY0ICp1c3Qs IENBUkQ2NCAqbXNjKQogfQogCiBzdGF0aWMgdm9pZAotZHJtbW9kZV9kb19jcnRjX2RwbXMoeGY4 NkNydGNQdHIgY3J0YywgaW50IG1vZGUpCi17Ci0JZHJtbW9kZV9jcnRjX3ByaXZhdGVfcHRyIGRy bW1vZGVfY3J0YyA9IGNydGMtPmRyaXZlcl9wcml2YXRlOwotCVNjcm5JbmZvUHRyIHNjcm4gPSBj cnRjLT5zY3JuOwotCUFNREdQVUVudFB0ciBwQU1ER1BVRW50ID0gQU1ER1BVRW50UHJpdihzY3Ju KTsKLQlDQVJENjQgdXN0OwotCWludCByZXQ7Ci0KLQlpZiAoZHJtbW9kZV9jcnRjLT5kcG1zX21v ZGUgPT0gRFBNU01vZGVPbiAmJiBtb2RlICE9IERQTVNNb2RlT24pIHsKLQkJdWludDMyX3Qgc2Vx OwotCi0JCWRybW1vZGVfY3J0Y193YWl0X3BlbmRpbmdfZXZlbnQoZHJtbW9kZV9jcnRjLCBwQU1E R1BVRW50LT5mZCwKLQkJCQkJCWRybW1vZGVfY3J0Yy0+ZmxpcF9wZW5kaW5nKTsKLQotCQkvKgot CQkgKiBPbi0+T2ZmIHRyYW5zaXRpb246IHJlY29yZCB0aGUgbGFzdCB2YmxhbmsgdGltZSwKLQkJ ICogc2VxdWVuY2UgbnVtYmVyIGFuZCBmcmFtZSBwZXJpb2QuCi0JCSAqLwotCQlpZiAoIWRybW1v ZGVfd2FpdF92YmxhbmsoY3J0YywgRFJNX1ZCTEFOS19SRUxBVElWRSwgMCwgMCwgJnVzdCwKLQkJ CQkJICZzZXEpKQotCQkJeGY4NkRydk1zZyhzY3JuLT5zY3JuSW5kZXgsIFhfRVJST1IsCi0JCQkJ ICAgIiVzIGNhbm5vdCBnZXQgbGFzdCB2YmxhbmsgY291bnRlclxuIiwKLQkJCQkgICBfX2Z1bmNf Xyk7Ci0JCWVsc2UgewotCQkJQ0FSRDY0IG5vbWluYWxfZnJhbWVfcmF0ZSwgcGl4X2luX2ZyYW1l OwotCi0JCQlkcm1tb2RlX2NydGMtPmRwbXNfbGFzdF91c3QgPSB1c3Q7Ci0JCQlkcm1tb2RlX2Ny dGMtPmRwbXNfbGFzdF9zZXEgPSBzZXE7Ci0JCQlub21pbmFsX2ZyYW1lX3JhdGUgPSBjcnRjLT5t b2RlLkNsb2NrOwotCQkJbm9taW5hbF9mcmFtZV9yYXRlICo9IDEwMDA7Ci0JCQlwaXhfaW5fZnJh bWUgPSBjcnRjLT5tb2RlLkhUb3RhbCAqIGNydGMtPm1vZGUuVlRvdGFsOwotCQkJaWYgKG5vbWlu YWxfZnJhbWVfcmF0ZSA9PSAwIHx8IHBpeF9pbl9mcmFtZSA9PSAwKQotCQkJCW5vbWluYWxfZnJh bWVfcmF0ZSA9IERFRkFVTFRfTk9NSU5BTF9GUkFNRV9SQVRFOwotCQkJZWxzZQotCQkJCW5vbWlu YWxfZnJhbWVfcmF0ZSAvPSBwaXhfaW5fZnJhbWU7Ci0JCQlkcm1tb2RlX2NydGMtPmRwbXNfbGFz dF9mcHMgPSBub21pbmFsX2ZyYW1lX3JhdGU7Ci0JCX0KLQl9IGVsc2UgaWYgKGRybW1vZGVfY3J0 Yy0+ZHBtc19tb2RlICE9IERQTVNNb2RlT24gJiYgbW9kZSA9PSBEUE1TTW9kZU9uKSB7Ci0JCS8q Ci0JCSAqIE9mZi0+T24gdHJhbnNpdGlvbjogY2FsY3VsYXRlIGFuZCBhY2N1bXVsYXRlIHRoZQot CQkgKiBudW1iZXIgb2YgaW50ZXJwb2xhdGVkIHZibGFua3Mgd2hpbGUgd2Ugd2VyZSBpbiBPZmYg c3RhdGUKLQkJICovCi0JCXJldCA9IGRybW1vZGVfZ2V0X2N1cnJlbnRfdXN0KHBBTURHUFVFbnQt PmZkLCAmdXN0KTsKLQkJaWYgKHJldCkKLQkJCXhmODZEcnZNc2coc2Nybi0+c2NybkluZGV4LCBY X0VSUk9SLAotCQkJCSAgICIlcyBjYW5ub3QgZ2V0IGN1cnJlbnQgdGltZVxuIiwgX19mdW5jX18p OwotCQllbHNlIGlmIChkcm1tb2RlX2NydGMtPmRwbXNfbGFzdF91c3QpIHsKLQkJCUNBUkQ2NCB0 aW1lX2VsYXBzZWQsIGRlbHRhX3NlcTsKLQkJCXRpbWVfZWxhcHNlZCA9IHVzdCAtIGRybW1vZGVf Y3J0Yy0+ZHBtc19sYXN0X3VzdDsKLQkJCWRlbHRhX3NlcSA9IHRpbWVfZWxhcHNlZCAqIGRybW1v ZGVfY3J0Yy0+ZHBtc19sYXN0X2ZwczsKLQkJCWRlbHRhX3NlcSAvPSAxMDAwMDAwOwotCQkJZHJt bW9kZV9jcnRjLT5pbnRlcnBvbGF0ZWRfdmJsYW5rcyArPSBkZWx0YV9zZXE7Ci0KLQkJfQotCX0K LQlkcm1tb2RlX2NydGMtPmRwbXNfbW9kZSA9IG1vZGU7Ci19Ci0KLXN0YXRpYyB2b2lkCiBkcm1t b2RlX2NydGNfZHBtcyh4Zjg2Q3J0Y1B0ciBjcnRjLCBpbnQgbW9kZSkKIHsKIAlkcm1tb2RlX2Ny dGNfcHJpdmF0ZV9wdHIgZHJtbW9kZV9jcnRjID0gY3J0Yy0+ZHJpdmVyX3ByaXZhdGU7CkBAIC0x MzQ2LDYgKzEyODcsNjUgQEAgc3RhdGljIGludCBkcm1tb2RlX2NydGNfcHVzaF9jbV9wcm9wKHhm ODZDcnRjUHRyIGNydGMsCiB9CiAKIHN0YXRpYyB2b2lkCitkcm1tb2RlX2RvX2NydGNfZHBtcyh4 Zjg2Q3J0Y1B0ciBjcnRjLCBpbnQgbW9kZSkKK3sKKwlkcm1tb2RlX2NydGNfcHJpdmF0ZV9wdHIg ZHJtbW9kZV9jcnRjID0gY3J0Yy0+ZHJpdmVyX3ByaXZhdGU7CisJU2NybkluZm9QdHIgc2NybiA9 IGNydGMtPnNjcm47CisJQU1ER1BVRW50UHRyIHBBTURHUFVFbnQgPSBBTURHUFVFbnRQcml2KHNj cm4pOworCUNBUkQ2NCB1c3Q7CisJaW50IHJldDsKKworCWlmIChkcm1tb2RlX2NydGMtPmRwbXNf bW9kZSA9PSBEUE1TTW9kZU9uICYmIG1vZGUgIT0gRFBNU01vZGVPbikgeworCQl1aW50MzJfdCBz ZXE7CisKKwkJZHJtbW9kZV9jcnRjX3dhaXRfcGVuZGluZ19ldmVudChkcm1tb2RlX2NydGMsIHBB TURHUFVFbnQtPmZkLAorCQkJCQkJZHJtbW9kZV9jcnRjLT5mbGlwX3BlbmRpbmcpOworCisJCS8q CisJCSAqIE9uLT5PZmYgdHJhbnNpdGlvbjogcmVjb3JkIHRoZSBsYXN0IHZibGFuayB0aW1lLAor CQkgKiBzZXF1ZW5jZSBudW1iZXIgYW5kIGZyYW1lIHBlcmlvZC4KKwkJICovCisJCWlmICghZHJt bW9kZV93YWl0X3ZibGFuayhjcnRjLCBEUk1fVkJMQU5LX1JFTEFUSVZFLCAwLCAwLCAmdXN0LAor CQkJCQkgJnNlcSkpCisJCQl4Zjg2RHJ2TXNnKHNjcm4tPnNjcm5JbmRleCwgWF9FUlJPUiwKKwkJ CQkgICAiJXMgY2Fubm90IGdldCBsYXN0IHZibGFuayBjb3VudGVyXG4iLAorCQkJCSAgIF9fZnVu Y19fKTsKKwkJZWxzZSB7CisJCQlDQVJENjQgbm9taW5hbF9mcmFtZV9yYXRlLCBwaXhfaW5fZnJh bWU7CisKKwkJCWRybW1vZGVfY3J0Yy0+ZHBtc19sYXN0X3VzdCA9IHVzdDsKKwkJCWRybW1vZGVf Y3J0Yy0+ZHBtc19sYXN0X3NlcSA9IHNlcTsKKwkJCW5vbWluYWxfZnJhbWVfcmF0ZSA9IGNydGMt Pm1vZGUuQ2xvY2s7CisJCQlub21pbmFsX2ZyYW1lX3JhdGUgKj0gMTAwMDsKKwkJCXBpeF9pbl9m cmFtZSA9IGNydGMtPm1vZGUuSFRvdGFsICogY3J0Yy0+bW9kZS5WVG90YWw7CisJCQlpZiAobm9t aW5hbF9mcmFtZV9yYXRlID09IDAgfHwgcGl4X2luX2ZyYW1lID09IDApCisJCQkJbm9taW5hbF9m cmFtZV9yYXRlID0gREVGQVVMVF9OT01JTkFMX0ZSQU1FX1JBVEU7CisJCQllbHNlCisJCQkJbm9t aW5hbF9mcmFtZV9yYXRlIC89IHBpeF9pbl9mcmFtZTsKKwkJCWRybW1vZGVfY3J0Yy0+ZHBtc19s YXN0X2ZwcyA9IG5vbWluYWxfZnJhbWVfcmF0ZTsKKwkJfQorCX0gZWxzZSBpZiAoZHJtbW9kZV9j cnRjLT5kcG1zX21vZGUgIT0gRFBNU01vZGVPbiAmJiBtb2RlID09IERQTVNNb2RlT24pIHsKKwkJ LyoKKwkJICogT2ZmLT5PbiB0cmFuc2l0aW9uOiBjYWxjdWxhdGUgYW5kIGFjY3VtdWxhdGUgdGhl CisJCSAqIG51bWJlciBvZiBpbnRlcnBvbGF0ZWQgdmJsYW5rcyB3aGlsZSB3ZSB3ZXJlIGluIE9m ZiBzdGF0ZQorCQkgKi8KKwkJcmV0ID0gZHJtbW9kZV9nZXRfY3VycmVudF91c3QocEFNREdQVUVu dC0+ZmQsICZ1c3QpOworCQlpZiAocmV0KQorCQkJeGY4NkRydk1zZyhzY3JuLT5zY3JuSW5kZXgs IFhfRVJST1IsCisJCQkJICAgIiVzIGNhbm5vdCBnZXQgY3VycmVudCB0aW1lXG4iLCBfX2Z1bmNf Xyk7CisJCWVsc2UgaWYgKGRybW1vZGVfY3J0Yy0+ZHBtc19sYXN0X3VzdCkgeworCQkJQ0FSRDY0 IHRpbWVfZWxhcHNlZCwgZGVsdGFfc2VxOworCQkJdGltZV9lbGFwc2VkID0gdXN0IC0gZHJtbW9k ZV9jcnRjLT5kcG1zX2xhc3RfdXN0OworCQkJZGVsdGFfc2VxID0gdGltZV9lbGFwc2VkICogZHJt bW9kZV9jcnRjLT5kcG1zX2xhc3RfZnBzOworCQkJZGVsdGFfc2VxIC89IDEwMDAwMDA7CisJCQlk cm1tb2RlX2NydGMtPmludGVycG9sYXRlZF92YmxhbmtzICs9IGRlbHRhX3NlcTsKKwkJfQorCisJ fQorCWRybW1vZGVfY3J0Yy0+ZHBtc19tb2RlID0gbW9kZTsKK30KKworc3RhdGljIHZvaWQKIGRy bW1vZGVfY3J0Y19nYW1tYV9kb19zZXQoeGY4NkNydGNQdHIgY3J0YywgdWludDE2X3QgKnJlZCwg dWludDE2X3QgKmdyZWVuLAogCQkJICB1aW50MTZfdCAqYmx1ZSwgaW50IHNpemUpCiB7Ci0tIAoy LjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYW1k LWdmeCBtYWlsaW5nIGxpc3QKYW1kLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9hbWQtZ2Z4Cg==