From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [RFC 06/17] drm/i915/pmu: Wire up engine busy stats to PMU Date: Wed, 25 Oct 2017 16:36:21 +0100 Message-ID: <20171025153632.557-7-tvrtko.ursulin@linux.intel.com> References: <20171025153632.557-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 661D66E6DD for ; Wed, 25 Oct 2017 15:36:47 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id b189so2654181wmd.4 for ; Wed, 25 Oct 2017 08:36:47 -0700 (PDT) In-Reply-To: <20171025153632.557-1-tvrtko.ursulin@linux.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 List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGNhbiB1 c2UgZW5naW5lIGJ1c3kgc3RhdHMgaW5zdGVhZCBvZiB0aGUgc2FtcGxpbmcgdGltZXIgZm9yCmJl dHRlciBhY2N1cmFjeS4KCkJ5IGRvaW5nIHRoaXMgd2UgcmVwbGFjZSB0aGUgc3RvaGFzdGljIHNh bXBsaW5nIHdpdGggYnVzeW5lc3MKbWV0cmljIGRlcml2ZWQgZGlyZWN0bHkgZnJvbSBlbmdpbmUg YWN0aXZpdHkuIFRoaXMgaXMgY29udGV4dApzd2l0Y2ggaW50ZXJydXB0IGRyaXZlbiwgc28gYXMg YWNjdXJhdGUgYXMgd2UgY2FuIGdldCBmcm9tCnNvZnR3YXJlIHRyYWNraW5nLgoKQXMgYSBzZWNv bmRhcnkgYmVuZWZpdCwgd2UgY2FuIGFsc28gbm90IHJ1biB0aGUgc2FtcGxpbmcgdGltZXIKaW4g Y2FzZXMgb25seSBidXN5bmVzcyBtZXRyaWMgaXMgZW5hYmxlZC4KCnYyOiBSZWJhc2UuCnYzOgog KiBSZWJhc2UsIGNvbW1lbnRzLgogKiBMZWF2ZSBlbmdpbmUgYnVzeW5lc3MgY29udHJvbHMgb3V0 IG9mIHdvcmtlcnMuCnY0OiBDaGVja3BhdGNoIGNsZWFudXAuCnY1OiBBZGRlZCBjb21tZW50IHRv IHBtdV9uZWVkc190aW1lciBjaGFuZ2UuCnY2OgogKiBSZWJhc2UuCiAqIEZpeCBzdHlsZSBvZiBz b21lIGNvbW1lbnRzLiAoQ2hyaXMgV2lsc29uKQp2NzogUmViYXNlIGFuZCBjb21taXQgbWVzc2Fn ZSB1cGRhdGUuIChDaHJpcyBXaWxzb24pCnY4OiBBZGQgZGVsYXllZCBzdGF0cyBkaXNhYmxpbmcg dG8gaW1wcm92ZSBhY2N1cmFjeSBpbiBmYWNlIG9mCiAgICBDUFUgaG90cGx1ZyBldmVudHMuCnY5 OiBSZWJhc2UuCgpTaWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5A aW50ZWwuY29tPgpSZXZpZXdlZC1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24u Y28udWs+ICh2NykKLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jICAgICAgICAg fCA3OCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuaCB8IDE0ICsrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA5MCBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfcG11LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jCmluZGV4 IDA4Y2EwMzU4YzkzZC4uMGY2YWEwMzM3YmFiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X3BtdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcG11LmMKQEAg LTkwLDYgKzkwLDExIEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgZXZlbnRfZW5hYmxlZF9iaXQoc3Ry dWN0IHBlcmZfZXZlbnQgKmV2ZW50KQogCXJldHVybiBjb25maWdfZW5hYmxlZF9iaXQoZXZlbnQt PmF0dHIuY29uZmlnKTsKIH0KIAorc3RhdGljIGJvb2wgc3VwcG9ydHNfYnVzeV9zdGF0cyh2b2lk KQoreworCXJldHVybiBpOTE1X21vZHBhcmFtcy5lbmFibGVfZXhlY2xpc3RzOworfQorCiBzdGF0 aWMgYm9vbCBwbXVfbmVlZHNfdGltZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGJv b2wgZ3B1X2FjdGl2ZSkKIHsKIAl1NjQgZW5hYmxlOwpAQCAtMTE1LDYgKzEyMCwxMiBAQCBzdGF0 aWMgYm9vbCBwbXVfbmVlZHNfdGltZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGJv b2wgZ3B1X2FjdGl2ZSkKIAkgKi8KIAlpZiAoIWdwdV9hY3RpdmUpCiAJCWVuYWJsZSAmPSB+RU5H SU5FX1NBTVBMRV9NQVNLOworCS8qCisJICogQWxzbyB0aGVyZSBpcyBzb2Z0d2FyZSBidXN5bmVz cyB0cmFja2luZyBhdmFpbGFibGUgd2UgZG8gbm90CisJICogbmVlZCB0aGUgdGltZXIgZm9yIEk5 MTVfU0FNUExFX0JVU1kgY291bnRlci4KKwkgKi8KKwllbHNlIGlmIChzdXBwb3J0c19idXN5X3N0 YXRzKCkpCisJCWVuYWJsZSAmPSB+QklUKEk5MTVfU0FNUExFX0JVU1kpOwogCiAJLyoKIAkgKiBJ ZiBzb21lIGJpdHMgcmVtYWluIGl0IG1lYW5zIHdlIG5lZWQgdGhlIHNhbXBsaW5nIHRpbWVyIHJ1 bm5pbmcuCkBAIC0zNjMsNiArMzc0LDkgQEAgc3RhdGljIHU2NCBfX2k5MTVfcG11X2V2ZW50X3Jl YWQoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQogCiAJCWlmIChXQVJOX09OX09OQ0UoIWVuZ2lu ZSkpIHsKIAkJCS8qIERvIG5vdGhpbmcgKi8KKwkJfSBlbHNlIGlmIChzYW1wbGUgPT0gSTkxNV9T QU1QTEVfQlVTWSAmJgorCQkJICAgZW5naW5lLT5wbXUuYnVzeV9zdGF0cykgeworCQkJdmFsID0g a3RpbWVfdG9fbnMoaW50ZWxfZW5naW5lX2dldF9idXN5X3RpbWUoZW5naW5lKSk7CiAJCX0gZWxz ZSB7CiAJCQl2YWwgPSBlbmdpbmUtPnBtdS5zYW1wbGVbc2FtcGxlXS5jdXI7CiAJCX0KQEAgLTM5 OSw2ICs0MTMsMTIgQEAgc3RhdGljIHZvaWQgaTkxNV9wbXVfZXZlbnRfcmVhZChzdHJ1Y3QgcGVy Zl9ldmVudCAqZXZlbnQpCiAJbG9jYWw2NF9hZGQobmV3IC0gcHJldiwgJmV2ZW50LT5jb3VudCk7 CiB9CiAKK3N0YXRpYyBib29sIGVuZ2luZV9uZWVkc19idXN5X3N0YXRzKHN0cnVjdCBpbnRlbF9l bmdpbmVfY3MgKmVuZ2luZSkKK3sKKwlyZXR1cm4gc3VwcG9ydHNfYnVzeV9zdGF0cygpICYmCisJ ICAgICAgIChlbmdpbmUtPnBtdS5lbmFibGUgJiBCSVQoSTkxNV9TQU1QTEVfQlVTWSkpOworfQor CiBzdGF0aWMgdm9pZCBpOTE1X3BtdV9lbmFibGUoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQog ewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0KQEAgLTQzOCw3ICs0NTgsMjEgQEAg c3RhdGljIHZvaWQgaTkxNV9wbXVfZW5hYmxlKHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCkKIAog CQlHRU1fQlVHX09OKHNhbXBsZSA+PSBJOTE1X1BNVV9TQU1QTEVfQklUUyk7CiAJCUdFTV9CVUdf T04oZW5naW5lLT5wbXUuZW5hYmxlX2NvdW50W3NhbXBsZV0gPT0gfjApOwotCQllbmdpbmUtPnBt dS5lbmFibGVfY291bnRbc2FtcGxlXSsrOworCQlpZiAoZW5naW5lLT5wbXUuZW5hYmxlX2NvdW50 W3NhbXBsZV0rKyA9PSAwKSB7CisJCQkvKgorCQkJICogRW5hYmxlIGVuZ2luZSBidXN5IHN0YXRz IHRyYWNraW5nIGlmIG5lZWRlZCBvcgorCQkJICogYWx0ZXJuYXRpdmVseSBjYW5jZWwgdGhlIHNj aGVkdWxlZCBkaXNhYmxlLgorCQkJICoKKwkJCSAqIElmIHRoZSBkZWxheWVkIGRpc2FibGUgd2Fz IHBlbmRpbmcsIGNhbmNlbCBpdCBhbmQKKwkJCSAqIGluIHRoaXMgY2FzZSBkbyBub3QgZW5hYmxl IHNpbmNlIGl0IGFscmVhZHkgaXMuCisJCQkgKi8KKwkJCWlmIChlbmdpbmVfbmVlZHNfYnVzeV9z dGF0cyhlbmdpbmUpICYmCisJCQkgICAgIWVuZ2luZS0+cG11LmJ1c3lfc3RhdHMpIHsKKwkJCQll bmdpbmUtPnBtdS5idXN5X3N0YXRzID0gdHJ1ZTsKKwkJCQlpZiAoIWNhbmNlbF9kZWxheWVkX3dv cmsoJmVuZ2luZS0+cG11LmRpc2FibGVfYnVzeV9zdGF0cykpCisJCQkJCWludGVsX2VuYWJsZV9l bmdpbmVfc3RhdHMoZW5naW5lKTsKKwkJCX0KKwkJfQogCX0KIAogCS8qCkBAIC00NTEsNiArNDg1 LDE0IEBAIHN0YXRpYyB2b2lkIGk5MTVfcG11X2VuYWJsZShzdHJ1Y3QgcGVyZl9ldmVudCAqZXZl bnQpCiAJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaTkxNS0+cG11LmxvY2ssIGZsYWdzKTsKIH0K IAorc3RhdGljIHZvaWQgX19kaXNhYmxlX2J1c3lfc3RhdHMoc3RydWN0IHdvcmtfc3RydWN0ICp3 b3JrKQoreworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSA9CisJICAgICAgIGNvbnRh aW5lcl9vZih3b3JrLCB0eXBlb2YoKmVuZ2luZSksIHBtdS5kaXNhYmxlX2J1c3lfc3RhdHMud29y ayk7CisKKwlpbnRlbF9kaXNhYmxlX2VuZ2luZV9zdGF0cyhlbmdpbmUpOworfQorCiBzdGF0aWMg dm9pZCBpOTE1X3BtdV9kaXNhYmxlKHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCkKIHsKIAlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9CkBAIC00NzQsOCArNTE2LDI2IEBAIHN0YXRpYyB2 b2lkIGk5MTVfcG11X2Rpc2FibGUoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQogCQkgKiBEZWNy ZW1lbnQgdGhlIHJlZmVyZW5jZSBjb3VudCBhbmQgY2xlYXIgdGhlIGVuYWJsZWQKIAkJICogYml0 bWFzayB3aGVuIHRoZSBsYXN0IGxpc3RlbmVyIG9uIGFuIGV2ZW50IGdvZXMgYXdheS4KIAkJICov Ci0JCWlmICgtLWVuZ2luZS0+cG11LmVuYWJsZV9jb3VudFtzYW1wbGVdID09IDApCisJCWlmICgt LWVuZ2luZS0+cG11LmVuYWJsZV9jb3VudFtzYW1wbGVdID09IDApIHsKIAkJCWVuZ2luZS0+cG11 LmVuYWJsZSAmPSB+QklUKHNhbXBsZSk7CisJCQlpZiAoIWVuZ2luZV9uZWVkc19idXN5X3N0YXRz KGVuZ2luZSkgJiYKKwkJCSAgICBlbmdpbmUtPnBtdS5idXN5X3N0YXRzKSB7CisJCQkJZW5naW5l LT5wbXUuYnVzeV9zdGF0cyA9IGZhbHNlOworCQkJCS8qCisJCQkJICogV2UgcmVxdWVzdCBhIGRl bGF5ZWQgZGlzYWJsZSB0byBoYW5kbGUgdGhlCisJCQkJICogcmFwaWQgb24vb2ZmIGN5Y2xlcyBv biBldmVudHMsIHdoaWNoIGNhbgorCQkJCSAqIGhhcHBlbiB3aGVuIHRvb2xzIGxpa2UgcGVyZiBz dGF0IHN0YXJ0LCBpbiBhCisJCQkJICogbmljZXIgd2F5LgorCQkJCSAqCisJCQkJICogSW4gYWRk aXRpb24sIHRoaXMgYWxzbyBoZWxwcyB3aXRoIGJ1c3kgc3RhdHMKKwkJCQkgKiBhY2N1cmFjeSB3 aXRoIGJhY2tncm91bmQgQ1BVIG9mZmxpbmUvb25saW5lCisJCQkJICogbWlncmF0aW9uIGV2ZW50 cy4KKwkJCQkgKi8KKwkJCQlxdWV1ZV9kZWxheWVkX3dvcmsoc3lzdGVtX3dxLAorCQkJCQkJICAg JmVuZ2luZS0+cG11LmRpc2FibGVfYnVzeV9zdGF0cywKKwkJCQkJCSAgIHJvdW5kX2ppZmZpZXNf dXBfcmVsYXRpdmUoSFopKTsKKwkJCX0KKwkJfQogCX0KIAogCUdFTV9CVUdfT04oYml0ID49IEk5 MTVfUE1VX01BU0tfQklUUyk7CkBAIC03MDIsNiArNzYyLDggQEAgc3RhdGljIHZvaWQgaTkxNV9w bXVfdW5yZWdpc3Rlcl9jcHVocF9zdGF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkK IAogdm9pZCBpOTE1X3BtdV9yZWdpc3RlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkK IHsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7CisJZW51bSBpbnRlbF9lbmdpbmVf aWQgaWQ7CiAJaW50IHJldDsKIAogCWlmIChJTlRFTF9HRU4oaTkxNSkgPD0gMikgewpAQCAtNzIz LDYgKzc4NSwxMCBAQCB2b2lkIGk5MTVfcG11X3JlZ2lzdGVyKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICppOTE1KQogCWhydGltZXJfaW5pdCgmaTkxNS0+cG11LnRpbWVyLCBDTE9DS19NT05PVE9O SUMsIEhSVElNRVJfTU9ERV9SRUwpOwogCWk5MTUtPnBtdS50aW1lci5mdW5jdGlvbiA9IGk5MTVf c2FtcGxlOwogCisJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgaTkxNSwgaWQpCisJCUlOSVRfREVM QVlFRF9XT1JLKCZlbmdpbmUtPnBtdS5kaXNhYmxlX2J1c3lfc3RhdHMsCisJCQkJICBfX2Rpc2Fi bGVfYnVzeV9zdGF0cyk7CisKIAlyZXQgPSBwZXJmX3BtdV9yZWdpc3RlcigmaTkxNS0+cG11LmJh c2UsICJpOTE1IiwgLTEpOwogCWlmIChyZXQpCiAJCWdvdG8gZXJyOwpAQCAtNzQyLDYgKzgwOCw5 IEBAIHZvaWQgaTkxNV9wbXVfcmVnaXN0ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUp CiAKIHZvaWQgaTkxNV9wbXVfdW5yZWdpc3RlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkx NSkKIHsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7CisJZW51bSBpbnRlbF9lbmdp bmVfaWQgaWQ7CisKIAlpZiAoIWk5MTUtPnBtdS5iYXNlLmV2ZW50X2luaXQpCiAJCXJldHVybjsK IApAQCAtNzQ5LDYgKzgxOCwxMSBAQCB2b2lkIGk5MTVfcG11X3VucmVnaXN0ZXIoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmk5MTUpCiAKIAlocnRpbWVyX2NhbmNlbCgmaTkxNS0+cG11LnRpbWVy KTsKIAorCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGk5MTUsIGlkKSB7CisJCUdFTV9CVUdfT04o ZW5naW5lLT5wbXUuYnVzeV9zdGF0cyk7CisJCWZsdXNoX2RlbGF5ZWRfd29yaygmZW5naW5lLT5w bXUuZGlzYWJsZV9idXN5X3N0YXRzKTsKKwl9CisKIAlpOTE1X3BtdV91bnJlZ2lzdGVyX2NwdWhw X3N0YXRlKGk5MTUpOwogCiAJcGVyZl9wbXVfdW5yZWdpc3RlcigmaTkxNS0+cG11LmJhc2UpOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCmluZGV4IGEyODk1NTI3NGZmMy4u NjZmY2I0NWExNGNkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5n YnVmZmVyLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oCkBA IC0zNjYsNiArMzY2LDIwIEBAIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgewogCQkgKiBPdXIgaW50 ZXJuYWwgdGltZXIgc3RvcmVzIHRoZSBjdXJyZW50IGNvdW50ZXJzIGluIHRoaXMgZmllbGQuCiAJ CSAqLwogCQlzdHJ1Y3QgaTkxNV9wbXVfc2FtcGxlIHNhbXBsZVtJOTE1X0VOR0lORV9TQU1QTEVf TUFYXTsKKwkJLyoqCisJCSAqIEBidXN5X3N0YXRzOiBIYXMgZW5hYmxlbWVudCBvZiBlbmdpbmUg c3RhdHMgdHJhY2tpbmcgYmVlbgorCQkgKiAJCXJlcXVlc3RlZC4KKwkJICovCisJCWJvb2wgYnVz eV9zdGF0czsKKwkJLyoqCisJCSAqIEBkaXNhYmxlX2J1c3lfc3RhdHM6IFdvcmsgaXRlbSBmb3Ig YnVzeSBzdGF0cyBkaXNhYmxpbmcuCisJCSAqCisJCSAqIFNhbWUgYXMgd2l0aCBAZW5hYmxlX2J1 c3lfc3RhdHMgYWN0aW9uLCB3aXRoIHRoZSBkaWZmZXJlbmNlCisJCSAqIHRoYXQgd2UgZGVsYXkg aXQgaW4gY2FzZSB0aGVyZSBhcmUgcmFwaWQgZW5hYmxlLWRpc2FibGUKKwkJICogYWN0aW9ucywg d2hpY2ggY2FuIGhhcHBlbiBkdXJpbmcgdG9vbCBzdGFydHVwIChsaWtlIHBlcmYKKwkJICogc3Rh dCkuCisJCSAqLworCQlzdHJ1Y3QgZGVsYXllZF93b3JrIGRpc2FibGVfYnVzeV9zdGF0czsKIAl9 IHBtdTsKIAogCS8qCi0tIAoyLjkuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4Cg==