From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH 10/22] drm/i915/selftests: add write-dword test for LMEM Date: Fri, 27 Sep 2019 18:33:57 +0100 Message-ID: <20190927173409.31175-11-matthew.auld@intel.com> References: <20190927173409.31175-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 50A6B6E17D for ; Fri, 27 Sep 2019 17:34:28 +0000 (UTC) In-Reply-To: <20190927173409.31175-1-matthew.auld@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@ffwll.ch List-Id: intel-gfx@lists.freedesktop.org U2ltcGxlIHRlc3Qgd3JpdGluZyB0byBkd29yZHMgYWNyb3NzIGFuIG9iamVjdCwgdXNpbmcgdmFy aW91cyBlbmdpbmVzIGluCmEgcmFuZG9taXplZCBvcmRlciwgY2hlY2tpbmcgdGhhdCBvdXIgd3Jp dGVzIGxhbmQgZnJvbSB0aGUgY3B1LgoKU2lnbmVkLW9mZi1ieTogTWF0dGhldyBBdWxkIDxtYXR0 aGV3LmF1bGRAaW50ZWwuY29tPgotLS0KIC4uLi9kcm0vaTkxNS9zZWxmdGVzdHMvaW50ZWxfbWVt b3J5X3JlZ2lvbi5jICB8IDE3OSArKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAx NzkgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0 ZXN0cy9pbnRlbF9tZW1vcnlfcmVnaW9uLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVz dHMvaW50ZWxfbWVtb3J5X3JlZ2lvbi5jCmluZGV4IGJhOThlODI1NGI4MC4uOGQ3ZDhiOWUwMGRh IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaW50ZWxfbWVtb3J5 X3JlZ2lvbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pbnRlbF9tZW1v cnlfcmVnaW9uLmMKQEAgLTcsMTMgKzcsMTYgQEAKIAogI2luY2x1ZGUgIi4uL2k5MTVfc2VsZnRl c3QuaCIKIAorCiAjaW5jbHVkZSAibW9ja19kcm0uaCIKICNpbmNsdWRlICJtb2NrX2dlbV9kZXZp Y2UuaCIKICNpbmNsdWRlICJtb2NrX3JlZ2lvbi5oIgogCisjaW5jbHVkZSAiZ2VtL2k5MTVfZ2Vt X2NvbnRleHQuaCIKICNpbmNsdWRlICJnZW0vaTkxNV9nZW1fbG1lbS5oIgogI2luY2x1ZGUgImdl bS9pOTE1X2dlbV9yZWdpb24uaCIKICNpbmNsdWRlICJnZW0vaTkxNV9nZW1fb2JqZWN0X2JsdC5o IgorI2luY2x1ZGUgImdlbS9zZWxmdGVzdHMvaWd0X2dlbV91dGlscy5oIgogI2luY2x1ZGUgImdl bS9zZWxmdGVzdHMvbW9ja19jb250ZXh0LmgiCiAjaW5jbHVkZSAiZ3QvaW50ZWxfZ3QuaCIKICNp bmNsdWRlICJzZWxmdGVzdHMvaWd0X2ZsdXNoX3Rlc3QuaCIKQEAgLTI1NSw2ICsyNTgsMTMzIEBA IHN0YXRpYyBpbnQgaWd0X21vY2tfY29udGludW91cyh2b2lkICphcmcpCiAJcmV0dXJuIGVycjsK IH0KIAorc3RhdGljIGludCBpZ3RfZ3B1X3dyaXRlX2R3KHN0cnVjdCBpbnRlbF9jb250ZXh0ICpj ZSwKKwkJCSAgICBzdHJ1Y3QgaTkxNV92bWEgKnZtYSwKKwkJCSAgICB1MzIgZHdvcmQsCisJCQkg ICAgdTMyIHZhbHVlKQoreworCWludCBlcnI7CisKKwlpOTE1X2dlbV9vYmplY3RfbG9jayh2bWEt Pm9iaik7CisJZXJyID0gaTkxNV9nZW1fb2JqZWN0X3NldF90b19ndHRfZG9tYWluKHZtYS0+b2Jq LCB0cnVlKTsKKwlpOTE1X2dlbV9vYmplY3RfdW5sb2NrKHZtYS0+b2JqKTsKKwlpZiAoZXJyKQor CQlyZXR1cm4gZXJyOworCisJcmV0dXJuIGlndF9ncHVfZmlsbF9kdyhjZSwgdm1hLCBkd29yZCAq IHNpemVvZih1MzIpLAorCQkJICAgICAgIHZtYS0+c2l6ZSA+PiBQQUdFX1NISUZULCB2YWx1ZSk7 Cit9CisKK3N0YXRpYyBpbnQgaWd0X2NwdV9jaGVjayhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqLCB1MzIgZHdvcmQsIHUzMiB2YWwpCit7CisJdW5zaWduZWQgbG9uZyBuOworCWludCBl cnI7CisKKwlpOTE1X2dlbV9vYmplY3RfbG9jayhvYmopOworCWVyciA9IGk5MTVfZ2VtX29iamVj dF9zZXRfdG9fd2NfZG9tYWluKG9iaiwgZmFsc2UpOworCWk5MTVfZ2VtX29iamVjdF91bmxvY2so b2JqKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCisJZXJyID0gaTkxNV9nZW1fb2JqZWN0 X3Bpbl9wYWdlcyhvYmopOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisKKwlmb3IgKG4gPSAw OyBuIDwgb2JqLT5iYXNlLnNpemUgPj4gUEFHRV9TSElGVDsgKytuKSB7CisJCXUzMiBfX2lvbWVt ICpiYXNlOworCQl1MzIgcmVhZF92YWw7CisKKwkJYmFzZSA9IGk5MTVfZ2VtX29iamVjdF9sbWVt X2lvX21hcF9wYWdlX2F0b21pYyhvYmosIG4pOworCisJCXJlYWRfdmFsID0gaW9yZWFkMzIoYmFz ZSArIGR3b3JkKTsKKwkJaW9fbWFwcGluZ191bm1hcF9hdG9taWMoYmFzZSk7CisJCWlmIChyZWFk X3ZhbCAhPSB2YWwpIHsKKwkJCXByX2Vycigibj0lbHUgYmFzZVsldV09JXUsIHZhbD0ldVxuIiwK KwkJCSAgICAgICBuLCBkd29yZCwgcmVhZF92YWwsIHZhbCk7CisJCQllcnIgPSAtRUlOVkFMOwor CQkJYnJlYWs7CisJCX0KKwl9CisKKwlpOTE1X2dlbV9vYmplY3RfdW5waW5fcGFnZXMob2JqKTsK KwlyZXR1cm4gZXJyOworfQorCitzdGF0aWMgaW50IGlndF9ncHVfd3JpdGUoc3RydWN0IGk5MTVf Z2VtX2NvbnRleHQgKmN0eCwKKwkJCSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQor eworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gY3R4LT5pOTE1OworCXN0cnVjdCBp OTE1X2FkZHJlc3Nfc3BhY2UgKnZtID0gY3R4LT52bSA/OiAmaTkxNS0+Z2d0dC52bTsKKwlzdHJ1 Y3QgaTkxNV9nZW1fZW5naW5lcyAqZW5naW5lczsKKwlzdHJ1Y3QgaTkxNV9nZW1fZW5naW5lc19p dGVyIGl0OworCXN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZTsKKwlJOTE1X1JORF9TVEFURShwcm5n KTsKKwlJR1RfVElNRU9VVChlbmRfdGltZSk7CisJdW5zaWduZWQgaW50IGNvdW50OworCXN0cnVj dCBpOTE1X3ZtYSAqdm1hOworCWludCAqb3JkZXI7CisJaW50IGksIG47CisJaW50IGVyciA9IDA7 CisKKwlHRU1fQlVHX09OKCFpOTE1X2dlbV9vYmplY3RfaGFzX3Bpbm5lZF9wYWdlcyhvYmopKTsK KworCW4gPSAwOworCWNvdW50ID0gMDsKKwlmb3JfZWFjaF9nZW1fZW5naW5lKGNlLCBpOTE1X2dl bV9jb250ZXh0X2xvY2tfZW5naW5lcyhjdHgpLCBpdCkgeworCQljb3VudCsrOworCQlpZiAoIWlu dGVsX2VuZ2luZV9jYW5fc3RvcmVfZHdvcmQoY2UtPmVuZ2luZSkpCisJCQljb250aW51ZTsKKwor CQluKys7CisJfQorCWk5MTVfZ2VtX2NvbnRleHRfdW5sb2NrX2VuZ2luZXMoY3R4KTsKKwlpZiAo IW4pCisJCXJldHVybiAwOworCisJb3JkZXIgPSBpOTE1X3JhbmRvbV9vcmRlcihjb3VudCAqIGNv dW50LCAmcHJuZyk7CisJaWYgKCFvcmRlcikKKwkJcmV0dXJuIC1FTk9NRU07CisKKwl2bWEgPSBp OTE1X3ZtYV9pbnN0YW5jZShvYmosIHZtLCBOVUxMKTsKKwlpZiAoSVNfRVJSKHZtYSkpIHsKKwkJ ZXJyID0gUFRSX0VSUih2bWEpOworCQlnb3RvIG91dF9mcmVlOworCX0KKworCWVyciA9IGk5MTVf dm1hX3Bpbih2bWEsIDAsIDAsIFBJTl9VU0VSKTsKKwlpZiAoZXJyKQorCQlnb3RvIG91dF9mcmVl OworCisJaSA9IDA7CisJZW5naW5lcyA9IGk5MTVfZ2VtX2NvbnRleHRfbG9ja19lbmdpbmVzKGN0 eCk7CisJZG8geworCQl1MzIgcm5nID0gcHJhbmRvbV91MzJfc3RhdGUoJnBybmcpOworCQl1MzIg ZHdvcmQgPSBvZmZzZXRfaW5fcGFnZShybmcpIC8gNDsKKworCQljZSA9IGVuZ2luZXMtPmVuZ2lu ZXNbb3JkZXJbaV0gJSBlbmdpbmVzLT5udW1fZW5naW5lc107CisJCWkgPSAoaSArIDEpICUgKGNv dW50ICogY291bnQpOworCQlpZiAoIWNlIHx8ICFpbnRlbF9lbmdpbmVfY2FuX3N0b3JlX2R3b3Jk KGNlLT5lbmdpbmUpKQorCQkJY29udGludWU7CisKKwkJZXJyID0gaWd0X2dwdV93cml0ZV9kdyhj ZSwgdm1hLCBkd29yZCwgcm5nKTsKKwkJaWYgKGVycikKKwkJCWJyZWFrOworCisJCWVyciA9IGln dF9jcHVfY2hlY2sob2JqLCBkd29yZCwgcm5nKTsKKwkJaWYgKGVycikKKwkJCWJyZWFrOworCX0g d2hpbGUgKCFfX2lndF90aW1lb3V0KGVuZF90aW1lLCBOVUxMKSk7CisJaTkxNV9nZW1fY29udGV4 dF91bmxvY2tfZW5naW5lcyhjdHgpOworCitvdXRfZnJlZToKKwlrZnJlZShvcmRlcik7CisKKwlp ZiAoZXJyID09IC1FTk9NRU0pCisJCWVyciA9IDA7CisKKwlyZXR1cm4gZXJyOworfQorCiBzdGF0 aWMgaW50IGlndF9sbWVtX2NyZWF0ZSh2b2lkICphcmcpCiB7CiAJc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmk5MTUgPSBhcmc7CkBAIC0yNzYsNiArNDA2LDU0IEBAIHN0YXRpYyBpbnQgaWd0X2xt ZW1fY3JlYXRlKHZvaWQgKmFyZykKIAlyZXR1cm4gZXJyOwogfQogCitzdGF0aWMgaW50IGlndF9s bWVtX3dyaXRlX2dwdSh2b2lkICphcmcpCit7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5 MTUgPSBhcmc7CisJc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iajsKKwlzdHJ1Y3QgaTkx NV9nZW1fY29udGV4dCAqY3R4OworCXN0cnVjdCBkcm1fZmlsZSAqZmlsZTsKKwlJOTE1X1JORF9T VEFURShwcm5nKTsKKwl1MzIgc3o7CisJaW50IGVycjsKKworCW11dGV4X3VubG9jaygmaTkxNS0+ ZHJtLnN0cnVjdF9tdXRleCk7CisJZmlsZSA9IG1vY2tfZmlsZShpOTE1KTsKKwltdXRleF9sb2Nr KCZpOTE1LT5kcm0uc3RydWN0X211dGV4KTsKKwlpZiAoSVNfRVJSKGZpbGUpKQorCQlyZXR1cm4g UFRSX0VSUihmaWxlKTsKKworCWN0eCA9IGxpdmVfY29udGV4dChpOTE1LCBmaWxlKTsKKwlpZiAo SVNfRVJSKGN0eCkpIHsKKwkJZXJyID0gUFRSX0VSUihjdHgpOworCQlnb3RvIG91dF9maWxlOwor CX0KKworCXN6ID0gcm91bmRfdXAocHJhbmRvbV91MzJfc3RhdGUoJnBybmcpICUgU1pfMzJNLCBQ QUdFX1NJWkUpOworCisJb2JqID0gaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZV9sbWVtKGk5MTUsIHN6 LCAwKTsKKwlpZiAoSVNfRVJSKG9iaikpIHsKKwkJZXJyID0gUFRSX0VSUihvYmopOworCQlnb3Rv IG91dF9maWxlOworCX0KKworCWVyciA9IGk5MTVfZ2VtX29iamVjdF9waW5fcGFnZXMob2JqKTsK KwlpZiAoZXJyKQorCQlnb3RvIG91dF9wdXQ7CisKKwllcnIgPSBpZ3RfZ3B1X3dyaXRlKGN0eCwg b2JqKTsKKwlpZiAoZXJyKQorCQlwcl9lcnIoImlndF9ncHVfd3JpdGUgZmFpbGVkKCVkKVxuIiwg ZXJyKTsKKworCWk5MTVfZ2VtX29iamVjdF91bnBpbl9wYWdlcyhvYmopOworb3V0X3B1dDoKKwlp OTE1X2dlbV9vYmplY3RfcHV0KG9iaik7CitvdXRfZmlsZToKKwltdXRleF91bmxvY2soJmk5MTUt PmRybS5zdHJ1Y3RfbXV0ZXgpOworCW1vY2tfZmlsZV9mcmVlKGk5MTUsIGZpbGUpOworCW11dGV4 X2xvY2soJmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgpOworCXJldHVybiBlcnI7Cit9CisKIHN0YXRp YyBpbnQgaWd0X2xtZW1fd3JpdGVfY3B1KHZvaWQgKmFyZykKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqaTkxNSA9IGFyZzsKQEAgLTM4OSw2ICs1NjcsNyBAQCBpbnQgaW50ZWxfbWVtb3J5 X3JlZ2lvbl9saXZlX3NlbGZ0ZXN0cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIAlz dGF0aWMgY29uc3Qgc3RydWN0IGk5MTVfc3VidGVzdCB0ZXN0c1tdID0gewogCQlTVUJURVNUKGln dF9sbWVtX2NyZWF0ZSksCiAJCVNVQlRFU1QoaWd0X2xtZW1fd3JpdGVfY3B1KSwKKwkJU1VCVEVT VChpZ3RfbG1lbV93cml0ZV9ncHUpLAogCX07CiAJaW50IGVycjsKIAotLSAKMi4yMC4xCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=