From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 6/9] drm/i915/pmu: Wire up engine busy stats to PMU Date: Wed, 11 Oct 2017 13:55:14 +0100 Message-ID: <20171011125517.1372-7-tvrtko.ursulin@linux.intel.com> References: <20171011125517.1372-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-x244.google.com (mail-wm0-x244.google.com [IPv6:2a00:1450:400c:c09::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 477B46E68B for ; Wed, 11 Oct 2017 12:55:31 +0000 (UTC) Received: by mail-wm0-x244.google.com with SMTP id q124so1791313wmb.5 for ; Wed, 11 Oct 2017 05:55:31 -0700 (PDT) In-Reply-To: <20171011125517.1372-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 dG8gaW1wcm92ZSBhY2N1cmFjeSBpbiBmYWNlIG9mCiAgICBDUFUgaG90cGx1ZyBldmVudHMuCgpT aWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgpS ZXZpZXdlZC1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ICh2NykK LS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jICAgICAgICAgfCA3OCArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Jp bmdidWZmZXIuaCB8IDE0ICsrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCA5MCBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf cG11LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BtdS5jCmluZGV4IGJkMzk0ZGE0N2M3 YS4uNDM0ODk1Mjg4MDk0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Bt dS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcG11LmMKQEAgLTkwLDYgKzkwLDEx IEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgZXZlbnRfZW5hYmxlZF9iaXQoc3RydWN0IHBlcmZfZXZl bnQgKmV2ZW50KQogCXJldHVybiBjb25maWdfZW5hYmxlZF9iaXQoZXZlbnQtPmF0dHIuY29uZmln KTsKIH0KIAorc3RhdGljIGJvb2wgc3VwcG9ydHNfYnVzeV9zdGF0cyh2b2lkKQoreworCXJldHVy biBpOTE1X21vZHBhcmFtcy5lbmFibGVfZXhlY2xpc3RzOworfQorCiBzdGF0aWMgYm9vbCBwbXVf bmVlZHNfdGltZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGJvb2wgZ3B1X2FjdGl2 ZSkKIHsKIAl1NjQgZW5hYmxlOwpAQCAtMTE1LDYgKzEyMCwxMiBAQCBzdGF0aWMgYm9vbCBwbXVf bmVlZHNfdGltZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsIGJvb2wgZ3B1X2FjdGl2 ZSkKIAkgKi8KIAlpZiAoIWdwdV9hY3RpdmUpCiAJCWVuYWJsZSAmPSB+RU5HSU5FX1NBTVBMRV9N QVNLOworCS8qCisJICogQWxzbyB0aGVyZSBpcyBzb2Z0d2FyZSBidXN5bmVzcyB0cmFja2luZyBh dmFpbGFibGUgd2UgZG8gbm90CisJICogbmVlZCB0aGUgdGltZXIgZm9yIEk5MTVfU0FNUExFX0JV U1kgY291bnRlci4KKwkgKi8KKwllbHNlIGlmIChzdXBwb3J0c19idXN5X3N0YXRzKCkpCisJCWVu YWJsZSAmPSB+QklUKEk5MTVfU0FNUExFX0JVU1kpOwogCiAJLyoKIAkgKiBJZiBzb21lIGJpdHMg cmVtYWluIGl0IG1lYW5zIHdlIG5lZWQgdGhlIHNhbXBsaW5nIHRpbWVyIHJ1bm5pbmcuCkBAIC0z NjMsNiArMzc0LDkgQEAgc3RhdGljIHU2NCBfX2k5MTVfcG11X2V2ZW50X3JlYWQoc3RydWN0IHBl cmZfZXZlbnQgKmV2ZW50KQogCiAJCWlmIChXQVJOX09OX09OQ0UoIWVuZ2luZSkpIHsKIAkJCS8q IERvIG5vdGhpbmcgKi8KKwkJfSBlbHNlIGlmIChzYW1wbGUgPT0gSTkxNV9TQU1QTEVfQlVTWSAm JgorCQkJICAgZW5naW5lLT5wbXUuYnVzeV9zdGF0cykgeworCQkJdmFsID0ga3RpbWVfdG9fbnMo aW50ZWxfZW5naW5lX2dldF9idXN5X3RpbWUoZW5naW5lKSk7CiAJCX0gZWxzZSB7CiAJCQl2YWwg PSBlbmdpbmUtPnBtdS5zYW1wbGVbc2FtcGxlXS5jdXI7CiAJCX0KQEAgLTM5OSw2ICs0MTMsMTIg QEAgc3RhdGljIHZvaWQgaTkxNV9wbXVfZXZlbnRfcmVhZChzdHJ1Y3QgcGVyZl9ldmVudCAqZXZl bnQpCiAJbG9jYWw2NF9hZGQobmV3IC0gcHJldiwgJmV2ZW50LT5jb3VudCk7CiB9CiAKK3N0YXRp YyBib29sIGVuZ2luZV9uZWVkc19idXN5X3N0YXRzKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVu Z2luZSkKK3sKKwlyZXR1cm4gc3VwcG9ydHNfYnVzeV9zdGF0cygpICYmCisJICAgICAgIChlbmdp bmUtPnBtdS5lbmFibGUgJiBCSVQoSTkxNV9TQU1QTEVfQlVTWSkpOworfQorCiBzdGF0aWMgdm9p ZCBpOTE1X3BtdV9lbmFibGUoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQogewogCXN0cnVjdCBk cm1faTkxNV9wcml2YXRlICppOTE1ID0KQEAgLTQzOCw3ICs0NTgsMjEgQEAgc3RhdGljIHZvaWQg aTkxNV9wbXVfZW5hYmxlKHN0cnVjdCBwZXJmX2V2ZW50ICpldmVudCkKIAogCQlHRU1fQlVHX09O KHNhbXBsZSA+PSBJOTE1X1BNVV9TQU1QTEVfQklUUyk7CiAJCUdFTV9CVUdfT04oZW5naW5lLT5w bXUuZW5hYmxlX2NvdW50W3NhbXBsZV0gPT0gfjApOwotCQllbmdpbmUtPnBtdS5lbmFibGVfY291 bnRbc2FtcGxlXSsrOworCQlpZiAoZW5naW5lLT5wbXUuZW5hYmxlX2NvdW50W3NhbXBsZV0rKyA9 PSAwKSB7CisJCQkvKgorCQkJICogRW5hYmxlIGVuZ2luZSBidXN5IHN0YXRzIHRyYWNraW5nIGlm IG5lZWRlZCBvcgorCQkJICogYWx0ZXJuYXRpdmVseSBjYW5jZWwgdGhlIHNjaGVkdWxlZCBkaXNh YmxlLgorCQkJICoKKwkJCSAqIElmIHRoZSBkZWxheWVkIGRpc2FibGUgd2FzIHBlbmRpbmcsIGNh bmNlbCBpdCBhbmQKKwkJCSAqIGluIHRoaXMgY2FzZSBkbyBub3QgZW5hYmxlIHNpbmNlIGl0IGFs cmVhZHkgaXMuCisJCQkgKi8KKwkJCWlmIChlbmdpbmVfbmVlZHNfYnVzeV9zdGF0cyhlbmdpbmUp ICYmCisJCQkgICAgIWVuZ2luZS0+cG11LmJ1c3lfc3RhdHMpIHsKKwkJCQllbmdpbmUtPnBtdS5i dXN5X3N0YXRzID0gdHJ1ZTsKKwkJCQlpZiAoIWNhbmNlbF9kZWxheWVkX3dvcmsoJmVuZ2luZS0+ cG11LmRpc2FibGVfYnVzeV9zdGF0cykpCisJCQkJCWludGVsX2VuYWJsZV9lbmdpbmVfc3RhdHMo ZW5naW5lKTsKKwkJCX0KKwkJfQogCX0KIAogCS8qCkBAIC00NzQsOCArNTA4LDI2IEBAIHN0YXRp YyB2b2lkIGk5MTVfcG11X2Rpc2FibGUoc3RydWN0IHBlcmZfZXZlbnQgKmV2ZW50KQogCQkgKiBE ZWNyZW1lbnQgdGhlIHJlZmVyZW5jZSBjb3VudCBhbmQgY2xlYXIgdGhlIGVuYWJsZWQKIAkJICog Yml0bWFzayB3aGVuIHRoZSBsYXN0IGxpc3RlbmVyIG9uIGFuIGV2ZW50IGdvZXMgYXdheS4KIAkJ ICovCi0JCWlmICgtLWVuZ2luZS0+cG11LmVuYWJsZV9jb3VudFtzYW1wbGVdID09IDApCisJCWlm ICgtLWVuZ2luZS0+cG11LmVuYWJsZV9jb3VudFtzYW1wbGVdID09IDApIHsKIAkJCWVuZ2luZS0+ cG11LmVuYWJsZSAmPSB+QklUKHNhbXBsZSk7CisJCQlpZiAoIWVuZ2luZV9uZWVkc19idXN5X3N0 YXRzKGVuZ2luZSkgJiYKKwkJCSAgICBlbmdpbmUtPnBtdS5idXN5X3N0YXRzKSB7CisJCQkJZW5n aW5lLT5wbXUuYnVzeV9zdGF0cyA9IGZhbHNlOworCQkJCS8qCisJCQkJICogV2UgcmVxdWVzdCBh IGRlbGF5ZWQgZGlzYWJsZSB0byBoYW5kbGUgdGhlCisJCQkJICogcmFwaWQgb24vb2ZmIGN5Y2xl cyBvbiBldmVudHMsIHdoaWNoIGNhbgorCQkJCSAqIGhhcHBlbiB3aGVuIHRvb2xzIGxpa2UgcGVy ZiBzdGF0IHN0YXJ0LCBpbiBhCisJCQkJICogbmljZXIgd2F5LgorCQkJCSAqCisJCQkJICogSW4g YWRkaXRpb24sIHRoaXMgYWxzbyBoZWxwcyB3aXRoIGJ1c3kgc3RhdHMKKwkJCQkgKiBhY2N1cmFj eSB3aXRoIGJhY2tncm91bmQgQ1BVIG9mZmxpbmUvb25saW5lCisJCQkJICogbWlncmF0aW9uIGV2 ZW50cy4KKwkJCQkgKi8KKwkJCQlxdWV1ZV9kZWxheWVkX3dvcmsoc3lzdGVtX3dxLAorCQkJCQkJ ICAgJmVuZ2luZS0+cG11LmRpc2FibGVfYnVzeV9zdGF0cywKKwkJCQkJCSAgIHJvdW5kX2ppZmZp ZXNfdXBfcmVsYXRpdmUoSFopKTsKKwkJCX0KKwkJfQogCX0KIAogCUdFTV9CVUdfT04oYml0ID49 IEk5MTVfUE1VX01BU0tfQklUUyk7CkBAIC02NTcsOCArNzA5LDE4IEBAIHN0YXRpYyBpbnQgaTkx NV9wbXVfY3B1X29mZmxpbmUodW5zaWduZWQgaW50IGNwdSwgc3RydWN0IGhsaXN0X25vZGUgKm5v ZGUpCiAJcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyB2b2lkIF9fZGlzYWJsZV9idXN5X3N0YXRzKHN0 cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKK3sKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdp bmUgPQorCSAgICAgICBjb250YWluZXJfb2Yod29yaywgdHlwZW9mKCplbmdpbmUpLCBwbXUuZGlz YWJsZV9idXN5X3N0YXRzLndvcmspOworCisJaW50ZWxfZGlzYWJsZV9lbmdpbmVfc3RhdHMoZW5n aW5lKTsKK30KKwogdm9pZCBpOTE1X3BtdV9yZWdpc3RlcihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqaTkxNSkKIHsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7CisJZW51bSBpbnRl bF9lbmdpbmVfaWQgaWQ7CiAJaW50IHJldDsKIAogCWlmIChJTlRFTF9HRU4oaTkxNSkgPD0gMikg ewpAQCAtNjkzLDYgKzc1NSwxMCBAQCB2b2lkIGk5MTVfcG11X3JlZ2lzdGVyKHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICppOTE1KQogCWk5MTUtPnBtdS50aW1lci5mdW5jdGlvbiA9IGk5MTVfc2Ft cGxlOwogCWk5MTUtPnBtdS5lbmFibGUgPSAwOwogCisJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwg aTkxNSwgaWQpCisJCUlOSVRfREVMQVlFRF9XT1JLKCZlbmdpbmUtPnBtdS5kaXNhYmxlX2J1c3lf c3RhdHMsCisJCQkJICBfX2Rpc2FibGVfYnVzeV9zdGF0cyk7CisKIAlyZXQgPSBwZXJmX3BtdV9y ZWdpc3RlcigmaTkxNS0+cG11LmJhc2UsICJpOTE1IiwgLTEpOwogCWlmIChyZXQgPT0gMCkKIAkJ cmV0dXJuOwpAQCAtNzExLDYgKzc3Nyw5IEBAIHZvaWQgaTkxNV9wbXVfcmVnaXN0ZXIoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiAKIHZvaWQgaTkxNV9wbXVfdW5yZWdpc3RlcihzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIHsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpl bmdpbmU7CisJZW51bSBpbnRlbF9lbmdpbmVfaWQgaWQ7CisKIAlpZiAoIWk5MTUtPnBtdS5iYXNl LmV2ZW50X2luaXQpCiAJCXJldHVybjsKIApAQCAtNzIyLDYgKzc5MSwxMSBAQCB2b2lkIGk5MTVf cG11X3VucmVnaXN0ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiAKIAlocnRpbWVy X2NhbmNlbCgmaTkxNS0+cG11LnRpbWVyKTsKIAorCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGk5 MTUsIGlkKSB7CisJCUdFTV9CVUdfT04oZW5naW5lLT5wbXUuYnVzeV9zdGF0cyk7CisJCWZsdXNo X2RlbGF5ZWRfd29yaygmZW5naW5lLT5wbXUuZGlzYWJsZV9idXN5X3N0YXRzKTsKKwl9CisKIAlw ZXJmX3BtdV91bnJlZ2lzdGVyKCZpOTE1LT5wbXUuYmFzZSk7CiAJaTkxNS0+cG11LmJhc2UuZXZl bnRfaW5pdCA9IE5VTEw7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9yaW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgK aW5kZXggODUwNjIwNjk5NDY4Li44NzFkY2E3ZTgyYmEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmgKQEAgLTM1OCw2ICszNTgsMjAgQEAgc3RydWN0IGludGVsX2VuZ2lu ZV9jcyB7CiAJCSAqIE91ciBpbnRlcm5hbCB0aW1lciBzdG9yZXMgdGhlIGN1cnJlbnQgY291bnRl cnMgaW4gdGhpcyBmaWVsZC4KIAkJICovCiAJCXN0cnVjdCBpOTE1X3BtdV9zYW1wbGUgc2FtcGxl W0k5MTVfRU5HSU5FX1NBTVBMRV9NQVhdOworCQkvKioKKwkJICogQGJ1c3lfc3RhdHM6IEhhcyBl bmFibGVtZW50IG9mIGVuZ2luZSBzdGF0cyB0cmFja2luZyBiZWVuCisJCSAqIAkJcmVxdWVzdGVk LgorCQkgKi8KKwkJYm9vbCBidXN5X3N0YXRzOworCQkvKioKKwkJICogQGRpc2FibGVfYnVzeV9z dGF0czogV29yayBpdGVtIGZvciBidXN5IHN0YXRzIGRpc2FibGluZy4KKwkJICoKKwkJICogU2Ft ZSBhcyB3aXRoIEBlbmFibGVfYnVzeV9zdGF0cyBhY3Rpb24sIHdpdGggdGhlIGRpZmZlcmVuY2UK KwkJICogdGhhdCB3ZSBkZWxheSBpdCBpbiBjYXNlIHRoZXJlIGFyZSByYXBpZCBlbmFibGUtZGlz YWJsZQorCQkgKiBhY3Rpb25zLCB3aGljaCBjYW4gaGFwcGVuIGR1cmluZyB0b29sIHN0YXJ0dXAg KGxpa2UgcGVyZgorCQkgKiBzdGF0KS4KKwkJICovCisJCXN0cnVjdCBkZWxheWVkX3dvcmsgZGlz YWJsZV9idXN5X3N0YXRzOwogCX0gcG11OwogCiAJLyoKLS0gCjIuOS41CgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK