From mboxrd@z Thu Jan 1 00:00:00 1970 From: sourab.gupta@intel.com Subject: [RFC 4/8] drm/i915: Insert commands for capturing timestamps in the ring Date: Wed, 15 Jul 2015 14:21:42 +0530 Message-ID: <1436950306-14147-5-git-send-email-sourab.gupta@intel.com> References: <1436950306-14147-1-git-send-email-sourab.gupta@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 7B7916EB19 for ; Wed, 15 Jul 2015 01:49:56 -0700 (PDT) In-Reply-To: <1436950306-14147-1-git-send-email-sourab.gupta@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: Insoo Woo , Peter Zijlstra , Jabin Wu , Sourab Gupta List-Id: intel-gfx@lists.freedesktop.org RnJvbTogU291cmFiIEd1cHRhIDxzb3VyYWIuZ3VwdGFAaW50ZWwuY29tPgoKVGhpcyBwYXRjaCBh ZGRzIHRoZSByb3V0aW5lcyB0aHJvdWdoIHdoaWNoIG9uZSBjYW4gaW5zZXJ0IGNvbW1hbmRzIGlu IHRoZQpyaW5nYnVmIGZvciBjYXB0dXJpbmcgdGltZXN0YW1wcywgd2hpY2ggYXJlIHVzZWQgdG8g aW5zZXJ0IHRoZXNlIGNvbW1hbmRzCmFyb3VuZCB0aGUgYmF0Y2hidWZmZXIuCgpXaGlsZSBpbnNl cnRpbmcgdGhlIGNvbW1hbmRzLCB3ZSBrZWVwIGEgcmVmZXJlbmNlIG9mIGFzc29jaWF0ZWQgcmVx dWVzdC4KVGhpcyB3aWxsIGJlIHJlbGVhc2VkIHdoZW4gd2UgYXJlIGZvcndhcmRpbmcgdGhlIHNh bXBsZXMgdG8gdXNlcnNwYWNlCihvciB3aGVuIHRoZSBldmVudCBpcyBiZWluZyBkZXN0cm95ZWQp LgpBbHNvLCBhbiBhY3RpdmUgcmVmZXJlbmNlIG9mIHRoZSBkZXN0aW5hdGlvbiBidWZmZXIgaXMg dGFrZW4gaGVyZSwgc28gdGhhdAp3ZSBjYW4gYmUgYXNzdXJlZCB0aGF0IHRoZSBidWZmZXIgaXMg ZnJlZWQgdXAgb25seSBhZnRlciBHUFUgaXMgZG9uZSB3aXRoCml0LCBldmVuIGlmIHRoZSBsb2Nh bCByZWZlcmVuY2Ugb2YgdGhlIGJ1ZmZlciBpcyByZWxlYXNlZC4KClNpZ25lZC1vZmYtYnk6IFNv dXJhYiBHdXB0YSA8c291cmFiLmd1cHRhQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2Ff cGVyZi5jIHwgNzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCAgICAgfCAgMiArCiAzIGZpbGVzIGNoYW5nZWQsIDc2 IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCA0MWEwMWJkLi41OWQy M2QwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTE2NjIsNiArMTY2Miw3IEBAIGVudW0g aTkxNV9vYV9ldmVudF9zdGF0ZSB7CiAKIGVudW0gaTkxNV9wcm9maWxlX21vZGUgewogCUk5MTVf UFJPRklMRV9PQSA9IDAsCisJSTkxNV9QUk9GSUxFX1RTLAogCUk5MTVfUFJPRklMRV9NQVgsCiB9 OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X29hX3BlcmYuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5jCmluZGV4IDEwNzU3MGUuLjE3ODBkZTQy IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X29hX3BlcmYuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X29hX3BlcmYuYwpAQCAtMTAyLDYgKzEwMiw3NyBAQCB2 b2lkIGk5MTVfb2FfaW5zZXJ0X2NtZChzdHJ1Y3QgaW50ZWxfcmluZ2J1ZmZlciAqcmluZ2J1Ziwg dTMyIGN0eF9pZCwgaW50IHRhZykKIAlpOTE1X3ZtYV9tb3ZlX3RvX2FjdGl2ZShpOTE1X2dlbV9v YmpfdG9fZ2d0dChvYmopLCByaW5nKTsKIH0KIAordm9pZCBpOTE1X2dlbl9pbnNlcnRfY21kX3Rz KHN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmLCB1MzIgY3R4X2lkLAorCQkJCWludCB0 YWcpCit7CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHJpbmdidWYtPnJpbmc7CisJ c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gcmluZy0+ZGV2LT5kZXZfcHJpdmF0 ZTsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqID0gZGV2X3ByaXYtPmdlbl9wbXUu YnVmZmVyLm9iajsKKwlzdHJ1Y3QgaTkxNV9nZW5fcG11X25vZGUgKmVudHJ5OworCXVuc2lnbmVk IGxvbmcgbG9ja19mbGFnczsKKwl1MzIgYWRkciA9IDA7CisJaW50IHJldDsKKworCWVudHJ5ID0g a3phbGxvYyhzaXplb2YoKmVudHJ5KSwgR0ZQX0tFUk5FTCk7CisJaWYgKGVudHJ5ID09IE5VTEwp IHsKKwkJRFJNX0VSUk9SKCJhbGxvYyBmYWlsZWRcbiIpOworCQlyZXR1cm47CisJfQorCWVudHJ5 LT5jdHhfaWQgPSBjdHhfaWQ7CisJaTkxNV9nZW1fcmVxdWVzdF9hc3NpZ24oJmVudHJ5LT5yZXEs IHJpbmctPm91dHN0YW5kaW5nX2xhenlfcmVxdWVzdCk7CisKKwlzcGluX2xvY2tfaXJxc2F2ZSgm ZGV2X3ByaXYtPmdlbl9wbXUubG9jaywgbG9ja19mbGFncyk7CisJaWYgKGxpc3RfZW1wdHkoJmRl dl9wcml2LT5nZW5fcG11Lm5vZGVfbGlzdCkpCisJCWVudHJ5LT5vZmZzZXQgPSAwOworCWVsc2Ug eworCQlzdHJ1Y3QgaTkxNV9nZW5fcG11X25vZGUgKmxhc3RfZW50cnk7CisJCWludCBtYXhfb2Zm c2V0ID0gZGV2X3ByaXYtPmdlbl9wbXUuYnVmZmVyLm5vZGVfY291bnQgKgorCQkJCWRldl9wcml2 LT5nZW5fcG11LmJ1ZmZlci5ub2RlX3NpemU7CisKKwkJbGFzdF9lbnRyeSA9IGxpc3RfbGFzdF9l bnRyeSgmZGV2X3ByaXYtPmdlbl9wbXUubm9kZV9saXN0LAorCQkJCQlzdHJ1Y3QgaTkxNV9nZW5f cG11X25vZGUsIGhlYWQpOworCQllbnRyeS0+b2Zmc2V0ID0gbGFzdF9lbnRyeS0+b2Zmc2V0ICsK KwkJCQlkZXZfcHJpdi0+Z2VuX3BtdS5idWZmZXIubm9kZV9zaXplOworCisJCWlmIChlbnRyeS0+ b2Zmc2V0ID4gbWF4X29mZnNldCkKKwkJCWVudHJ5LT5vZmZzZXQgPSAwOworCX0KKwlsaXN0X2Fk ZF90YWlsKCZlbnRyeS0+aGVhZCwgJmRldl9wcml2LT5nZW5fcG11Lm5vZGVfbGlzdCk7CisJc3Bp bl91bmxvY2tfaXJxcmVzdG9yZSgmZGV2X3ByaXYtPmdlbl9wbXUubG9jaywgbG9ja19mbGFncyk7 CisKKwlhZGRyID0gaTkxNV9nZW1fb2JqX2dndHRfb2Zmc2V0KG9iaikgKyBlbnRyeS0+b2Zmc2V0 OworCisJaWYgKHJpbmctPmlkID09IFJDUykgeworCQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJp bmcsIDYpOworCQlpZiAocmV0KQorCQkJcmV0dXJuOworCisJCWludGVsX3JpbmdfZW1pdChyaW5n LCBHRlhfT1BfUElQRV9DT05UUk9MKDUpKTsKKwkJaW50ZWxfcmluZ19lbWl0KHJpbmcsCisJCQkJ UElQRV9DT05UUk9MX0dMT0JBTF9HVFRfSVZCIHwKKwkJCQlQSVBFX0NPTlRST0xfVElNRVNUQU1Q X1dSSVRFKTsKKwkJaW50ZWxfcmluZ19lbWl0KHJpbmcsIGFkZHIgfCBQSVBFX0NPTlRST0xfR0xP QkFMX0dUVCk7CisJCWludGVsX3JpbmdfZW1pdChyaW5nLCAwKTsgLyogaW1tIGxvdywgbXVzdCBi ZSB6ZXJvICovCisJCWludGVsX3JpbmdfZW1pdChyaW5nLCAwKTsgLyogaW1tIGhpZ2gsIG11c3Qg YmUgemVybyAqLworCQlpbnRlbF9yaW5nX2VtaXQocmluZywgTUlfTk9PUCk7CisJCWludGVsX3Jp bmdfYWR2YW5jZShyaW5nKTsKKwl9IGVsc2UgeworCQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJp bmcsIDQpOworCQlpZiAocmV0KQorCQkJcmV0dXJuOworCisJCWludGVsX3JpbmdfZW1pdChyaW5n LAorCQkJCU1JX0ZMVVNIX0RXIHwgTUlfRkxVU0hfRFdfT1BfU1RBTVApOworCQlpbnRlbF9yaW5n X2VtaXQocmluZywgYWRkciB8IE1JX0ZMVVNIX0RXX1VTRV9HVFQpOworCQlpbnRlbF9yaW5nX2Vt aXQocmluZywgMCk7IC8qIGltbSBsb3csIG11c3QgYmUgemVybyAqLworCQlpbnRlbF9yaW5nX2Vt aXQocmluZywgMCk7IC8qIGltbSBoaWdoLCBtdXN0IGJlIHplcm8gKi8KKwkJaW50ZWxfcmluZ19h ZHZhbmNlKHJpbmcpOworCX0KKworCW9iai0+YmFzZS53cml0ZV9kb21haW4gPSBJOTE1X0dFTV9E T01BSU5fUkVOREVSOworCWk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKGk5MTVfZ2VtX29ial90b19n Z3R0KG9iaiksIHJpbmcpOworfQorCiBzdGF0aWMgdm9pZCBmb3J3YXJkX29uZV9vYV9zbmFwc2hv dF90b19ldmVudChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJCSAgICAg dTggKnNuYXBzaG90LAogCQkJCQkgICAgIHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCkKQEAgLTE1 MjEsNiArMTU5Miw3IEBAIHN0YXRpYyB2b2lkIGk5MTVfZ2VuX2V2ZW50X3N0YXJ0KHN0cnVjdCBw ZXJmX2V2ZW50ICpldmVudCwgaW50IGZsYWdzKQogCXNwaW5fbG9ja19pcnFzYXZlKCZkZXZfcHJp di0+Z2VuX3BtdS5sb2NrLCBsb2NrX2ZsYWdzKTsKIAogCWRldl9wcml2LT5nZW5fcG11LmV2ZW50 X2FjdGl2ZSA9IHRydWU7CisJZGV2X3ByaXYtPmluc2VydF9wcm9maWxlX2NtZFtJOTE1X1BST0ZJ TEVfVFNdID0gaTkxNV9nZW5faW5zZXJ0X2NtZF90czsKIAogCXNwaW5fdW5sb2NrX2lycXJlc3Rv cmUoJmRldl9wcml2LT5nZW5fcG11LmxvY2ssIGxvY2tfZmxhZ3MpOwogCkBAIC0xNTQyLDYgKzE2 MTQsNyBAQCBzdGF0aWMgdm9pZCBpOTE1X2dlbl9ldmVudF9zdG9wKHN0cnVjdCBwZXJmX2V2ZW50 ICpldmVudCwgaW50IGZsYWdzKQogCiAJc3Bpbl9sb2NrX2lycXNhdmUoJmRldl9wcml2LT5nZW5f cG11LmxvY2ssIGxvY2tfZmxhZ3MpOwogCWRldl9wcml2LT5nZW5fcG11LmV2ZW50X2FjdGl2ZSA9 IGZhbHNlOworCWRldl9wcml2LT5pbnNlcnRfcHJvZmlsZV9jbWRbSTkxNV9QUk9GSUxFX1RTXSA9 IE5VTEw7CiAJbGlzdF9mb3JfZWFjaF9lbnRyeShlbnRyeSwgJmRldl9wcml2LT5nZW5fcG11Lm5v ZGVfbGlzdCwgaGVhZCkKIAkJZW50cnktPmRpc2NhcmQgPSB0cnVlOwogCXNwaW5fdW5sb2NrX2ly cXJlc3RvcmUoJmRldl9wcml2LT5nZW5fcG11LmxvY2ssIGxvY2tfZmxhZ3MpOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVnLmgKaW5kZXggYzk5NTU5NjguLmY4MTZiMDggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9y ZWcuaApAQCAtMzQ3LDYgKzM0Nyw3IEBACiAjZGVmaW5lICAgTUlfRkxVU0hfRFdfU1RPUkVfSU5E RVgJKDE8PDIxKQogI2RlZmluZSAgIE1JX0lOVkFMSURBVEVfVExCCQkoMTw8MTgpCiAjZGVmaW5l ICAgTUlfRkxVU0hfRFdfT1BfU1RPUkVEVwkoMTw8MTQpCisjZGVmaW5lICAgTUlfRkxVU0hfRFdf T1BfU1RBTVAJCSgzPDwxNCkKICNkZWZpbmUgICBNSV9GTFVTSF9EV19PUF9NQVNLCQkoMzw8MTQp CiAjZGVmaW5lICAgTUlfRkxVU0hfRFdfTk9USUZZCQkoMTw8OCkKICNkZWZpbmUgICBNSV9JTlZB TElEQVRFX0JTRAkJKDE8PDcpCkBAIC00MjMsNiArNDI0LDcgQEAKICNkZWZpbmUgICBQSVBFX0NP TlRST0xfTUVESUFfU1RBVEVfQ0xFQVIJCSgxPDwxNikKICNkZWZpbmUgICBQSVBFX0NPTlRST0xf UVdfV1JJVEUJCQkJKDE8PDE0KQogI2RlZmluZSAgIFBJUEVfQ09OVFJPTF9QT1NUX1NZTkNfT1Bf TUFTSyAgICAgICAgICAgICAgICAoMzw8MTQpCisjZGVmaW5lICAgUElQRV9DT05UUk9MX1RJTUVT VEFNUF9XUklURQkJCSgzPDwxNCkKICNkZWZpbmUgICBQSVBFX0NPTlRST0xfREVQVEhfU1RBTEwJ CQkoMTw8MTMpCiAjZGVmaW5lICAgUElQRV9DT05UUk9MX1dSSVRFX0ZMVVNICQkJKDE8PDEyKQog I2RlZmluZSAgIFBJUEVfQ09OVFJPTF9SRU5ERVJfVEFSR0VUX0NBQ0hFX0ZMVVNICSgxPDwxMikg LyogZ2VuNisgKi8KLS0gCjEuOC41LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==