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, 5 Aug 2015 11:25:40 +0530 Message-ID: <1438754144-20435-5-git-send-email-sourab.gupta@intel.com> References: <1438754144-20435-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 mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 2F45672089 for ; Tue, 4 Aug 2015 22:53:51 -0700 (PDT) In-Reply-To: <1438754144-20435-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 bCByZWZlcmVuY2Ugb2YgdGhlIGJ1ZmZlciBpcyByZWxlYXNlZC4KCnYyOiBDaGFuZ2VzIChhcyBz dWdnZXN0ZWQgYnkgQ2hyaXMpOgogICAgLSBQYXNzaW5nIGluICdyZXF1ZXN0JyBzdHJ1Y3QgZm9y IGVtaXQgcmVwb3J0IGZ1bmN0aW9uCiAgICAtIFJlbW92ZWQgbXVsdGlwbGUgY2FsbHMgdG8gaTkx NV9nZW1fb2JqX3RvX2dndHQoKS4gS2VlcGluZyBob2xkIG9mCiAgICAgIHBpbm5lZCB2bWEgZnJv bSBzdGFydCBhbmQgdXNpbmcgd2hlbiByZXF1aXJlZC4KICAgIC0gQmV0dGVyIG5vbWVuY2xhdHVy ZSwgYW5kIGVycm9yIGhhbmRsaW5nLgoKU2lnbmVkLW9mZi1ieTogU291cmFiIEd1cHRhIDxzb3Vy YWIuZ3VwdGFAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg ICAgIHwgIDIgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9vYV9wZXJmLmMgfCA3NyArKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3JlZy5oICAgICB8ICAyICsKIDMgZmlsZXMgY2hhbmdlZCwgODEgaW5zZXJ0aW9ucygrKQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDU3MTdjYjAuLjQ2ZWNlODUgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaApAQCAtMTY2Myw2ICsxNjYzLDcgQEAgZW51bSBpOTE1X29hX2V2ZW50X3N0 YXRlIHsKIAogZW51bSBpOTE1X3Byb2ZpbGVfbW9kZSB7CiAJSTkxNV9QUk9GSUxFX09BID0gMCwK KwlJOTE1X1BST0ZJTEVfVFMsCiAJSTkxNV9QUk9GSUxFX01BWCwKIH07CiAKQEAgLTIwMDcsNiAr MjAwOCw3IEBAIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlIHsKIAkJc3RydWN0IHsKIAkJCXN0cnVj dCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CiAJCQl1MzIgZ3R0X29mZnNldDsKKwkJCXN0cnVj dCBpOTE1X3ZtYSAqdm1hOwogCQkJdTggKmFkZHI7CiAJCQl1MzIgbm9kZV9zaXplOwogCQkJdTMy IG5vZGVfY291bnQ7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X29hX3Bl cmYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5jCmluZGV4IDA2NjQ1ZjAu LjJjZjdmMWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfb2FfcGVyZi5jCkBAIC0xMTMsNiArMTEz LDc5IEBAIHN0YXRpYyB2b2lkIGk5MTVfb2FfZW1pdF9wZXJmX3JlcG9ydChzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAlpOTE1X3ZtYV9tb3ZlX3RvX2FjdGl2ZShkZXZfcHJpdi0+ b2FfcG11Lm9hX3Jjc19idWZmZXIudm1hLCByaW5nKTsKIH0KIAorLyoKKyAqIEVtaXRzIHRoZSBj b21tYW5kcyB0byBjYXB0dXJlIHRpbWVzdGFtcHMsIGludG8gdGhlIENTCisgKi8KK3N0YXRpYyB2 b2lkIGk5MTVfZ2VuX2VtaXRfdHNfZGF0YShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJl cSwKKwkJCXUzMiBnbG9iYWxfY3R4X2lkLCB1MzIgdGFnKQoreworCXN0cnVjdCBpbnRlbF9lbmdp bmVfY3MgKnJpbmcgPSByZXEtPnJpbmc7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gcmluZy0+ZGV2LT5kZXZfcHJpdmF0ZTsKKwlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqID0gZGV2X3ByaXYtPmdlbl9wbXUuYnVmZmVyLm9iajsKKwlzdHJ1Y3QgaTkxNV9nZW5f cG11X25vZGUgKmVudHJ5OworCXUzMiBhZGRyID0gMDsKKwlpbnQgcmV0OworCisJZW50cnkgPSBr emFsbG9jKHNpemVvZigqZW50cnkpLCBHRlBfS0VSTkVMKTsKKwlpZiAoZW50cnkgPT0gTlVMTCkg eworCQlEUk1fRVJST1IoImFsbG9jIGZhaWxlZFxuIik7CisJCXJldHVybjsKKwl9CisKKwlyZXQg PSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDYpOworCWlmIChyZXQpIHsKKwkJa2ZyZWUoZW50cnkp OworCQlyZXR1cm47CisJfQorCisJZW50cnktPmN0eF9pZCA9IGdsb2JhbF9jdHhfaWQ7CisJaTkx NV9nZW1fcmVxdWVzdF9hc3NpZ24oJmVudHJ5LT5yZXEsIHJpbmctPm91dHN0YW5kaW5nX2xhenlf cmVxdWVzdCk7CisKKwlzcGluX2xvY2soJmRldl9wcml2LT5nZW5fcG11LmxvY2spOworCWlmIChs aXN0X2VtcHR5KCZkZXZfcHJpdi0+Z2VuX3BtdS5ub2RlX2xpc3QpKQorCQllbnRyeS0+b2Zmc2V0 ID0gMDsKKwllbHNlIHsKKwkJc3RydWN0IGk5MTVfZ2VuX3BtdV9ub2RlICpsYXN0X2VudHJ5Owor CQlpbnQgbWF4X29mZnNldCA9IGRldl9wcml2LT5nZW5fcG11LmJ1ZmZlci5ub2RlX2NvdW50ICoK KwkJCQlkZXZfcHJpdi0+Z2VuX3BtdS5idWZmZXIubm9kZV9zaXplOworCisJCWxhc3RfZW50cnkg PSBsaXN0X2xhc3RfZW50cnkoJmRldl9wcml2LT5nZW5fcG11Lm5vZGVfbGlzdCwKKwkJCQkJc3Ry dWN0IGk5MTVfZ2VuX3BtdV9ub2RlLCBoZWFkKTsKKwkJZW50cnktPm9mZnNldCA9IGxhc3RfZW50 cnktPm9mZnNldCArCisJCQkJZGV2X3ByaXYtPmdlbl9wbXUuYnVmZmVyLm5vZGVfc2l6ZTsKKwor CQlpZiAoZW50cnktPm9mZnNldCA+IG1heF9vZmZzZXQpCisJCQllbnRyeS0+b2Zmc2V0ID0gMDsK Kwl9CisJbGlzdF9hZGRfdGFpbCgmZW50cnktPmhlYWQsICZkZXZfcHJpdi0+Z2VuX3BtdS5ub2Rl X2xpc3QpOworCXNwaW5fdW5sb2NrKCZkZXZfcHJpdi0+Z2VuX3BtdS5sb2NrKTsKKworCWFkZHIg PSBkZXZfcHJpdi0+Z2VuX3BtdS5idWZmZXIuZ3R0X29mZnNldCArIGVudHJ5LT5vZmZzZXQ7CisK KwlpZiAocmluZy0+aWQgPT0gUkNTKSB7CisJCWludGVsX3JpbmdfZW1pdChyaW5nLCBHRlhfT1Bf UElQRV9DT05UUk9MKDUpKTsKKwkJaW50ZWxfcmluZ19lbWl0KHJpbmcsCisJCQkJUElQRV9DT05U Uk9MX0dMT0JBTF9HVFRfSVZCIHwKKwkJCQlQSVBFX0NPTlRST0xfVElNRVNUQU1QX1dSSVRFKTsK KwkJaW50ZWxfcmluZ19lbWl0KHJpbmcsIGFkZHIgfCBQSVBFX0NPTlRST0xfR0xPQkFMX0dUVCk7 CisJCWludGVsX3JpbmdfZW1pdChyaW5nLCAwKTsKKwkJaW50ZWxfcmluZ19lbWl0KHJpbmcsIDAp OworCQlpbnRlbF9yaW5nX2VtaXQocmluZywgTUlfTk9PUCk7CisJfSBlbHNlIHsKKwkJaW50ZWxf cmluZ19lbWl0KHJpbmcsCisJCQkJKE1JX0ZMVVNIX0RXICsgMSkgfCBNSV9GTFVTSF9EV19PUF9T VEFNUCk7CisJCWludGVsX3JpbmdfZW1pdChyaW5nLCBhZGRyIHwgTUlfRkxVU0hfRFdfVVNFX0dU VCk7CisJCWludGVsX3JpbmdfZW1pdChyaW5nLCAwKTsKKwkJaW50ZWxfcmluZ19lbWl0KHJpbmcs IDApOworCQlpbnRlbF9yaW5nX2VtaXQocmluZywgTUlfTk9PUCk7CisJCWludGVsX3JpbmdfZW1p dChyaW5nLCBNSV9OT09QKTsKKwl9CisJaW50ZWxfcmluZ19hZHZhbmNlKHJpbmcpOworCisJb2Jq LT5iYXNlLndyaXRlX2RvbWFpbiA9IEk5MTVfR0VNX0RPTUFJTl9SRU5ERVI7CisJaTkxNV92bWFf bW92ZV90b19hY3RpdmUoZGV2X3ByaXYtPmdlbl9wbXUuYnVmZmVyLnZtYSwgcmluZyk7Cit9CisK IHN0YXRpYyB2b2lkIGZvcndhcmRfb25lX29hX3NuYXBzaG90X3RvX2V2ZW50KHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkJICAgICB1OCAqc25hcHNob3QsCiAJCQkJCSAg ICAgc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQpAQCAtNzM4LDYgKzgxMSw3IEBAIG91dDoKIAlz cGluX2xvY2soJmRldl9wcml2LT5nZW5fcG11LmxvY2spOwogCWRldl9wcml2LT5nZW5fcG11LmJ1 ZmZlci5vYmogPSBOVUxMOwogCWRldl9wcml2LT5nZW5fcG11LmJ1ZmZlci5ndHRfb2Zmc2V0ID0g MDsKKwlkZXZfcHJpdi0+Z2VuX3BtdS5idWZmZXIudm1hID0gTlVMTDsKIAlkZXZfcHJpdi0+Z2Vu X3BtdS5idWZmZXIuYWRkciA9IE5VTEw7CiAJc3Bpbl91bmxvY2soJmRldl9wcml2LT5nZW5fcG11 LmxvY2spOwogfQpAQCAtOTE5LDYgKzk5Myw3IEBAIHN0YXRpYyBpbnQgaW5pdF9nZW5fcG11X2J1 ZmZlcihzdHJ1Y3QgcGVyZl9ldmVudCAqZXZlbnQpCiAJZGV2X3ByaXYtPmdlbl9wbXUuYnVmZmVy Lm9iaiA9IGJvOwogCWRldl9wcml2LT5nZW5fcG11LmJ1ZmZlci5ndHRfb2Zmc2V0ID0KIAkJCQlp OTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQoYm8pOworCWRldl9wcml2LT5nZW5fcG11LmJ1ZmZlci52 bWEgPSBpOTE1X2dlbV9vYmpfdG9fZ2d0dChibyk7CiAJZGV2X3ByaXYtPmdlbl9wbXUuYnVmZmVy LmFkZHIgPSB2bWFwX29hX2J1ZmZlcihibyk7CiAJSU5JVF9MSVNUX0hFQUQoJmRldl9wcml2LT5n ZW5fcG11Lm5vZGVfbGlzdCk7CiAKQEAgLTE1MDQsNiArMTU3OSw3IEBAIHN0YXRpYyB2b2lkIGk5 MTVfZ2VuX2V2ZW50X3N0YXJ0KHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCwgaW50IGZsYWdzKQog CiAJc3Bpbl9sb2NrKCZkZXZfcHJpdi0+Z2VuX3BtdS5sb2NrKTsKIAlkZXZfcHJpdi0+Z2VuX3Bt dS5ldmVudF9hY3RpdmUgPSB0cnVlOworCWRldl9wcml2LT5lbWl0X3Byb2ZpbGluZ19kYXRhW0k5 MTVfUFJPRklMRV9UU10gPSBpOTE1X2dlbl9lbWl0X3RzX2RhdGE7CiAJc3Bpbl91bmxvY2soJmRl dl9wcml2LT5nZW5fcG11LmxvY2spOwogCiAJX19ocnRpbWVyX3N0YXJ0X3JhbmdlX25zKCZkZXZf cHJpdi0+Z2VuX3BtdS50aW1lciwgbnNfdG9fa3RpbWUoUEVSSU9EKSwKQEAgLTE1MjMsNiArMTU5 OSw3IEBAIHN0YXRpYyB2b2lkIGk5MTVfZ2VuX2V2ZW50X3N0b3Aoc3RydWN0IHBlcmZfZXZlbnQg KmV2ZW50LCBpbnQgZmxhZ3MpCiAKIAlzcGluX2xvY2soJmRldl9wcml2LT5nZW5fcG11LmxvY2sp OwogCWRldl9wcml2LT5nZW5fcG11LmV2ZW50X2FjdGl2ZSA9IGZhbHNlOworCWRldl9wcml2LT5l bWl0X3Byb2ZpbGluZ19kYXRhW0k5MTVfUFJPRklMRV9UU10gPSBOVUxMOwogCWxpc3RfZm9yX2Vh Y2hfZW50cnkoZW50cnksICZkZXZfcHJpdi0+Z2VuX3BtdS5ub2RlX2xpc3QsIGhlYWQpCiAJCWVu dHJ5LT5kaXNjYXJkID0gdHJ1ZTsKIAlzcGluX3VubG9jaygmZGV2X3ByaXYtPmdlbl9wbXUubG9j ayk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlZy5oIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAppbmRleCBjOTk1NTk2OC4uZjgxNmIwOCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3JlZy5oCkBAIC0zNDcsNiArMzQ3LDcgQEAKICNkZWZpbmUgICBNSV9GTFVT SF9EV19TVE9SRV9JTkRFWAkoMTw8MjEpCiAjZGVmaW5lICAgTUlfSU5WQUxJREFURV9UTEIJCSgx PDwxOCkKICNkZWZpbmUgICBNSV9GTFVTSF9EV19PUF9TVE9SRURXCSgxPDwxNCkKKyNkZWZpbmUg ICBNSV9GTFVTSF9EV19PUF9TVEFNUAkJKDM8PDE0KQogI2RlZmluZSAgIE1JX0ZMVVNIX0RXX09Q X01BU0sJCSgzPDwxNCkKICNkZWZpbmUgICBNSV9GTFVTSF9EV19OT1RJRlkJCSgxPDw4KQogI2Rl ZmluZSAgIE1JX0lOVkFMSURBVEVfQlNECQkoMTw8NykKQEAgLTQyMyw2ICs0MjQsNyBAQAogI2Rl ZmluZSAgIFBJUEVfQ09OVFJPTF9NRURJQV9TVEFURV9DTEVBUgkJKDE8PDE2KQogI2RlZmluZSAg IFBJUEVfQ09OVFJPTF9RV19XUklURQkJCQkoMTw8MTQpCiAjZGVmaW5lICAgUElQRV9DT05UUk9M X1BPU1RfU1lOQ19PUF9NQVNLICAgICAgICAgICAgICAgICgzPDwxNCkKKyNkZWZpbmUgICBQSVBF X0NPTlRST0xfVElNRVNUQU1QX1dSSVRFCQkJKDM8PDE0KQogI2RlZmluZSAgIFBJUEVfQ09OVFJP TF9ERVBUSF9TVEFMTAkJCSgxPDwxMykKICNkZWZpbmUgICBQSVBFX0NPTlRST0xfV1JJVEVfRkxV U0gJCQkoMTw8MTIpCiAjZGVmaW5lICAgUElQRV9DT05UUk9MX1JFTkRFUl9UQVJHRVRfQ0FDSEVf RkxVU0gJKDE8PDEyKSAvKiBnZW42KyAqLwotLSAKMS44LjUuMQoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK