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: Thu, 2 Jun 2016 10:48:36 +0530 Message-ID: <1464844729-2774-3-git-send-email-sourab.gupta@intel.com> References: <1464844729-2774-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 mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 2C4D66E1C8 for ; Thu, 2 Jun 2016 05:17:03 +0000 (UTC) In-Reply-To: <1464844729-2774-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: Daniel Vetter , Sourab Gupta , Deepak S List-Id: intel-gfx@lists.freedesktop.org RnJvbTogU291cmFiIEd1cHRhIDxzb3VyYWIuZ3VwdGFAaW50ZWwuY29tPgoKVGhpcyBwYXRjaCBl eHBvc2VzIGEgbmV3IHNhbXBsZSBzb3VyY2UgZmllbGQgdG8gdXNlcnNwYWNlLiBUaGlzIGZpZWxk IGNhbgpiZSBwb3B1bGF0ZWQgdG8gc3BlY2lmeSB0aGUgb3JpZ2luIG9mIHRoZSBPQSByZXBvcnQu CkZvciBlLmcuIGZvciBpbnRlcm5hbGx5IHRyaWdnZXJyZWQgcmVwb3J0cyAobm9uIE1JX1JQQyBy ZXBvcnRzKSwgdGhlIFJQVF9JRApmaWVsZCBoYXMgYml0ZmllbGRzIGZvciBzcGVjaWZ5aW5nIHRo ZSBvcmlnaW4gc3VjaCBhcyB0aW1lciwgb3IgcmVuZGVyIGN0eApzd2l0Y2gsIGV0Yy4KTGlrZXdp c2UgdGhpcyBmaWVsZCBjYW4gYmUgdXNlZCB0byBzcGVjaWZ5IHRoZSBzb3VyY2UgYXMgTUlfUlBD IHdoZW4gc3VjaApzdXBwb3J0IGlzIGFkZGVkLgoKU2lnbmVkLW9mZi1ieTogU291cmFiIEd1cHRh IDxzb3VyYWIuZ3VwdGFAaW50ZWwuY29tPgpTaWduZWQtb2ZmLWJ5OiBSb2JlcnQgQnJhZ2cgPHJv YmVydEBzaXhieW5pbmUub3JnPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVyZi5j IHwgNTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLQogaW5jbHVkZS91 YXBpL2RybS9pOTE1X2RybS5oICAgICAgfCAxNiArKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdl ZCwgNjMgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X3BlcmYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVy Zi5jCmluZGV4IGJiMmU0NGEuLmE1NTdhODIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfcGVyZi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVyZi5jCkBA IC03NCw2ICs3NCwxMyBAQCBzdGF0aWMgdTMyIGk5MTVfcGVyZl9zdHJlYW1fcGFyYW5vaWQgPSB0 cnVlOwogICovCiAjZGVmaW5lIE9BX0VYUE9ORU5UX01BWCAzMQogCisjZGVmaW5lIEdFTjhfT0FS RVBPUlRfUkVBU09OX1RJTUVSICAgICAgICAgICgxPDwxOSkKKyNkZWZpbmUgR0VOOF9PQVJFUE9S VF9SRUFTT05fVFJJR0dFUjEgICAgICAgKDE8PDIwKQorI2RlZmluZSBHRU44X09BUkVQT1JUX1JF QVNPTl9UUklHR0VSMiAgICAgICAoMTw8MjEpCisjZGVmaW5lIEdFTjhfT0FSRVBPUlRfUkVBU09O X0NUWF9TV0lUQ0ggICAgICgxPDwyMikKKyNkZWZpbmUgR0VOOF9PQVJFUE9SVF9SRUFTT05fR09f VFJBTlNJVElPTiAgKDE8PDIzKQorI2RlZmluZSBHRU45X09BUkVQT1JUX1JFQVNPTl9DTEtfUkFU SU8gICAgICAoMTw8MjQpCisKIC8qIGZvciBzeXNjdGwgcHJvY19kb2ludHZlY19taW5tYXggb2Yg aTkxNV9vYV9taW5fdGltZXJfZXhwb25lbnQgKi8KIHN0YXRpYyBpbnQgemVybzsKIHN0YXRpYyBp bnQgb2FfZXhwb25lbnRfbWF4ID0gT0FfRVhQT05FTlRfTUFYOwpAQCAtMTEzLDcgKzEyMCw4IEBA IHN0YXRpYyBzdHJ1Y3QgaTkxNV9vYV9mb3JtYXQgZ2VuOF9wbHVzX29hX2Zvcm1hdHNbSTkxNV9P QV9GT1JNQVRfTUFYXSA9IHsKIAlbSTkxNV9PQV9GT1JNQVRfQzRfQjhdCQkgICAgPSB7IDcsIDY0 IH0sCiB9OwogCi0jZGVmaW5lIFNBTVBMRV9PQV9SRVBPUlQgICAgICAoMTw8MCkKKyNkZWZpbmUg U0FNUExFX09BX1JFUE9SVAkoMTw8MCkKKyNkZWZpbmUgU0FNUExFX09BX1NPVVJDRV9JTkZPCSgx PDwxKQogCiBzdHJ1Y3QgcGVyZl9vcGVuX3Byb3BlcnRpZXMgewogCXUzMiBzYW1wbGVfZmxhZ3M7 CkBAIC0yMTYsNiArMjI0LDI3IEBAIHN0YXRpYyBpbnQgYXBwZW5kX29hX3NhbXBsZShzdHJ1Y3Qg aTkxNV9wZXJmX3N0cmVhbSAqc3RyZWFtLAogCQlyZXR1cm4gLUVGQVVMVDsKIAlidWYgKz0gc2l6 ZW9mKGhlYWRlcik7CiAKKwlpZiAoc2FtcGxlX2ZsYWdzICYgU0FNUExFX09BX1NPVVJDRV9JTkZP KSB7CisJCWVudW0gZHJtX2k5MTVfcGVyZl9vYV9ldmVudF9zb3VyY2Ugc291cmNlOworCisJCWlm IChJTlRFTF9JTkZPKGRldl9wcml2KS0+Z2VuID49IDgpIHsKKwkJCXUzMiByZWFzb24gPSAqKHUz MiAqKXJlcG9ydDsKKworCQkJaWYgKHJlYXNvbiAmIEdFTjhfT0FSRVBPUlRfUkVBU09OX0NUWF9T V0lUQ0gpCisJCQkJc291cmNlID0KKwkJCQlJOTE1X1BFUkZfT0FfRVZFTlRfU09VUkNFX0NPTlRF WFRfU1dJVENIOworCQkJZWxzZSBpZiAocmVhc29uICYgR0VOOF9PQVJFUE9SVF9SRUFTT05fVElN RVIpCisJCQkJc291cmNlID0gSTkxNV9QRVJGX09BX0VWRU5UX1NPVVJDRV9QRVJJT0RJQzsKKwkJ CWVsc2UKKwkJCQlzb3VyY2UgPSBJOTE1X1BFUkZfT0FfRVZFTlRfU09VUkNFX1VOREVGSU5FRDsK KwkJfSBlbHNlCisJCQlzb3VyY2UgPSBJOTE1X1BFUkZfT0FfRVZFTlRfU09VUkNFX1BFUklPRElD OworCisJCWlmIChjb3B5X3RvX3VzZXIoYnVmLCAmc291cmNlLCA0KSkKKwkJCXJldHVybiAtRUZB VUxUOworCQlidWYgKz0gNDsKKwl9CisKIAlpZiAoc2FtcGxlX2ZsYWdzICYgU0FNUExFX09BX1JF UE9SVCkgewogCQlpZiAoY29weV90b191c2VyKGJ1ZiwgcmVwb3J0LCByZXBvcnRfc2l6ZSkpCiAJ CQlyZXR1cm4gLUVGQVVMVDsKQEAgLTExNzAsMTEgKzExOTksNiBAQCBzdGF0aWMgaW50IGk5MTVf b2Ffc3RyZWFtX2luaXQoc3RydWN0IGk5MTVfcGVyZl9zdHJlYW0gKnN0cmVhbSwKIAlpbnQgZm9y bWF0X3NpemU7CiAJaW50IHJldDsKIAotCWlmICghKHByb3BzLT5zYW1wbGVfZmxhZ3MgJiBTQU1Q TEVfT0FfUkVQT1JUKSkgewotCQlEUk1fRVJST1IoIk9ubHkgT0EgcmVwb3J0IHNhbXBsaW5nIHN1 cHBvcnRlZFxuIik7Ci0JCXJldHVybiAtRUlOVkFMOwotCX0KLQogCWlmICghZGV2X3ByaXYtPnBl cmYub2Eub3BzLmluaXRfb2FfYnVmZmVyKSB7CiAJCURSTV9FUlJPUigiT0EgdW5pdCBub3Qgc3Vw cG9ydGVkXG4iKTsKIAkJcmV0dXJuIC1FTk9ERVY7CkBAIC0xMjAzLDggKzEyMjcsMjAgQEAgc3Rh dGljIGludCBpOTE1X29hX3N0cmVhbV9pbml0KHN0cnVjdCBpOTE1X3BlcmZfc3RyZWFtICpzdHJl YW0sCiAKIAlmb3JtYXRfc2l6ZSA9IGRldl9wcml2LT5wZXJmLm9hLm9hX2Zvcm1hdHNbcHJvcHMt Pm9hX2Zvcm1hdF0uc2l6ZTsKIAotCXN0cmVhbS0+c2FtcGxlX2ZsYWdzIHw9IFNBTVBMRV9PQV9S RVBPUlQ7Ci0Jc3RyZWFtLT5zYW1wbGVfc2l6ZSArPSBmb3JtYXRfc2l6ZTsKKwlpZiAocHJvcHMt PnNhbXBsZV9mbGFncyAmIFNBTVBMRV9PQV9SRVBPUlQpIHsKKwkJc3RyZWFtLT5zYW1wbGVfZmxh Z3MgfD0gU0FNUExFX09BX1JFUE9SVDsKKwkJc3RyZWFtLT5zYW1wbGVfc2l6ZSArPSBmb3JtYXRf c2l6ZTsKKwl9CisKKwlpZiAocHJvcHMtPnNhbXBsZV9mbGFncyAmIFNBTVBMRV9PQV9TT1VSQ0Vf SU5GTykgeworCQlpZiAoIShwcm9wcy0+c2FtcGxlX2ZsYWdzICYgU0FNUExFX09BX1JFUE9SVCkp IHsKKwkJCURSTV9FUlJPUigKKwkJCSJPQSBzb3VyY2UgdHlwZSBjYW4ndCBiZSBzYW1wbGVkIHdp dGhvdXQgT0EgcmVwb3J0Iik7CisJCQlyZXR1cm4gLUVJTlZBTDsKKwkJfQorCQlzdHJlYW0tPnNh bXBsZV9mbGFncyB8PSBTQU1QTEVfT0FfU09VUkNFX0lORk87CisJCXN0cmVhbS0+c2FtcGxlX3Np emUgKz0gNDsKKwl9CiAKIAlkZXZfcHJpdi0+cGVyZi5vYS5vYV9idWZmZXIuZm9ybWF0X3NpemUg PSBmb3JtYXRfc2l6ZTsKIAlCVUdfT04oZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLmZvcm1h dF9zaXplID09IDApOwpAQCAtMTg0Miw2ICsxODc4LDkgQEAgc3RhdGljIGludCByZWFkX3Byb3Bl cnRpZXNfdW5sb2NrZWQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJcHJv cHMtPm9hX3BlcmlvZGljID0gdHJ1ZTsKIAkJCXByb3BzLT5vYV9wZXJpb2RfZXhwb25lbnQgPSB2 YWx1ZTsKIAkJCWJyZWFrOworCQljYXNlIERSTV9JOTE1X1BFUkZfUFJPUF9TQU1QTEVfT0FfU09V UkNFOgorCQkJcHJvcHMtPnNhbXBsZV9mbGFncyB8PSBTQU1QTEVfT0FfU09VUkNFX0lORk87CisJ CQlicmVhazsKIAkJY2FzZSBEUk1fSTkxNV9QRVJGX1BST1BfTUFYOgogCQkJQlVHKCk7CiAJCX0K ZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9k cm0vaTkxNV9kcm0uaAppbmRleCAwYmFkYzE2Li5jNGU4ZGFkIDEwMDY0NAotLS0gYS9pbmNsdWRl L3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCkBA IC0xMTkyLDYgKzExOTIsMTQgQEAgZW51bSBkcm1faTkxNV9vYV9mb3JtYXQgewogCUk5MTVfT0Ff Rk9STUFUX01BWAkgICAgLyogbm9uLUFCSSAqLwogfTsKIAorZW51bSBkcm1faTkxNV9wZXJmX29h X2V2ZW50X3NvdXJjZSB7CisJSTkxNV9QRVJGX09BX0VWRU5UX1NPVVJDRV9VTkRFRklORUQsCisJ STkxNV9QRVJGX09BX0VWRU5UX1NPVVJDRV9QRVJJT0RJQywKKwlJOTE1X1BFUkZfT0FfRVZFTlRf U09VUkNFX0NPTlRFWFRfU1dJVENILAorCisJSTkxNV9QRVJGX09BX0VWRU5UX1NPVVJDRV9NQVgJ Lyogbm9uLUFCSSAqLworfTsKKwogZW51bSBkcm1faTkxNV9wZXJmX3Byb3BlcnR5X2lkIHsKIAkv KioKIAkgKiBPcGVuIHRoZSBzdHJlYW0gZm9yIGEgc3BlY2lmaWMgY29udGV4dCBoYW5kbGUgKGFz IHVzZWQgd2l0aApAQCAtMTIyNiw2ICsxMjM0LDEzIEBAIGVudW0gZHJtX2k5MTVfcGVyZl9wcm9w ZXJ0eV9pZCB7CiAJICovCiAJRFJNX0k5MTVfUEVSRl9QUk9QX09BX0VYUE9ORU5ULAogCisJLyoq CisJICogVGhlIHZhbHVlIG9mIHRoaXMgcHJvcGVydHkgc2V0IHRvIDEgcmVxdWVzdHMgaW5jbHVz aW9uIG9mIHNhbXBsZQorCSAqIHNvdXJjZSBmaWVsZCB0byBiZSBnaXZlbiB0byB1c2Vyc3BhY2Uu IFRoZSBzYW1wbGUgc291cmNlIGZpZWxkCisJICogc3BlY2lmaWVzIHRoZSBvcmlnaW4gb2YgT0Eg cmVwb3J0LgorCSAqLworCURSTV9JOTE1X1BFUkZfUFJPUF9TQU1QTEVfT0FfU09VUkNFLAorCiAJ RFJNX0k5MTVfUEVSRl9QUk9QX01BWCAvKiBub24tQUJJICovCiB9OwogCkBAIC0xMjkwLDYgKzEz MDUsNyBAQCBlbnVtIGRybV9pOTE1X3BlcmZfcmVjb3JkX3R5cGUgewogCSAqIHN0cnVjdCB7CiAJ ICogICAgIHN0cnVjdCBkcm1faTkxNV9wZXJmX3JlY29yZF9oZWFkZXIgaGVhZGVyOwogCSAqCisJ ICogICAgIHsgdTMyIHNvdXJjZV9pbmZvOyB9ICYmIERSTV9JOTE1X1BFUkZfUFJPUF9TQU1QTEVf T0FfU09VUkNFCiAJICogICAgIHsgdTMyIG9hX3JlcG9ydFtdOyB9ICYmIERSTV9JOTE1X1BFUkZf UFJPUF9TQU1QTEVfT0EKIAkgKiB9OwogCSAqLwotLSAKMS45LjEKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=