From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH 6/8] drm/i915: Rework the FBC interval/stall stuff a bit Date: Thu, 28 Nov 2013 17:30:00 +0200 Message-ID: <1385652602-8528-7-git-send-email-ville.syrjala@linux.intel.com> References: <1385652602-8528-1-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 7BF0FFB6CB for ; Thu, 28 Nov 2013 07:30:27 -0800 (PST) In-Reply-To: <1385652602-8528-1-git-send-email-ville.syrjala@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org To: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkRv bid0IHRvdWNoIERQRkNfUkVDT01QX0NUTCBvbiBGQkMyLCB1c2UgUk1XIHRvIHVwZGF0ZQp0aGUg RkJDX0NPTlRST0wgb24gRkJDMSB0byBtYWtlIGl0IGVhc2llciBmb3IgcGVvcGxlIHRvCmV4cGVy aW1lbnQgd2l0aCBkaWZmZXJlbnQgbnVtYmVycy4gQWxzbyBmaXggdGhlIGludGVydmFsCm1hc2sg Zm9yIEZCQzEuCgpTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFA bGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggfCAg NCArLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jIHwgNDYgKysrKysrKysrKysr KysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgMTggaW5zZXJ0 aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggYzVj YmJjMi4uMjBhOTgxMSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0zNzMsOCArMzczLDcg QEAgc3RydWN0IGRwbGw7CiBzdHJ1Y3QgZHJtX2k5MTVfZGlzcGxheV9mdW5jcyB7CiAJYm9vbCAo KmZiY19lbmFibGVkKShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIAl2b2lkICgqZW5hYmxlX2Zi Yykoc3RydWN0IGRybV9jcnRjICpjcnRjLAotCQkJICAgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAq ZmIsCi0JCQkgICB1bnNpZ25lZCBsb25nIGludGVydmFsKTsKKwkJCSAgIHN0cnVjdCBkcm1fZnJh bWVidWZmZXIgKmZiKTsKIAl2b2lkICgqZGlzYWJsZV9mYmMpKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpOwogCWludCAoKmdldF9kaXNwbGF5X2Nsb2NrX3NwZWVkKShzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KTsKIAlpbnQgKCpnZXRfZmlmb19zaXplKShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQg cGxhbmUpOwpAQCAtNjkyLDcgKzY5MSw2IEBAIHN0cnVjdCBpOTE1X2ZiYyB7CiAJCXN0cnVjdCBk ZWxheWVkX3dvcmsgd29yazsKIAkJc3RydWN0IGRybV9jcnRjICpjcnRjOwogCQlzdHJ1Y3QgZHJt X2ZyYW1lYnVmZmVyICpmYjsKLQkJaW50IGludGVydmFsOwogCX0gKmZiY193b3JrOwogCiAJZW51 bSBub19mYmNfcmVhc29uIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCmluZGV4IGIyOTY0MzguLmFm MmJjMmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYwpAQCAtODcsOCArODcsNyBAQCBzdGF0aWMg dm9pZCBpOHh4X2Rpc2FibGVfZmJjKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9CiAKIHN0YXRp YyB2b2lkIGk4eHhfZW5hYmxlX2ZiYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCi0JCQkgICAgc3Ry dWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCi0JCQkgICAgdW5zaWduZWQgbG9uZyBpbnRlcnZhbCkK KwkJCSAgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYikKIHsKIAlzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2ID0gY3J0Yy0+ZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IGRldi0+ZGV2X3ByaXZhdGU7CkBAIC0xMjUsMTEgKzEyNCwxMiBAQCBzdGF0aWMgdm9pZCBpOHh4 X2VuYWJsZV9mYmMoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCX0KIAogCS8qIGVuYWJsZSBpdC4u LiAqLwotCWZiY19jdGwgPSBGQkNfQ1RMX0VOIHwgRkJDX0NUTF9QRVJJT0RJQzsKKwlmYmNfY3Rs ID0gSTkxNV9SRUFEKEZCQ19DT05UUk9MKTsKKwlmYmNfY3RsICY9IDB4M2ZmZiA8PCBGQkNfQ1RM X0lOVEVSVkFMX1NISUZUOworCWZiY19jdGwgfD0gRkJDX0NUTF9FTiB8IEZCQ19DVExfUEVSSU9E SUM7CiAJaWYgKElTX0k5NDVHTShkZXYpKQogCQlmYmNfY3RsIHw9IEZCQ19DVExfQzNfSURMRTsg LyogOTQ1IG5lZWRzIHNwZWNpYWwgU1IgaGFuZGxpbmcgKi8KIAlmYmNfY3RsIHw9IChjZmJfcGl0 Y2ggJiAweGZmKSA8PCBGQkNfQ1RMX1NUUklERV9TSElGVDsKLQlmYmNfY3RsIHw9IChpbnRlcnZh bCAmIDB4MmZmZikgPDwgRkJDX0NUTF9JTlRFUlZBTF9TSElGVDsKIAlmYmNfY3RsIHw9IG9iai0+ ZmVuY2VfcmVnOwogCUk5MTVfV1JJVEUoRkJDX0NPTlRST0wsIGZiY19jdGwpOwogCkBAIC0xNDUs OCArMTQ1LDcgQEAgc3RhdGljIGJvb2wgaTh4eF9mYmNfZW5hYmxlZChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQogfQogCiBzdGF0aWMgdm9pZCBnNHhfZW5hYmxlX2ZiYyhzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCi0JCQkgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKLQkJCSAgIHVuc2lnbmVk IGxvbmcgaW50ZXJ2YWwpCisJCQkgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYikKIHsKIAlz dHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CkBAIC0xNTQsMTUgKzE1MywxMCBAQCBz dGF0aWMgdm9pZCBnNHhfZW5hYmxlX2ZiYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJc3RydWN0 IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9IGludGVsX2ZiLT5vYmo7CiAJc3RydWN0IGludGVs X2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwogCWludCBwbGFuZSA9IGlu dGVsX2NydGMtPnBsYW5lID09IDAgPyBEUEZDX0NUTF9QTEFORUEgOiBEUEZDX0NUTF9QTEFORUI7 Ci0JdW5zaWduZWQgbG9uZyBzdGFsbF93YXRlcm1hcmsgPSAyMDA7CiAJdTMyIGRwZmNfY3RsOwog CiAJZHBmY19jdGwgPSBwbGFuZSB8IERQRkNfU1JfRU4gfCBEUEZDX0NUTF9MSU1JVF8xWDsKIAlk cGZjX2N0bCB8PSBEUEZDX0NUTF9GRU5DRV9FTiB8IG9iai0+ZmVuY2VfcmVnOwotCi0JSTkxNV9X UklURShEUEZDX1JFQ09NUF9DVEwsIERQRkNfUkVDT01QX1NUQUxMX0VOIHwKLQkJICAgKHN0YWxs X3dhdGVybWFyayA8PCBEUEZDX1JFQ09NUF9TVEFMTF9XTV9TSElGVCkgfAotCQkgICAoaW50ZXJ2 YWwgPDwgRFBGQ19SRUNPTVBfVElNRVJfQ09VTlRfU0hJRlQpKTsKIAlJOTE1X1dSSVRFKERQRkNf RkVOQ0VfWU9GRiwgY3J0Yy0+eSk7CiAKIAkvKiBlbmFibGUgaXQuLi4gKi8KQEAgLTE5NCw4ICsx ODgsNyBAQCBzdGF0aWMgYm9vbCBnNHhfZmJjX2VuYWJsZWQoc3RydWN0IGRybV9kZXZpY2UgKmRl dikKIH0KIAogc3RhdGljIHZvaWQgaXJvbmxha2VfZW5hYmxlX2ZiYyhzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCi0JCQkJc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCi0JCQkJdW5zaWduZWQgbG9u ZyBpbnRlcnZhbCkKKwkJCQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYikKIHsKIAlzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CkBAIC0yMDMsNyArMTk2LDYgQEAgc3RhdGljIHZv aWQgaXJvbmxha2VfZW5hYmxlX2ZiYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJc3RydWN0IGRy bV9pOTE1X2dlbV9vYmplY3QgKm9iaiA9IGludGVsX2ZiLT5vYmo7CiAJc3RydWN0IGludGVsX2Ny dGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwogCWludCBwbGFuZSA9IGludGVs X2NydGMtPnBsYW5lID09IDAgPyBEUEZDX0NUTF9QTEFORUEgOiBEUEZDX0NUTF9QTEFORUI7Ci0J dW5zaWduZWQgbG9uZyBzdGFsbF93YXRlcm1hcmsgPSAyMDA7CiAJdTMyIGRwZmNfY3RsOwogCiAJ ZHBmY19jdGwgPSBJOTE1X1JFQUQoSUxLX0RQRkNfQ09OVFJPTCk7CkBAIC0yMTIsMTAgKzIwNCw2 IEBAIHN0YXRpYyB2b2lkIGlyb25sYWtlX2VuYWJsZV9mYmMoc3RydWN0IGRybV9jcnRjICpjcnRj LAogCWRwZmNfY3RsIHw9IERQRkNfQ1RMX0ZFTkNFX0VOOwogCWlmIChJU19HRU41KGRldikpCiAJ CWRwZmNfY3RsIHw9IG9iai0+ZmVuY2VfcmVnOwotCi0JSTkxNV9XUklURShJTEtfRFBGQ19SRUNP TVBfQ1RMLCBEUEZDX1JFQ09NUF9TVEFMTF9FTiB8Ci0JCSAgIChzdGFsbF93YXRlcm1hcmsgPDwg RFBGQ19SRUNPTVBfU1RBTExfV01fU0hJRlQpIHwKLQkJICAgKGludGVydmFsIDw8IERQRkNfUkVD T01QX1RJTUVSX0NPVU5UX1NISUZUKSk7CiAJSTkxNV9XUklURShJTEtfRFBGQ19GRU5DRV9ZT0ZG LCBjcnRjLT55KTsKIAkvKiBlbmFibGUgaXQuLi4gKi8KIAlJOTE1X1dSSVRFKElMS19EUEZDX0NP TlRST0wsIGRwZmNfY3RsIHwgRFBGQ19DVExfRU4pOwpAQCAtMjUyLDggKzI0MCw3IEBAIHN0YXRp YyBib29sIGlyb25sYWtlX2ZiY19lbmFibGVkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9CiAK IHN0YXRpYyB2b2lkIGdlbjdfZW5hYmxlX2ZiYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCi0JCQkg ICAgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCi0JCQkgICAgdW5zaWduZWQgbG9uZyBpbnRl cnZhbCkKKwkJCSAgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYikKIHsKIAlzdHJ1Y3QgZHJt X2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2OwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CkBAIC0yOTIsMTIgKzI3OSwxMSBAQCBib29sIGludGVs X2ZiY19lbmFibGVkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9CiAKIHN0YXRpYyB2b2lkIGlu dGVsX3NldHVwX2ZiYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCi0JCQkgICAgc3RydWN0IGRybV9m cmFtZWJ1ZmZlciAqZmIsCi0JCQkgICAgdW5zaWduZWQgbG9uZyBpbnRlcnZhbCkKKwkJCSAgICBz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSBjcnRjLT5kZXYtPmRldl9wcml2YXRlOwogCi0JZGV2X3ByaXYtPmRpc3BsYXku ZW5hYmxlX2ZiYyhjcnRjLCBmYiwgaW50ZXJ2YWwpOworCWRldl9wcml2LT5kaXNwbGF5LmVuYWJs ZV9mYmMoY3J0YywgZmIpOwogCiAJZGV2X3ByaXYtPmZiYy5wbGFuZSA9IHRvX2ludGVsX2NydGMo Y3J0YyktPnBsYW5lOwogCWRybV9mcmFtZWJ1ZmZlcl9yZWZlcmVuY2UoZmIpOwpAQCAtMzI0LDcg KzMxMCw3IEBAIHN0YXRpYyB2b2lkIGludGVsX2ZiY193b3JrX2ZuKHN0cnVjdCB3b3JrX3N0cnVj dCAqX193b3JrKQogCQkgKiB0aGUgcHJpb3Igd29yay4KIAkJICovCiAJCWlmICh3b3JrLT5jcnRj LT5mYiA9PSB3b3JrLT5mYikKLQkJCWludGVsX3NldHVwX2ZiYyh3b3JrLT5jcnRjLCB3b3JrLT5m Yiwgd29yay0+aW50ZXJ2YWwpOworCQkJaW50ZWxfc2V0dXBfZmJjKHdvcmstPmNydGMsIHdvcmst PmZiKTsKIAkJZGV2X3ByaXYtPmZiYy5mYmNfd29yayA9IE5VTEw7CiAJfQogCW11dGV4X3VubG9j aygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwpAQCAtMzYxLDcgKzM0Nyw3IEBAIHN0YXRpYyB2b2lkIGlu dGVsX2NhbmNlbF9mYmNfd29yayhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJ ZGV2X3ByaXYtPmZiYy5mYmNfd29yayA9IE5VTEw7CiB9CiAKLXN0YXRpYyB2b2lkIGludGVsX2Vu YWJsZV9mYmMoc3RydWN0IGRybV9jcnRjICpjcnRjLCB1bnNpZ25lZCBsb25nIGludGVydmFsKQor c3RhdGljIHZvaWQgaW50ZWxfZW5hYmxlX2ZiYyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiB7CiAJ c3RydWN0IGludGVsX2ZiY193b3JrICp3b3JrOwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBj cnRjLT5kZXY7CkBAIC0zNzUsMTMgKzM2MSwxMiBAQCBzdGF0aWMgdm9pZCBpbnRlbF9lbmFibGVf ZmJjKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgdW5zaWduZWQgbG9uZyBpbnRlcnZhbCkKIAl3b3Jr ID0ga3phbGxvYyhzaXplb2YoKndvcmspLCBHRlBfS0VSTkVMKTsKIAlpZiAod29yayA9PSBOVUxM KSB7CiAJCURSTV9FUlJPUigiRmFpbGVkIHRvIGFsbG9jYXRlIEZCQyB3b3JrIHN0cnVjdHVyZVxu Iik7Ci0JCWludGVsX3NldHVwX2ZiYyhjcnRjLCBjcnRjLT5mYiwgaW50ZXJ2YWwpOworCQlpbnRl bF9zZXR1cF9mYmMoY3J0YywgY3J0Yy0+ZmIpOwogCQlyZXR1cm47CiAJfQogCiAJd29yay0+Y3J0 YyA9IGNydGM7CiAJd29yay0+ZmIgPSBjcnRjLT5mYjsKLQl3b3JrLT5pbnRlcnZhbCA9IGludGVy dmFsOwogCUlOSVRfREVMQVlFRF9XT1JLKCZ3b3JrLT53b3JrLCBpbnRlbF9mYmNfd29ya19mbik7 CiAKIAlkcm1fZnJhbWVidWZmZXJfcmVmZXJlbmNlKHdvcmstPmZiKTsKQEAgLTQ0OCw3ICs0MzMs NyBAQCB2b2lkIGludGVsX2ZiY19udWtlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmop CiAJICogTXVzdCB3YWl0IHVudGlsIHRoZSBuZXh0IHZibGFuayBiZWZvcmUgcmUtZW5hYmxpbmcK IAkgKiBvdGhlcndpc2UgdGhlIG51a2luZyB3b24ndCBhY3R1YWxseSBoYXBwZW4uCiAJICovCi0J aW50ZWxfZW5hYmxlX2ZiYyhjcnRjLCA1MDApOworCWludGVsX2VuYWJsZV9mYmMoY3J0Yyk7CiB9 CiAKIHN0YXRpYyBib29sIHNldF9ub19mYmNfcmVhc29uKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwKQEAgLTYzMiw3ICs2MTcsNyBAQCB2b2lkIGludGVsX3VwZGF0ZV9mYmMoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIAkJaW50ZWxfZGlzYWJsZV9mYmMoZGV2KTsKIAl9CiAKLQlp bnRlbF9lbmFibGVfZmJjKGNydGMsIDUwMCk7CisJaW50ZWxfZW5hYmxlX2ZiYyhjcnRjKTsKIAlk ZXZfcHJpdi0+ZmJjLm5vX2ZiY19yZWFzb24gPSBGQkNfT0s7CiAJcmV0dXJuOwogCkBAIC01OTkz LDYgKzU5NzgsOSBAQCB2b2lkIGludGVsX2luaXRfcG0oc3RydWN0IGRybV9kZXZpY2UgKmRldikK IAkJCWRldl9wcml2LT5kaXNwbGF5LmZiY19lbmFibGVkID0gaTh4eF9mYmNfZW5hYmxlZDsKIAkJ CWRldl9wcml2LT5kaXNwbGF5LmVuYWJsZV9mYmMgPSBpOHh4X2VuYWJsZV9mYmM7CiAJCQlkZXZf cHJpdi0+ZGlzcGxheS5kaXNhYmxlX2ZiYyA9IGk4eHhfZGlzYWJsZV9mYmM7CisKKwkJCS8qIFRo aXMgdmFsdWUgd2FzIHB1bGxlZCBvdXQgb2Ygc29tZW9uZSdzIGhhdCAqLworCQkJSTkxNV9XUklU RShGQkNfQ09OVFJPTCwgNTAwIDw8IEZCQ19DVExfSU5URVJWQUxfU0hJRlQpOwogCQl9CiAJfQog Ci0tIAoxLjguMy4yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eAo=