From mboxrd@z Thu Jan 1 00:00:00 1970 From: sourab.gupta@intel.com Subject: [PATCH 02/15] drm/i915: Expose OA sample source to userspace Date: Fri, 4 Nov 2016 15:00:31 +0530 Message-ID: <1478251844-23509-3-git-send-email-sourab.gupta@intel.com> References: <1478251844-23509-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 ESMTPS id 7683A6E8ED for ; Fri, 4 Nov 2016 09:29:03 +0000 (UTC) In-Reply-To: <1478251844-23509-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: "Christopher S . Hall" , Daniel Vetter , Sourab Gupta , Matthew Auld , Thomas Gleixner List-Id: intel-gfx@lists.freedesktop.org RnJvbTogU291cmFiIEd1cHRhIDxzb3VyYWIuZ3VwdGFAaW50ZWwuY29tPgoKVGhpcyBwYXRjaCBl eHBvc2VzIGEgbmV3IHNhbXBsZSBzb3VyY2UgZmllbGQgdG8gdXNlcnNwYWNlLiBUaGlzIGZpZWxk IGNhbgpiZSBwb3B1bGF0ZWQgdG8gc3BlY2lmeSB0aGUgb3JpZ2luIG9mIHRoZSBPQSByZXBvcnQu CkZvciBlLmcuIGZvciBpbnRlcm5hbGx5IHRyaWdnZXJyZWQgcmVwb3J0cyAobm9uIE1JX1JQQyBy ZXBvcnRzKSwgdGhlIFJQVF9JRApmaWVsZCBoYXMgYml0ZmllbGRzIGZvciBzcGVjaWZ5aW5nIHRo ZSBvcmlnaW4gc3VjaCBhcyB0aW1lciwgb3IgcmVuZGVyIGN0eApzd2l0Y2gsIGV0Yy4KTGlrZXdp c2UgdGhpcyBmaWVsZCBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBzb3VyY2UgYXMgTUlfUlBD IHdoZW4gc3VjaApzdXBwb3J0IGlzIGFkZGVkLgoKU2lnbmVkLW9mZi1ieTogU291cmFiIEd1cHRh IDxzb3VyYWIuZ3VwdGFAaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBSb2JlcnQgQnJhZ2cgPHJv YmVydEBzaXhieW5pbmUub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVyZi5j IHwgNTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQogaW5jbHVkZS91 YXBpL2RybS9pOTE1X2RybS5oICAgICAgfCAxNiArKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdl ZCwgNjMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X3BlcmYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVy Zi5jCmluZGV4IGQwMzBjZDcuLjU4YTExMTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcGVyZi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVyZi5jCkBA IC0yNDAsNiArMjQwLDEzIEBAIHN0YXRpYyB1MzIgaTkxNV9wZXJmX3N0cmVhbV9wYXJhbm9pZCA9 IHRydWU7CiAgKi8KICNkZWZpbmUgT0FfRVhQT05FTlRfTUFYIDMxCiAKKyNkZWZpbmUgR0VOOF9P QVJFUE9SVF9SRUFTT05fVElNRVIgICAgICAgICAgKDE8PDE5KQorI2RlZmluZSBHRU44X09BUkVQ T1JUX1JFQVNPTl9UUklHR0VSMSAgICAgICAoMTw8MjApCisjZGVmaW5lIEdFTjhfT0FSRVBPUlRf UkVBU09OX1RSSUdHRVIyICAgICAgICgxPDwyMSkKKyNkZWZpbmUgR0VOOF9PQVJFUE9SVF9SRUFT T05fQ1RYX1NXSVRDSCAgICAgKDE8PDIyKQorI2RlZmluZSBHRU44X09BUkVQT1JUX1JFQVNPTl9H T19UUkFOU0lUSU9OICAoMTw8MjMpCisjZGVmaW5lIEdFTjlfT0FSRVBPUlRfUkVBU09OX0NMS19S QVRJTyAgICAgICgxPDwyNCkKKwogLyogZm9yIHN5c2N0bCBwcm9jX2RvaW50dmVjX21pbm1heCBv ZiBpOTE1X29hX21pbl90aW1lcl9leHBvbmVudCAqLwogc3RhdGljIGludCB6ZXJvOwogc3RhdGlj IGludCBvYV9leHBvbmVudF9tYXggPSBPQV9FWFBPTkVOVF9NQVg7CkBAIC0yNzksNyArMjg2LDgg QEAgc3RhdGljIHN0cnVjdCBpOTE1X29hX2Zvcm1hdCBnZW44X3BsdXNfb2FfZm9ybWF0c1tJOTE1 X09BX0ZPUk1BVF9NQVhdID0gewogCVtJOTE1X09BX0ZPUk1BVF9DNF9COF0JCSAgICA9IHsgNywg NjQgfSwKIH07CiAKLSNkZWZpbmUgU0FNUExFX09BX1JFUE9SVCAgICAgICgxPDwwKQorI2RlZmlu ZSBTQU1QTEVfT0FfUkVQT1JUCSgxPDwwKQorI2RlZmluZSBTQU1QTEVfT0FfU09VUkNFX0lORk8J KDE8PDEpCiAKIHN0cnVjdCBwZXJmX29wZW5fcHJvcGVydGllcyB7CiAJdTMyIHNhbXBsZV9mbGFn czsKQEAgLTM4NSw2ICszOTMsMjcgQEAgc3RhdGljIGludCBhcHBlbmRfb2Ffc2FtcGxlKHN0cnVj dCBpOTE1X3BlcmZfc3RyZWFtICpzdHJlYW0sCiAJCXJldHVybiAtRUZBVUxUOwogCWJ1ZiArPSBz aXplb2YoaGVhZGVyKTsKIAorCWlmIChzYW1wbGVfZmxhZ3MgJiBTQU1QTEVfT0FfU09VUkNFX0lO Rk8pIHsKKwkJZW51bSBkcm1faTkxNV9wZXJmX29hX2V2ZW50X3NvdXJjZSBzb3VyY2U7CisKKwkJ aWYgKElOVEVMX0lORk8oZGV2X3ByaXYpLT5nZW4gPj0gOCkgeworCQkJdTMyIHJlYXNvbiA9ICoo dTMyICopcmVwb3J0OworCisJCQlpZiAocmVhc29uICYgR0VOOF9PQVJFUE9SVF9SRUFTT05fQ1RY X1NXSVRDSCkKKwkJCQlzb3VyY2UgPQorCQkJCUk5MTVfUEVSRl9PQV9FVkVOVF9TT1VSQ0VfQ09O VEVYVF9TV0lUQ0g7CisJCQllbHNlIGlmIChyZWFzb24gJiBHRU44X09BUkVQT1JUX1JFQVNPTl9U SU1FUikKKwkJCQlzb3VyY2UgPSBJOTE1X1BFUkZfT0FfRVZFTlRfU09VUkNFX1BFUklPRElDOwor CQkJZWxzZQorCQkJCXNvdXJjZSA9IEk5MTVfUEVSRl9PQV9FVkVOVF9TT1VSQ0VfVU5ERUZJTkVE OworCQl9IGVsc2UKKwkJCXNvdXJjZSA9IEk5MTVfUEVSRl9PQV9FVkVOVF9TT1VSQ0VfUEVSSU9E SUM7CisKKwkJaWYgKGNvcHlfdG9fdXNlcihidWYsICZzb3VyY2UsIDQpKQorCQkJcmV0dXJuIC1F RkFVTFQ7CisJCWJ1ZiArPSA0OworCX0KKwogCWlmIChzYW1wbGVfZmxhZ3MgJiBTQU1QTEVfT0Ff UkVQT1JUKSB7CiAJCWlmIChjb3B5X3RvX3VzZXIoYnVmLCByZXBvcnQsIHJlcG9ydF9zaXplKSkK IAkJCXJldHVybiAtRUZBVUxUOwpAQCAtMTQ1MywxMSArMTQ4Miw2IEBAIHN0YXRpYyBpbnQgaTkx NV9vYV9zdHJlYW1faW5pdChzdHJ1Y3QgaTkxNV9wZXJmX3N0cmVhbSAqc3RyZWFtLAogCQlyZXR1 cm4gLUVJTlZBTDsKIAl9CiAKLQlpZiAoIShwcm9wcy0+c2FtcGxlX2ZsYWdzICYgU0FNUExFX09B X1JFUE9SVCkpIHsKLQkJRFJNX0VSUk9SKCJPbmx5IE9BIHJlcG9ydCBzYW1wbGluZyBzdXBwb3J0 ZWRcbiIpOwotCQlyZXR1cm4gLUVJTlZBTDsKLQl9Ci0KIAlpZiAoIWRldl9wcml2LT5wZXJmLm9h Lm9wcy5pbml0X29hX2J1ZmZlcikgewogCQlEUk1fRVJST1IoIk9BIHVuaXQgbm90IHN1cHBvcnRl ZFxuIik7CiAJCXJldHVybiAtRU5PREVWOwpAQCAtMTQ4Niw4ICsxNTEwLDIwIEBAIHN0YXRpYyBp bnQgaTkxNV9vYV9zdHJlYW1faW5pdChzdHJ1Y3QgaTkxNV9wZXJmX3N0cmVhbSAqc3RyZWFtLAog CiAJZm9ybWF0X3NpemUgPSBkZXZfcHJpdi0+cGVyZi5vYS5vYV9mb3JtYXRzW3Byb3BzLT5vYV9m b3JtYXRdLnNpemU7CiAKLQlzdHJlYW0tPnNhbXBsZV9mbGFncyB8PSBTQU1QTEVfT0FfUkVQT1JU OwotCXN0cmVhbS0+c2FtcGxlX3NpemUgKz0gZm9ybWF0X3NpemU7CisJaWYgKHByb3BzLT5zYW1w bGVfZmxhZ3MgJiBTQU1QTEVfT0FfUkVQT1JUKSB7CisJCXN0cmVhbS0+c2FtcGxlX2ZsYWdzIHw9 IFNBTVBMRV9PQV9SRVBPUlQ7CisJCXN0cmVhbS0+c2FtcGxlX3NpemUgKz0gZm9ybWF0X3NpemU7 CisJfQorCisJaWYgKHByb3BzLT5zYW1wbGVfZmxhZ3MgJiBTQU1QTEVfT0FfU09VUkNFX0lORk8p IHsKKwkJaWYgKCEocHJvcHMtPnNhbXBsZV9mbGFncyAmIFNBTVBMRV9PQV9SRVBPUlQpKSB7CisJ CQlEUk1fRVJST1IoCisJCQkiT0Egc291cmNlIHR5cGUgY2FuJ3QgYmUgc2FtcGxlZCB3aXRob3V0 IE9BIHJlcG9ydCIpOworCQkJcmV0dXJuIC1FSU5WQUw7CisJCX0KKwkJc3RyZWFtLT5zYW1wbGVf ZmxhZ3MgfD0gU0FNUExFX09BX1NPVVJDRV9JTkZPOworCQlzdHJlYW0tPnNhbXBsZV9zaXplICs9 IDQ7CisJfQogCiAJZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLmZvcm1hdF9zaXplID0gZm9y bWF0X3NpemU7CiAJQlVHX09OKGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci5mb3JtYXRfc2l6 ZSA9PSAwKTsKQEAgLTIxNjAsNiArMjE5Niw5IEBAIHN0YXRpYyBpbnQgcmVhZF9wcm9wZXJ0aWVz X3VubG9ja2VkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCXByb3BzLT5v YV9wZXJpb2RpYyA9IHRydWU7CiAJCQlwcm9wcy0+b2FfcGVyaW9kX2V4cG9uZW50ID0gdmFsdWU7 CiAJCQlicmVhazsKKwkJY2FzZSBEUk1fSTkxNV9QRVJGX1BST1BfU0FNUExFX09BX1NPVVJDRToK KwkJCXByb3BzLT5zYW1wbGVfZmxhZ3MgfD0gU0FNUExFX09BX1NPVVJDRV9JTkZPOworCQkJYnJl YWs7CiAJCWNhc2UgRFJNX0k5MTVfUEVSRl9QUk9QX01BWDoKIAkJCUJVRygpOwogCQl9CmRpZmYg LS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggYi9pbmNsdWRlL3VhcGkvZHJtL2k5 MTVfZHJtLmgKaW5kZXggZTk1ZjY2Ni4uMDU4MzgxMiAxMDA2NDQKLS0tIGEvaW5jbHVkZS91YXBp L2RybS9pOTE1X2RybS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaApAQCAtMTI0 NCw2ICsxMjQ0LDE0IEBAIGVudW0gZHJtX2k5MTVfb2FfZm9ybWF0IHsKIAlJOTE1X09BX0ZPUk1B VF9NQVgJICAgIC8qIG5vbi1BQkkgKi8KIH07CiAKK2VudW0gZHJtX2k5MTVfcGVyZl9vYV9ldmVu dF9zb3VyY2UgeworCUk5MTVfUEVSRl9PQV9FVkVOVF9TT1VSQ0VfVU5ERUZJTkVELAorCUk5MTVf UEVSRl9PQV9FVkVOVF9TT1VSQ0VfUEVSSU9ESUMsCisJSTkxNV9QRVJGX09BX0VWRU5UX1NPVVJD RV9DT05URVhUX1NXSVRDSCwKKworCUk5MTVfUEVSRl9PQV9FVkVOVF9TT1VSQ0VfTUFYCS8qIG5v bi1BQkkgKi8KK307CisKIGVudW0gZHJtX2k5MTVfcGVyZl9wcm9wZXJ0eV9pZCB7CiAJLyoqCiAJ ICogT3BlbiB0aGUgc3RyZWFtIGZvciBhIHNwZWNpZmljIGNvbnRleHQgaGFuZGxlIChhcyB1c2Vk IHdpdGgKQEAgLTEyNzgsNiArMTI4NiwxMyBAQCBlbnVtIGRybV9pOTE1X3BlcmZfcHJvcGVydHlf aWQgewogCSAqLwogCURSTV9JOTE1X1BFUkZfUFJPUF9PQV9FWFBPTkVOVCwKIAorCS8qKgorCSAq IFRoZSB2YWx1ZSBvZiB0aGlzIHByb3BlcnR5IHNldCB0byAxIHJlcXVlc3RzIGluY2x1c2lvbiBv ZiBzYW1wbGUKKwkgKiBzb3VyY2UgZmllbGQgdG8gYmUgZ2l2ZW4gdG8gdXNlcnNwYWNlLiBUaGUg c2FtcGxlIHNvdXJjZSBmaWVsZAorCSAqIHNwZWNpZmllcyB0aGUgb3JpZ2luIG9mIE9BIHJlcG9y dC4KKwkgKi8KKwlEUk1fSTkxNV9QRVJGX1BST1BfU0FNUExFX09BX1NPVVJDRSwKKwogCURSTV9J OTE1X1BFUkZfUFJPUF9NQVggLyogbm9uLUFCSSAqLwogfTsKIApAQCAtMTM0Miw2ICsxMzU3LDcg QEAgZW51bSBkcm1faTkxNV9wZXJmX3JlY29yZF90eXBlIHsKIAkgKiBzdHJ1Y3QgewogCSAqICAg ICBzdHJ1Y3QgZHJtX2k5MTVfcGVyZl9yZWNvcmRfaGVhZGVyIGhlYWRlcjsKIAkgKgorCSAqICAg ICB7IHUzMiBzb3VyY2VfaW5mbzsgfSAmJiBEUk1fSTkxNV9QRVJGX1BST1BfU0FNUExFX09BX1NP VVJDRQogCSAqICAgICB7IHUzMiBvYV9yZXBvcnRbXTsgfSAmJiBEUk1fSTkxNV9QRVJGX1BST1Bf U0FNUExFX09BCiAJICogfTsKIAkgKi8KLS0gCjEuOS4xCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK