From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH v2 12/37] drm/i915/selftests: add write-dword test for LMEM Date: Thu, 27 Jun 2019 21:56:08 +0100 Message-ID: <20190627205633.1143-13-matthew.auld@intel.com> References: <20190627205633.1143-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9617D6E841 for ; Thu, 27 Jun 2019 20:56:50 +0000 (UTC) In-Reply-To: <20190627205633.1143-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 List-Id: intel-gfx@lists.freedesktop.org U2ltcGxlIHRlc3Qgd3JpdGluZyB0byBkd29yZHMgYWNyb3NzIGFuIG9iamVjdCwgdXNpbmcgdmFy aW91cyBlbmdpbmVzIGluCmEgcmFuZG9taXplZCBvcmRlciwgY2hlY2tpbmcgdGhhdCBvdXIgd3Jp dGVzIGxhbmQgZnJvbSB0aGUgY3B1LgoKU2lnbmVkLW9mZi1ieTogTWF0dGhldyBBdWxkIDxtYXR0 aGV3LmF1bGRAaW50ZWwuY29tPgotLS0KIC4uLi9kcm0vaTkxNS9zZWxmdGVzdHMvaW50ZWxfbWVt b3J5X3JlZ2lvbi5jICB8IDE2MSArKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAx NjEgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0 ZXN0cy9pbnRlbF9tZW1vcnlfcmVnaW9uLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVz dHMvaW50ZWxfbWVtb3J5X3JlZ2lvbi5jCmluZGV4IDg1ZDExOGMxMGQxNS4uMjNjNDY2YTFiODAw IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaW50ZWxfbWVtb3J5 X3JlZ2lvbi5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pbnRlbF9tZW1v cnlfcmVnaW9uLmMKQEAgLTEwLDYgKzEwLDcgQEAKICNpbmNsdWRlICJtb2NrX2dlbV9kZXZpY2Uu aCIKICNpbmNsdWRlICJnZW0vc2VsZnRlc3RzL21vY2tfY29udGV4dC5oIgogI2luY2x1ZGUgInNl bGZ0ZXN0cy9pZ3RfZmx1c2hfdGVzdC5oIgorI2luY2x1ZGUgInNlbGZ0ZXN0cy9pOTE1X3JhbmRv bS5oIgogI2luY2x1ZGUgIm1vY2tfZHJtLmgiCiAKICNpbmNsdWRlICJnZW0vaTkxNV9nZW1fb2Jq ZWN0X2JsdC5oIgpAQCAtMzQ3LDYgKzM0OCwxMjggQEAgc3RhdGljIGludCBpZ3RfbW9ja192b2xh dGlsZSh2b2lkICphcmcpCiAJcmV0dXJuIGVycjsKIH0KIAorc3RhdGljIGludCBpZ3RfZ3B1X3dy aXRlX2R3KHN0cnVjdCBpOTE1X3ZtYSAqdm1hLAorCQkJICAgIHN0cnVjdCBpOTE1X2dlbV9jb250 ZXh0ICpjdHgsCisJCQkgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLAorCQkJICAg IHUzMiBkd29yZCwKKwkJCSAgICB1MzIgdmFsdWUpCit7CisJaW50IGVycjsKKworCWk5MTVfZ2Vt X29iamVjdF9sb2NrKHZtYS0+b2JqKTsKKwllcnIgPSBpOTE1X2dlbV9vYmplY3Rfc2V0X3RvX2d0 dF9kb21haW4odm1hLT5vYmosIHRydWUpOworCWk5MTVfZ2VtX29iamVjdF91bmxvY2sodm1hLT5v YmopOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisKKwlyZXR1cm4gaWd0X2dwdV9maWxsX2R3 KHZtYSwgY3R4LCBlbmdpbmUsIGR3b3JkICogc2l6ZW9mKHUzMiksCisJCQkgICAgICAgdm1hLT5z aXplID4+IFBBR0VfU0hJRlQsIHZhbHVlKTsKK30KKworc3RhdGljIGludCBpZ3RfY3B1X2NoZWNr KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIHUzMiBkd29yZCwgdTMyIHZhbCkKK3sK Kwl1bnNpZ25lZCBsb25nIG47CisJaW50IGVycjsKKworCWk5MTVfZ2VtX29iamVjdF9sb2NrKG9i aik7CisJZXJyID0gaTkxNV9nZW1fb2JqZWN0X3NldF90b193Y19kb21haW4ob2JqLCBmYWxzZSk7 CisJaTkxNV9nZW1fb2JqZWN0X3VubG9jayhvYmopOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7 CisKKwllcnIgPSBpOTE1X2dlbV9vYmplY3RfcGluX3BhZ2VzKG9iaik7CisJaWYgKGVycikKKwkJ cmV0dXJuIGVycjsKKworCWZvciAobiA9IDA7IG4gPCBvYmotPmJhc2Uuc2l6ZSA+PiBQQUdFX1NI SUZUOyArK24pIHsKKwkJdTMyIF9faW9tZW0gKmJhc2U7CisJCXUzMiByZWFkX3ZhbDsKKworCQli YXNlID0gaTkxNV9nZW1fb2JqZWN0X2xtZW1faW9fbWFwX3BhZ2Uob2JqLCBuKTsKKworCQlyZWFk X3ZhbCA9IGlvcmVhZDMyKGJhc2UgKyBkd29yZCk7CisJCWlvX21hcHBpbmdfdW5tYXBfYXRvbWlj KGJhc2UpOworCQlpZiAocmVhZF92YWwgIT0gdmFsKSB7CisJCQlwcl9lcnIoIm49JWx1IGJhc2Vb JXVdPSV1LCB2YWw9JXVcbiIsCisJCQkgICAgICAgbiwgZHdvcmQsIHJlYWRfdmFsLCB2YWwpOwor CQkJZXJyID0gLUVJTlZBTDsKKwkJCWJyZWFrOworCQl9CisJfQorCisJaTkxNV9nZW1fb2JqZWN0 X3VucGluX3BhZ2VzKG9iaik7CisJcmV0dXJuIGVycjsKK30KKworc3RhdGljIGludCBpZ3RfZ3B1 X3dyaXRlKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCisJCQkgc3RydWN0IGRybV9pOTE1 X2dlbV9vYmplY3QgKm9iaikKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9IGN0 eC0+aTkxNTsKKwlzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSA9IGN0eC0+dm0gPzogJmk5 MTUtPmdndHQudm07CisJc3RhdGljIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZXNbSTkx NV9OVU1fRU5HSU5FU107CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOworCUlHVF9U SU1FT1VUKGVuZF90aW1lKTsKKwlJOTE1X1JORF9TVEFURShwcm5nKTsKKwlzdHJ1Y3QgaTkxNV92 bWEgKnZtYTsKKwl1bnNpZ25lZCBpbnQgaWQ7CisJaW50ICpvcmRlcjsKKwlpbnQgaSwgbjsKKwlp bnQgZXJyOworCisJbiA9IDA7CisJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgaTkxNSwgaWQpIHsK KwkJaWYgKCFpbnRlbF9lbmdpbmVfY2FuX3N0b3JlX2R3b3JkKGVuZ2luZSkpIHsKKwkJCXByX2lu Zm8oInN0b3JlLWR3b3JkLWltbSBub3Qgc3VwcG9ydGVkIG9uIGVuZ2luZT0ldVxuIiwKKwkJCQlp ZCk7CisJCQljb250aW51ZTsKKwkJfQorCQllbmdpbmVzW24rK10gPSBlbmdpbmU7CisJfQorCisJ aWYgKCFuKQorCQlyZXR1cm4gMDsKKworCW9yZGVyID0gaTkxNV9yYW5kb21fb3JkZXIobiAqIEk5 MTVfTlVNX0VOR0lORVMsICZwcm5nKTsKKwlpZiAoIW9yZGVyKQorCQlyZXR1cm4gLUVOT01FTTsK KworCXZtYSA9IGk5MTVfdm1hX2luc3RhbmNlKG9iaiwgdm0sIE5VTEwpOworCWlmIChJU19FUlIo dm1hKSkgeworCQllcnIgPSBQVFJfRVJSKHZtYSk7CisJCWdvdG8gb3V0X2ZyZWU7CisJfQorCisJ ZXJyID0gaTkxNV92bWFfcGluKHZtYSwgMCwgMCwgUElOX1VTRVIpOworCWlmIChlcnIpCisJCWdv dG8gb3V0X2ZyZWU7CisKKwlpID0gMDsKKwlkbyB7CisJCXUzMiBybmcgPSBwcmFuZG9tX3UzMl9z dGF0ZSgmcHJuZyk7CisJCXUzMiBkd29yZCA9IG9mZnNldF9pbl9wYWdlKHJuZykgLyA0OworCisJ CWVuZ2luZSA9IGVuZ2luZXNbb3JkZXJbaV0gJSBuXTsKKwkJaSA9IChpICsgMSkgJSAobiAqIEk5 MTVfTlVNX0VOR0lORVMpOworCisJCWVyciA9IGlndF9ncHVfd3JpdGVfZHcodm1hLCBjdHgsIGVu Z2luZSwgZHdvcmQsIHJuZyk7CisJCWlmIChlcnIpCisJCQlicmVhazsKKworCQllcnIgPSBpZ3Rf Y3B1X2NoZWNrKG9iaiwgZHdvcmQsIHJuZyk7CisJCWlmIChlcnIpCisJCQlicmVhazsKKwl9IHdo aWxlICghX19pZ3RfdGltZW91dChlbmRfdGltZSwgTlVMTCkpOworCisJaTkxNV92bWFfdW5waW4o dm1hKTsKK291dF9mcmVlOgorCWtmcmVlKG9yZGVyKTsKKworCWlmIChlcnIgPT0gLUVOT01FTSkK KwkJZXJyID0gMDsKKworCXJldHVybiBlcnI7Cit9CisKIHN0YXRpYyBpbnQgaWd0X2xtZW1fY3Jl YXRlKHZvaWQgKmFyZykKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9IGFyZzsK QEAgLTM2OCw2ICs0OTEsNDMgQEAgc3RhdGljIGludCBpZ3RfbG1lbV9jcmVhdGUodm9pZCAqYXJn KQogCXJldHVybiBlcnI7CiB9CiAKK3N0YXRpYyBpbnQgaWd0X2xtZW1fd3JpdGVfZ3B1KHZvaWQg KmFyZykKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9IGFyZzsKKwlzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqOworCUk5MTVfUk5EX1NUQVRFKHBybmcpOworCXUzMiBz ejsKKwlpbnQgZXJyOworCisJLyoKKwkgKiBYWFg6IE5vdGhpbmcgdG9vIGJpZyBmb3Igbm93OyB3 ZSBkb24ndCB3YW50IHRvIHVwc2V0IENJLiBXaGF0IHdlCisJICogcmVhbGx5IHdhbnQgaXMgdGhl IGh1Z2UgZG1hIHN0dWZmIGZvciBkZXZpY2UgbWVtb3J5LCB0aGVuIHdlIGNhbiBnbworCSAqIHRv IHRvd24uLi4KKwkgKi8KKwlzeiA9IHJvdW5kX3VwKHByYW5kb21fdTMyX3N0YXRlKCZwcm5nKSAl IFNaXzMyTSwgUEFHRV9TSVpFKTsKKworCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfbG1l bShpOTE1LCBzeiwgMCk7CisJaWYgKElTX0VSUihvYmopKQorCQlyZXR1cm4gUFRSX0VSUihvYmop OworCisJZXJyID0gaTkxNV9nZW1fb2JqZWN0X3Bpbl9wYWdlcyhvYmopOworCWlmIChlcnIpCisJ CWdvdG8gb3V0X3B1dDsKKworCWVyciA9IGlndF9ncHVfd3JpdGUoaTkxNS0+a2VybmVsX2NvbnRl eHQsIG9iaik7CisJaWYgKGVycikKKwkJcHJfZXJyKCJpZ3RfZ3B1X3dyaXRlIGZhaWxlZCglZClc biIsIGVycik7CisKKwlpOTE1X2dlbV9vYmplY3RfdW5waW5fcGFnZXMob2JqKTsKK291dF9wdXQ6 CisJaTkxNV9nZW1fb2JqZWN0X3B1dChvYmopOworCisJaWYgKGlndF9mbHVzaF90ZXN0KGk5MTUs IEk5MTVfV0FJVF9MT0NLRUQpKQorCQllcnIgPSAtRUlPOworCisJcmV0dXJuIGVycjsKK30KKwog c3RhdGljIGludCBpZ3RfbG1lbV93cml0ZV9jcHUodm9pZCAqYXJnKQogewogCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICppOTE1ID0gYXJnOwpAQCAtNDgzLDYgKzY0Myw3IEBAIGludCBpbnRlbF9t ZW1vcnlfcmVnaW9uX2xpdmVfc2VsZnRlc3RzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 KQogCXN0YXRpYyBjb25zdCBzdHJ1Y3QgaTkxNV9zdWJ0ZXN0IHRlc3RzW10gPSB7CiAJCVNVQlRF U1QoaWd0X2xtZW1fY3JlYXRlKSwKIAkJU1VCVEVTVChpZ3RfbG1lbV93cml0ZV9jcHUpLAorCQlT VUJURVNUKGlndF9sbWVtX3dyaXRlX2dwdSksCiAJfTsKIAlpbnQgZXJyOwogCi0tIAoyLjIwLjEK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdm eCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==