From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mario Kleiner Subject: [PATCH] drm/amd/display: Use vrr friendly pageflip throttling in DC. Date: Sat, 9 Feb 2019 07:52:55 +0100 Message-ID: <20190209065255.9480-1-mario.kleiner.de@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: amd-gfx@lists.freedesktop.org Cc: =?UTF-8?q?Michel=20D=C3=A4nzer?= , stable@vger.kernel.org, dri-devel@lists.freedesktop.org, Alex Deucher , Nicholas Kazlauskas List-Id: dri-devel@lists.freedesktop.org SW4gVlJSIG1vZGUsIGtlZXAgdHJhY2sgb2YgdGhlIHZibGFuayBjb3VudCBvZiB0aGUgbGFzdApj b21wbGV0ZWQgcGFnZWZsaXAgaW4gYW1kZ3B1X2NydGMtPmxhc3RfZmxpcF92YmxhbmssIGFzCnJl Y29yZGVkIGluIHRoZSBwYWdlZmxpcCBjb21wbGV0aW9uIGhhbmRsZXIgYWZ0ZXIgZWFjaApjb21w bGV0ZWQgZmxpcC4KClVzZSB0aGF0IGNvdW50IHRvIHByZXZlbnQgbW1pbyBwcm9ncmFtbWluZyBh IG5ldyBwYWdlZmxpcAp3aXRoaW4gdGhlIHNhbWUgdmJsYW5rIGluIHdoaWNoIHRoZSBsYXN0IHBh Z2VmbGlwIGNvbXBsZXRlZCwKaW93LiB0byB0aHJvdHRsZSBwYWdlZmxpcHMgdG8gYXQgbW9zdCBv bmUgZmxpcCBwZXIgdmlkZW8KZnJhbWUsIHdoaWxlIGF0IHRoZSBzYW1lIHRpbWUgYWxsb3dpbmcg dG8gcmVxdWVzdCBhIGZsaXAKbm90IG9ubHkgYmVmb3JlIHN0YXJ0IG9mIHZibGFuaywgYnV0IGFs c28gYW55d2hlcmUgd2l0aGluCnZibGFuay4KClRoZSBvbGQgbG9naWMgZGlkIHRoZSBzYW1lLCBh bmQgbWFkZSBzZW5zZSBmb3IgcmVndWxhciBmaXhlZApyZWZyZXNoIHJhdGUgZmxpcHBpbmcsIGJ1 dCBpbiB2cnIgbW9kZSBpdCBwcmV2ZW50cyByZXF1ZXN0aW5nCmEgZmxpcCBhbnl3aGVyZSBpbnNp ZGUgdGhlIHBvc3NpYmx5IGh1Z2UgdmJsYW5rLCB0aGVyZWJ5CnJlZHVjaW5nIGZyYW1lcmF0ZSBp biB2cnIgbW9kZSBpbnN0ZWFkIG9mIGltcHJvdmluZyBpdCwgYnkKZGVsYXlpbmcgYSBzbGlnaHRs eSBkZWxheWVkIGZsaXAgcmVxdWVzdHMgdXAgdG8gYSBtYXhpbXVtCnZibGFuayBkdXJhdGlvbiAr IDEgc2Nhbm91dCBkdXJhdGlvbi4gVGhpcyB3b3VsZCBsaW1pdCBWUlIKdXNlZnVsbmVzcyB0byBv bmx5IGhlbHAgYXBwbGljYXRpb25zIHdpdGggYSB2ZXJ5IGhpZ2ggR1BVCmRlbWFuZCwgd2hpY2gg Y2FuIHN1Ym1pdCB0aGUgZmxpcCByZXF1ZXN0IGJlZm9yZSBzdGFydCBvZgp2YmxhbmssIGJ1dCB0 aGVuIGhhdmUgdG8gd2FpdCBsb25nIGZvciBmZW5jZXMgdG8gY29tcGxldGUuCgpXaXRoIHRoaXMg bWV0aG9kIGEgZmxpcCBjYW4gYmUgYm90aCByZXF1ZXN0ZWQgYW5kIC0gYWZ0ZXIKZmVuY2VzIGhh dmUgY29tcGxldGVkIC0gZXhlY3V0ZWQsIGllLiBpdCBkb2Vzbid0IG1hdHRlciBpZgp0aGUgcmVx dWVzdCAoYW1kZ3B1X2RtX2RvX2ZsaXAoKSkgZ2V0cyBkZWxheWVkIHVudGlsIGRlZXAKaW50byB0 aGUgZXh0ZW5kZWQgdmJsYW5rIGR1ZSB0byBjcHUgZXhlY3V0aW9uIGRlbGF5cy4gVGhpcwphbHNv IGFsbG93cyBjbGllbnRzIHdoaWNoIHdhbnQgdG8gcmVndWxhdGUgZnJhbWVyYXRlIHdpdGhpbgp0 aGUgdnJyIHJhbmdlIGEgbXVjaCBtb3JlIGZpbmUtZ3JhaW5lZCBjb250cm9sIG9mIGZsaXAgdGlt aW5nLAphIGZlYXR1cmUgdGhhdCBtaWdodCBiZSB1c2VmdWwgZm9yIHZpZGVvIHBsYXliYWNrLCBh bmQgaXMKdmVyeSB1c2VmdWwgZm9yIG5ldXJvc2NpZW5jZS92aXNpb24gcmVzZWFyY2ggYXBwbGlj YXRpb25zLgoKSW4gcmVndWxhciBub24tVlJSIG1vZGUsIHJldGFpbiB0aGUgb2xkIGZsaXAgc3Vi bWlzc2lvbgpiZWhhdmlvci4gVGhpcyB0byBrZWVwIGZsaXAgc2NoZWR1bGluZyBmb3IgZnVsbHNj cmVlbiBYMTEvR0xYCk9wZW5HTCBjbGllbnRzIGludGFjdCwgaWYgdGhleSB1c2UgdGhlIEdMWF9P TUxfc3luY19jb250cm9sCmV4dGVuc2lvbnMgZ2xYU3dhcEJ1ZmZlck1zY09NTCgsIC4uLiwgdGFy Z2V0X21zYywuLi4pIGZ1bmN0aW9uCndpdGggYSBzcGVjaWZpYyB0YXJnZXRfbXNjIHRhcmdldCB2 YmxhbmsgY291bnQuCgpnbFhTd2FwQnVmZmVyc01zY09NTCgpIG9yIERSSTMvUHJlc2VudCBQcmVz ZW50UGl4bWFwKCkgd2lsbApub3QgZmxpcCBhdCB0aGUgcHJvcGVyIHRhcmdldF9tc2MgZm9yIGEg bm9uLXplcm8gdGFyZ2V0X21zYwppZiBWUlIgbW9kZSBpcyBhY3RpdmUgd2l0aCB0aGlzIHBhdGNo LiBUaGV5J2Qgb2Z0ZW4gZmxpcCBvbmUKZnJhbWUgdG9vIGVhcmx5LiBIb3dldmVyLCB0aGlzIGxp bWl0YXRpb24gc2hvdWxkIG5vdCBtYXR0ZXIKbXVjaCBpbiBWUlIgbW9kZSwgYXMgc2NoZWR1bGlu ZyBiYXNlZCBvbiB2YmxhbmsgY291bnRzIGlzCnByZXR0eSBmdXRpbGUvdW51c2FibGUgdW5kZXIg dmFyaWFibGUgcmVmcmVzaCBkdXJhdGlvbgphbnl3YXksIHNvIG5vIHJlYWwgZXh0cmEgaGFybSBp cyBkb25lLgoKQWNjb3JkaW5nIHRvIHNvbWUgdGVzdGluZyBhbHJlYWR5IGRvbmUgd2l0aCB0aGlz IHBhdGNoIGJ5Ck5pY2hvbGFzIG9uIHRvcCBvZiBteSB0ZXN0cywgSUdUIHRlc3RzIGRpZG4ndCBy ZXBvcnQgYW55CnByb2JsZW1zLiBJZiBmaXhlcyBzdHV0dGVyaW5nIGFuZCBmbGlja2VyaW5nIHdo ZW4gZmxpcHBpbmcKYXQgcmF0ZXMgYmVsb3cgdGhlIG1pbmltdW0gdnJyIHJlZnJlc2ggcmF0ZS4K CkZpeGVzOiBiYjQ3ZGU3MzY2NjEgKCJkcm0vYW1kZ3B1OiBTZXQgRnJlZVN5bmMgc3RhdGUgdXNp bmcgZHJtIFZSUgpwcm9wZXJ0aWVzIikKU2lnbmVkLW9mZi1ieTogTWFyaW8gS2xlaW5lciA8bWFy aW8ua2xlaW5lci5kZUBnbWFpbC5jb20+CkNjOiA8c3RhYmxlQHZnZXIua2VybmVsLm9yZz4KQ2M6 IE5pY2hvbGFzIEthemxhdXNrYXMgPG5pY2hvbGFzLmthemxhdXNrYXNAYW1kLmNvbT4KQ2M6IEhh cnJ5IFdlbnRsYW5kIDxoYXJyeS53ZW50bGFuZEBhbWQuY29tPgpDYzogQWxleCBEZXVjaGVyIDxh bGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tPgpDYzogTWljaGVsIETDpG56ZXIgPG1pY2hlbEBkYWVu emVyLm5ldD4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9hbWRncHVfbW9kZS5oICAg ICAgfCAgMSArCiAuLi4vZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMg fCAzMyArKysrKysrKysrKysrKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDMwIGluc2VydGlvbnMo KyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYW1kZ3B1X21vZGUuaCBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9tb2Rl LmgKaW5kZXggYmZhMzk0ZmZkNmQyLi44N2NhNTc0NmY4NjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9hbWQvYW1kZ3B1L2FtZGdwdV9tb2RlLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvYW1kZ3B1X21vZGUuaApAQCAtNDExLDYgKzQxMSw3IEBAIHN0cnVjdCBhbWRncHVf Y3J0YyB7CiAJc3RydWN0IGFtZGdwdV9mbGlwX3dvcmsgKnBmbGlwX3dvcmtzOwogCWVudW0gYW1k Z3B1X2ZsaXBfc3RhdHVzIHBmbGlwX3N0YXR1czsKIAlpbnQgZGVmZXJyZWRfZmxpcF9jb21wbGV0 aW9uOworCXU2NCBsYXN0X2ZsaXBfdmJsYW5rOwogCS8qIHBsbCBzaGFyaW5nICovCiAJc3RydWN0 IGFtZGdwdV9hdG9tX3NzIHNzOwogCWJvb2wgc3NfZW5hYmxlZDsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvZGlzcGxheS9hbWRncHVfZG0vYW1kZ3B1X2RtLmMgYi9kcml2ZXJzL2dw dS9kcm0vYW1kL2Rpc3BsYXkvYW1kZ3B1X2RtL2FtZGdwdV9kbS5jCmluZGV4IGQ1OWJhZmM4NDQ3 NS4uZDRkYTMzMWFhMzQ5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2Rpc3BsYXkv YW1kZ3B1X2RtL2FtZGdwdV9kbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvZGlzcGxheS9h bWRncHVfZG0vYW1kZ3B1X2RtLmMKQEAgLTMwMywxMiArMzAzLDExIEBAIHN0YXRpYyB2b2lkIGRt X3BmbGlwX2hpZ2hfaXJxKHZvaWQgKmludGVycnVwdF9wYXJhbXMpCiAJCXJldHVybjsKIAl9CiAK KwkvKiBVcGRhdGUgdG8gY29ycmVjdCBjb3VudChzKSBpZiByYWNpbmcgd2l0aCB2YmxhbmsgaXJx ICovCisJYW1kZ3B1X2NydGMtPmxhc3RfZmxpcF92YmxhbmsgPSBkcm1fY3J0Y19hY2N1cmF0ZV92 YmxhbmtfY291bnQoJmFtZGdwdV9jcnRjLT5iYXNlKTsKIAogCS8qIHdha2UgdXAgdXNlcnNwYWNl ICovCiAJaWYgKGFtZGdwdV9jcnRjLT5ldmVudCkgewotCQkvKiBVcGRhdGUgdG8gY29ycmVjdCBj b3VudChzKSBpZiByYWNpbmcgd2l0aCB2YmxhbmsgaXJxICovCi0JCWRybV9jcnRjX2FjY3VyYXRl X3ZibGFua19jb3VudCgmYW1kZ3B1X2NydGMtPmJhc2UpOwotCiAJCWRybV9jcnRjX3NlbmRfdmJs YW5rX2V2ZW50KCZhbWRncHVfY3J0Yy0+YmFzZSwgYW1kZ3B1X2NydGMtPmV2ZW50KTsKIAogCQkv KiBwYWdlIGZsaXAgY29tcGxldGVkLiBjbGVhbiB1cCAqLwpAQCAtNDczNiw2ICs0NzM1LDggQEAg c3RhdGljIHZvaWQgYW1kZ3B1X2RtX2NvbW1pdF9wbGFuZXMoc3RydWN0IGRybV9hdG9taWNfc3Rh dGUgKnN0YXRlLAogCXN0cnVjdCBhbWRncHVfYm8gKmFibzsKIAl1aW50NjRfdCB0aWxpbmdfZmxh Z3MsIGRjY19hZGRyZXNzOwogCXVpbnQzMl90IHRhcmdldCwgdGFyZ2V0X3ZibGFuazsKKwl1aW50 NjRfdCBsYXN0X2ZsaXBfdmJsYW5rOworCWJvb2wgdnJyX2FjdGl2ZSA9IGFjcnRjX3N0YXRlLT5m cmVlc3luY19jb25maWcuc3RhdGUgPT0gVlJSX1NUQVRFX0FDVElWRV9WQVJJQUJMRTsKIAogCXN0 cnVjdCB7CiAJCXN0cnVjdCBkY19zdXJmYWNlX3VwZGF0ZSBzdXJmYWNlX3VwZGF0ZXNbTUFYX1NV UkZBQ0VTXTsKQEAgLTQ4ODksNyArNDg5MCwzMSBAQCBzdGF0aWMgdm9pZCBhbWRncHVfZG1fY29t bWl0X3BsYW5lcyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJICogaG9wZWZ1bGx5 IGVsaW1pbmF0aW5nIGRjXypfdXBkYXRlIHN0cnVjdHMgaW4gdGhlaXIgZW50aXJldHkuCiAJICov CiAJaWYgKGZsaXBfY291bnQpIHsKLQkJdGFyZ2V0ID0gKHVpbnQzMl90KWRybV9jcnRjX3ZibGFu a19jb3VudChwY3J0YykgKyAqd2FpdF9mb3JfdmJsYW5rOworCQlpZiAoIXZycl9hY3RpdmUpIHsK KwkJCS8qIFVzZSBvbGQgdGhyb3R0bGluZyBpbiBub24tdnJyIGZpeGVkIHJlZnJlc2ggcmF0ZSBt b2RlCisJCQkgKiB0byBrZWVwIGZsaXAgc2NoZWR1bGluZyBiYXNlZCBvbiB0YXJnZXQgdmJsYW5r IGNvdW50cworCQkJICogd29ya2luZyBpbiBhIGJhY2t3YXJkcyBjb21wYXRpYmxlIHdheSwgZS5n LiwgZm9yCisJCQkgKiBjbGllbnRzIHVzaW5nIHRoZSBHTFhfT01MX3N5bmNfY29udHJvbCBleHRl bnNpb24gb3IKKwkJCSAqIERSSTMvUHJlc2VudCBleHRlbnNpb24gd2l0aCBkZWZpbmVkIHRhcmdl dF9tc2MuCisJCQkgKi8KKwkJCWxhc3RfZmxpcF92YmxhbmsgPSBkcm1fY3J0Y192YmxhbmtfY291 bnQocGNydGMpOworCQl9CisJCWVsc2UgeworCQkJLyogRm9yIHZhcmlhYmxlIHJlZnJlc2ggcmF0 ZSBtb2RlIG9ubHk6CisJCQkgKiBHZXQgdmJsYW5rIG9mIGxhc3QgY29tcGxldGVkIGZsaXAgdG8g YXZvaWQgPiAxIHZycgorCQkJICogZmxpcHMgcGVyIHZpZGVvIGZyYW1lIGJ5IHVzZSBvZiB0aHJv dHRsaW5nLCBidXQgYWxsb3cKKwkJCSAqIGZsaXAgcHJvZ3JhbW1pbmcgYW55d2hlcmUgaW4gdGhl IHBvc3NpYmx5IGxhcmdlCisJCQkgKiB2YXJpYWJsZSB2cnIgdmJsYW5rIGludGVydmFsIGZvciBm aW5lLWdyYWluZWQgZmxpcAorCQkJICogdGltaW5nIGNvbnRyb2wgYW5kIG1vcmUgb3Bwb3J0dW5p dHkgdG8gYXZvaWQgc3R1dHRlcgorCQkJICogb24gbGF0ZSBzdWJtaXNzaW9uIG9mIGZsaXBzLgor CQkJICovCisJCQlzcGluX2xvY2tfaXJxc2F2ZSgmcGNydGMtPmRldi0+ZXZlbnRfbG9jaywgZmxh Z3MpOworCQkJbGFzdF9mbGlwX3ZibGFuayA9IGFjcnRjX2F0dGFjaC0+bGFzdF9mbGlwX3ZibGFu azsKKwkJCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnBjcnRjLT5kZXYtPmV2ZW50X2xvY2ssIGZs YWdzKTsKKwkJfQorCisJCXRhcmdldCA9ICh1aW50MzJfdClsYXN0X2ZsaXBfdmJsYW5rICsgKndh aXRfZm9yX3ZibGFuazsKKwogCQkvKiBQcmVwYXJlIHdhaXQgZm9yIHRhcmdldCB2YmxhbmsgZWFy bHkgLSBiZWZvcmUgdGhlIGZlbmNlLXdhaXRzICovCiAJCXRhcmdldF92YmxhbmsgPSB0YXJnZXQg LSAodWludDMyX3QpZHJtX2NydGNfdmJsYW5rX2NvdW50KHBjcnRjKSArCiAJCQkJYW1kZ3B1X2dl dF92YmxhbmtfY291bnRlcl9rbXMocGNydGMtPmRldiwgYWNydGNfYXR0YWNoLT5jcnRjX2lkKTsK LS0gCjIuMTcuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVs Cg==