From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 06/15] drm/i915/selftests: Check known register values within the context Date: Mon, 14 Oct 2019 10:07:48 +0100 Message-ID: <20191014090757.32111-6-chris@chris-wilson.co.uk> References: <20191014090757.32111-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4B4C06E178 for ; Mon, 14 Oct 2019 09:08:20 +0000 (UTC) In-Reply-To: <20191014090757.32111-1-chris@chris-wilson.co.uk> 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 Q2hlY2sgdGhlIGxvZ2ljYWwgcmluZyBjb250ZXh0IGJ5IGFzc2VydGluZyB0aGF0IHRoZSByZWdp c3RlcnMgaG9sZApleHBlY3RlZCBzdGFydCBkdXJpbmcgZXhlY3V0aW9uLiAoSXQncyBhIGJpdCBj aGlja2VuLWFuZC1lZ2cgZm9yIGhvdwpjb3VsZCB3ZSBtYW5hZ2UgdG8gZXhlY3V0ZSBvdXIgcmVx dWVzdCBpZiB0aGUgcmVnaXN0ZXJzIHdlcmUgbm90IGJlaW5nCnVwZGF0ZWQuIFN0aWxsLCBpdCdz IG5pY2UgdG8gdmVyaWZ5IHRoYXQgdGhlIEhXIGlzIHdvcmtpbmcgYXMgZXhwZWN0ZWQuKQoKU2ln bmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3RfbHJjLmMgfCAxMjYgKysrKysrKysrKysr KysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDEyNiBpbnNlcnRpb25zKCspCgpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3RfbHJjLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9ndC9zZWxmdGVzdF9scmMuYwppbmRleCBhNjkxZTQyOWNhMDEuLjBhYTM2YjFi MjM4OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3RfbHJjLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3RfbHJjLmMKQEAgLTI1OTksMTAg KzI1OTksMTM2IEBAIHN0YXRpYyBpbnQgbGl2ZV9scmNfbGF5b3V0KHZvaWQgKmFyZykKIAlyZXR1 cm4gZXJyOwogfQogCitzdGF0aWMgaW50IF9fbGl2ZV9scmNfc3RhdGUoc3RydWN0IGk5MTVfZ2Vt X2NvbnRleHQgKmZpeG1lLAorCQkJICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwK KwkJCSAgICBzdHJ1Y3QgaTkxNV92bWEgKnNjcmF0Y2gpCit7CisJc3RydWN0IGludGVsX2NvbnRl eHQgKmNlOworCXN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxOworCWVudW0geworCQlSSU5HX1NUQVJU X0lEWCA9IDAsCisJCVJJTkdfVEFJTF9JRFgsCisJCU1BWF9JRFgKKwl9OworCXUzMiBleHBlY3Rl ZFtNQVhfSURYXTsKKwl1MzIgKmNzOworCWludCBlcnI7CisJaW50IG47CisKKwljZSA9IGludGVs X2NvbnRleHRfY3JlYXRlKGZpeG1lLCBlbmdpbmUpOworCWlmIChJU19FUlIoY2UpKQorCQlyZXR1 cm4gUFRSX0VSUihjZSk7CisKKwllcnIgPSBpbnRlbF9jb250ZXh0X3BpbihjZSk7CisJaWYgKGVy cikKKwkJZ290byBlcnJfcHV0OworCisJcnEgPSBpOTE1X3JlcXVlc3RfY3JlYXRlKGNlKTsKKwlp ZiAoSVNfRVJSKHJxKSkgeworCQllcnIgPSBQVFJfRVJSKHJxKTsKKwkJZ290byBlcnJfdW5waW47 CisJfQorCisJY3MgPSBpbnRlbF9yaW5nX2JlZ2luKHJxLCA0ICogTUFYX0lEWCk7CisJaWYgKElT X0VSUihjcykpIHsKKwkJZXJyID0gUFRSX0VSUihjcyk7CisJCWk5MTVfcmVxdWVzdF9hZGQocnEp OworCQlnb3RvIGVycl91bnBpbjsKKwl9CisKKwkqY3MrKyA9IE1JX1NUT1JFX1JFR0lTVEVSX01F TV9HRU44IHwgTUlfVVNFX0dHVFQ7CisJKmNzKysgPSBpOTE1X21taW9fcmVnX29mZnNldChSSU5H X1NUQVJUKGVuZ2luZS0+bW1pb19iYXNlKSk7CisJKmNzKysgPSBpOTE1X2dndHRfb2Zmc2V0KHNj cmF0Y2gpICsgUklOR19TVEFSVF9JRFggKiBzaXplb2YodTMyKTsKKwkqY3MrKyA9IDA7CisKKwll eHBlY3RlZFtSSU5HX1NUQVJUX0lEWF0gPSBpOTE1X2dndHRfb2Zmc2V0KGNlLT5yaW5nLT52bWEp OworCisJKmNzKysgPSBNSV9TVE9SRV9SRUdJU1RFUl9NRU1fR0VOOCB8IE1JX1VTRV9HR1RUOwor CSpjcysrID0gaTkxNV9tbWlvX3JlZ19vZmZzZXQoUklOR19UQUlMKGVuZ2luZS0+bW1pb19iYXNl KSk7CisJKmNzKysgPSBpOTE1X2dndHRfb2Zmc2V0KHNjcmF0Y2gpICsgUklOR19UQUlMX0lEWCAq IHNpemVvZih1MzIpOworCSpjcysrID0gMDsKKworCWk5MTVfcmVxdWVzdF9nZXQocnEpOworCWk5 MTVfcmVxdWVzdF9hZGQocnEpOworCisJaW50ZWxfZW5naW5lX2ZsdXNoX3N1Ym1pc3Npb24oZW5n aW5lKTsKKwlleHBlY3RlZFtSSU5HX1RBSUxfSURYXSA9IGNlLT5yaW5nLT50YWlsOworCisJaWYg KGk5MTVfcmVxdWVzdF93YWl0KHJxLCAwLCBIWiAvIDUpIDwgMCkgeworCQllcnIgPSAtRVRJTUU7 CisJCWdvdG8gZXJyX3JxOworCX0KKworCWNzID0gaTkxNV9nZW1fb2JqZWN0X3Bpbl9tYXAoc2Ny YXRjaC0+b2JqLCBJOTE1X01BUF9XQik7CisJaWYgKElTX0VSUihjcykpIHsKKwkJZXJyID0gUFRS X0VSUihjcyk7CisJCWdvdG8gZXJyX3JxOworCX0KKworCWZvciAobiA9IDA7IG4gPCBNQVhfSURY OyBuKyspIHsKKwkJaWYgKGNzW25dICE9IGV4cGVjdGVkW25dKSB7CisJCQlwcl9lcnIoIiVzOiBT dG9yZWQgcmVnaXN0ZXJbJWRdIHZhbHVlWzB4JXhdIGRpZCBub3QgbWF0Y2ggZXhwZWN0ZWRbMHgl eF1cbiIsCisJCQkgICAgICAgZW5naW5lLT5uYW1lLCBuLCBjc1tuXSwgZXhwZWN0ZWRbbl0pOwor CQkJZXJyID0gLUVJTlZBTDsKKwkJCWJyZWFrOworCQl9CisJfQorCisJaTkxNV9nZW1fb2JqZWN0 X3VucGluX21hcChzY3JhdGNoLT5vYmopOworCitlcnJfcnE6CisJaTkxNV9yZXF1ZXN0X3B1dChy cSk7CitlcnJfdW5waW46CisJaW50ZWxfY29udGV4dF91bnBpbihjZSk7CitlcnJfcHV0OgorCWlu dGVsX2NvbnRleHRfcHV0KGNlKTsKKwlyZXR1cm4gZXJyOworfQorCitzdGF0aWMgaW50IGxpdmVf bHJjX3N0YXRlKHZvaWQgKmFyZykKK3sKKwlzdHJ1Y3QgaW50ZWxfZ3QgKmd0ID0gYXJnOworCXN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKKwlzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAq Zml4bWU7CisJc3RydWN0IGk5MTVfdm1hICpzY3JhdGNoOworCWVudW0gaW50ZWxfZW5naW5lX2lk IGlkOworCWludCBlcnIgPSAwOworCisJLyoKKwkgKiBDaGVjayB0aGUgbGl2ZSByZWdpc3RlciBz dGF0ZSBtYXRjaGVzIHdoYXQgd2UgZXhwZWN0IGZvciB0aGlzCisJICogaW50ZWxfY29udGV4dC4K KwkgKi8KKworCWZpeG1lID0ga2VybmVsX2NvbnRleHQoZ3QtPmk5MTUpOworCWlmICghZml4bWUp CisJCXJldHVybiAtRU5PTUVNOworCisJc2NyYXRjaCA9IGNyZWF0ZV9zY3JhdGNoKGd0KTsKKwlp ZiAoSVNfRVJSKHNjcmF0Y2gpKSB7CisJCWVyciA9IFBUUl9FUlIoc2NyYXRjaCk7CisJCWdvdG8g b3V0X2Nsb3NlOworCX0KKworCWZvcl9lYWNoX2VuZ2luZShlbmdpbmUsIGd0LT5pOTE1LCBpZCkg eworCQllcnIgPSBfX2xpdmVfbHJjX3N0YXRlKGZpeG1lLCBlbmdpbmUsIHNjcmF0Y2gpOworCQlp ZiAoZXJyKQorCQkJYnJlYWs7CisJfQorCisJaWYgKGlndF9mbHVzaF90ZXN0KGd0LT5pOTE1KSkK KwkJZXJyID0gLUVJTzsKKworCWk5MTVfdm1hX3VucGluX2FuZF9yZWxlYXNlKCZzY3JhdGNoLCAw KTsKK291dF9jbG9zZToKKwlrZXJuZWxfY29udGV4dF9jbG9zZShmaXhtZSk7CisJcmV0dXJuIGVy cjsKK30KKwogaW50IGludGVsX2xyY19saXZlX3NlbGZ0ZXN0cyhzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqaTkxNSkKIHsKIAlzdGF0aWMgY29uc3Qgc3RydWN0IGk5MTVfc3VidGVzdCB0ZXN0c1td ID0gewogCQlTVUJURVNUKGxpdmVfbHJjX2xheW91dCksCisJCVNVQlRFU1QobGl2ZV9scmNfc3Rh dGUpLAogCX07CiAKIAlpZiAoIUhBU19MT0dJQ0FMX1JJTkdfQ09OVEVYVFMoaTkxNSkpCi0tIAoy LjIzLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCklu dGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRw czovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==