From mboxrd@z Thu Jan 1 00:00:00 1970 From: Micah Fedke Subject: [PATCH v2 5/5] tests: make drm_read platform agnostic Date: Tue, 11 Aug 2015 11:59:16 -0400 Message-ID: <55CA1BD4.10808@collabora.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [93.93.135.160]) by gabe.freedesktop.org (Postfix) with ESMTPS id BF6F16E82B for ; Tue, 11 Aug 2015 08:59:21 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx , Daniel Vetter , chris@chris-wilson.co.uk, Daniel Stone List-Id: intel-gfx@lists.freedesktop.org ClVwZGF0ZSB0aGUgZHJtX3JlYWQgdGVzdCB0byBvcGVyYXRlIG9uIGFueSBwbGF0Zm9ybSB0byBk ZW1vbnN0cmF0ZSB0aGUgdXNlIG9mCmRybV9vcGVuX2RyaXZlcihPUEVOX0FOWV9HUFUpLgoKVG8g d29yayBvbiBleHlub3MsIHRoZSBldmVudCBnZW5lcmF0aW9uIGNvZGUgaXMgY29udmVydGVkIHRv IHVzZSB0aGUgbmV3IENSVEMKc2VsZWN0aW9uIEFQSSBmb3IgdmJsYW5rLiAgVGhlIGZpcnN0IHZh bGlkIGNydGMgaXMgc2VsZWN0ZWQgYXQgZml4dHVyZS10aW1lLgoKcGlwZTBfZW5hYmxlZCgpIGlz IHVwZGF0ZWQgdG8gdXNlIHRoZSBkcm1Nb2RlKiB3cmFwcGVyIGZ1bmN0aW9ucyBpbnN0ZWFkIG9m CmRpcmVjdCBpb2N0bHMsIGFuZCB0aGUgdW5uZWNlc3NhcnksIGludGVsLXNwZWNpZmljIHBpcGU8 LT5jcnRjIG1hcHBpbmcgaW9jdGwgaXMKZHJvcHBlZC4KCldpdGggdGhlc2UgdXBkYXRlcyBpbiBw bGFjZSwgZHJtX3JlYWQgY2FuIHJ1biBzdWNjZXNzZnVsbHkgb24gaW50ZWwgYW5kIGV4eW5vcy4K VGVzdGVkIG9uIGl2YiBhbmQgcGVhY2gtcGksIHJlc3BlY3RpdmVseS4KClNpZ25lZC1vZmYtYnk6 IE1pY2FoIEZlZGtlIDxtaWNhaC5mZWRrZUBjb2xsYWJvcmEuY28udWs+Ci0tLQogdGVzdHMvZHJt X3JlYWQuYyB8IDg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNTAgaW5zZXJ0aW9ucygrKSwgMzcgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvdGVzdHMvZHJtX3JlYWQuYyBiL3Rlc3RzL2RybV9yZWFkLmMK aW5kZXggZmRhZjEyNi4uMzhmZGUyNiAxMDA2NDQKLS0tIGEvdGVzdHMvZHJtX3JlYWQuYworKysg Yi90ZXN0cy9kcm1fcmVhZC5jCkBAIC00NSwxMCArNDUsMTUgQEAKICNpbmNsdWRlICJkcm0uaCIK ICNpbmNsdWRlICJpb2N0bF93cmFwcGVycy5oIgogI2luY2x1ZGUgImRybXRlc3QuaCIKKyNpbmNs dWRlICJpZ3RfY29yZS5oIgogI2luY2x1ZGUgImlndF9hdXguaCIKKyNpbmNsdWRlICJpZ3Rfa21z LmgiCiAKIElHVF9URVNUX0RFU0NSSVBUSU9OKCJDYWxsIHJlYWQoZHJtKSBhbmQgc2VlIGlmIGl0 IGJlaGF2ZXMuIik7CiAKK3N0YXRpYyBkcm1Nb2RlUmVzICpyZXNvdXJjZXM7CitzdGF0aWMgaW50 IGNydGNfaWR4OworCiBzdGF0aWMgdm9pZCBzaWdoYW5kbGVyKGludCBzaWcpCiB7CiB9CkBAIC02 MSwxNiArNjYsMTkgQEAgc3RhdGljIHZvaWQgYXNzZXJ0X2VtcHR5KGludCBmZCkKIAogc3RhdGlj IHZvaWQgZ2VuZXJhdGVfZXZlbnQoaW50IGZkKQogewotCXVuaW9uIGRybV93YWl0X3ZibGFuayB2 Ymw7CisJZHJtVkJsYW5rIHdhaXRfdmJsOworCXVuc2lnbmVkIGNydGNfaWR4X21hc2s7CisJbWVt c2V0KCZ3YWl0X3ZibCwgMCwgc2l6ZW9mKHdhaXRfdmJsKSk7CiAKLQkvKiBXZSByZXF1aXJlIHRo YXQgcGlwZSAwIGlzIHJ1bm5pbmcgKi8KKwljcnRjX2lkeF9tYXNrID0gY3J0Y19pZHggPDwgRFJN X1ZCTEFOS19ISUdIX0NSVENfU0hJRlQ7CisJaWd0X2Fzc2VydCghKGNydGNfaWR4X21hc2sgJiB+ RFJNX1ZCTEFOS19ISUdIX0NSVENfTUFTSykpOwogCi0JdmJsLnJlcXVlc3QudHlwZSA9Ci0JCURS TV9WQkxBTktfUkVMQVRJVkUgfAotCQlEUk1fVkJMQU5LX0VWRU5UOwotCXZibC5yZXF1ZXN0LnNl cXVlbmNlID0gMDsKKwl3YWl0X3ZibC5yZXF1ZXN0LnR5cGUgPSBjcnRjX2lkeF9tYXNrOworCXdh aXRfdmJsLnJlcXVlc3QudHlwZSB8PSBEUk1fVkJMQU5LX1JFTEFUSVZFOworCXdhaXRfdmJsLnJl cXVlc3QudHlwZSB8PSBEUk1fVkJMQU5LX0VWRU5UOworCXdhaXRfdmJsLnJlcXVlc3Quc2VxdWVu Y2UgPSAxOwogCi0JZG9faW9jdGwoZmQsIERSTV9JT0NUTF9XQUlUX1ZCTEFOSywgJnZibCk7CisJ aWd0X2Fzc2VydCghZHJtV2FpdFZCbGFuayhmZCwgJndhaXRfdmJsKSk7CiB9CiAKIHN0YXRpYyB2 b2lkIHdhaXRfZm9yX2V2ZW50KGludCBmZCkKQEAgLTE1NCw0NCArMTYyLDI3IEBAIHN0YXRpYyB2 b2lkIHRlc3Rfc2hvcnRfYnVmZmVyKGludCBpbiwgaW50IG5vbmJsb2NrKQogCiBzdGF0aWMgaW50 IHBpcGUwX2VuYWJsZWQoaW50IGZkKQogewotCXN0cnVjdCBkcm1fbW9kZV9jYXJkX3JlcyByZXM7 Ci0JdWludDMyX3QgY3J0Y3NbMzJdOwotCWludCBpOworCWRybU1vZGVSZXMgKnJlczsKKwlkcm1N b2RlQ3J0YyAqY3J0YzsKKwlpbnQgcmV0OwogCiAJLyogV2UgYXNzdW1lIHdlIGNhbiBnZW5lcmF0 ZSBldmVudHMgb24gcGlwZSAwLiBTbyB3ZSBoYXZlIGJldHRlcgogCSAqIG1ha2Ugc3VyZSB0aGF0 IGlzIHJ1bm5pbmchCiAJICovCiAKLQltZW1zZXQoJnJlcywgMCwgc2l6ZW9mKHJlcykpOwotCXJl cy5jb3VudF9jcnRjcyA9IDMyOwotCXJlcy5jcnRjX2lkX3B0ciA9ICh1aW50cHRyX3QpY3J0Y3M7 Ci0KLQlpZiAoZHJtSW9jdGwoZmQsIERSTV9JT0NUTF9NT0RFX0dFVFJFU09VUkNFUywgJnJlcykp Ci0JCXJldHVybiAwOwotCi0JaWYgKHJlcy5jb3VudF9jcnRjcyA+IDMyKQorCXJlcyA9IGRybU1v ZGVHZXRSZXNvdXJjZXMoZmQpOworCWlndF9hc3NlcnQocmVzKTsKKwljcnRjID0gZHJtTW9kZUdl dENydGMoZmQsIHJlcy0+Y3J0Y3NbY3J0Y19pZHhdKTsKKwlpZiAoIWNydGMpewogCQlyZXR1cm4g MDsKKwl9CiAKLQlmb3IgKGkgPSAwOyBpIDwgcmVzLmNvdW50X2NydGNzOyBpKyspIHsKLQkJc3Ry dWN0IGRybV9pOTE1X2dldF9waXBlX2Zyb21fY3J0Y19pZCBnZXRfcGlwZTsKLQkJc3RydWN0IGRy bV9tb2RlX2NydGMgbW9kZTsKLQotCQltZW1zZXQoJmdldF9waXBlLCAwLCBzaXplb2YoZ2V0X3Bp cGUpKTsKLQkJbWVtc2V0KCZtb2RlLCAwLCBzaXplb2YobW9kZSkpOwotCi0JCW1vZGUuY3J0Y19p ZCA9IGNydGNzW2ldOwotCi0JCWdldF9waXBlLnBpcGUgPSAtMTsKLQkJZ2V0X3BpcGUuY3J0Y19p ZCA9IG1vZGUuY3J0Y19pZDsKLQkJZHJtSW9jdGwoZmQsIERSTV9JT0NUTF9JOTE1X0dFVF9QSVBF X0ZST01fQ1JUQ19JRCwgJmdldF9waXBlKTsKLQkJaWYgKGdldF9waXBlLnBpcGUpCi0JCQljb250 aW51ZTsKKwlyZXQgPSBjcnRjLT5tb2RlX3ZhbGlkICYmIGNydGMtPm1vZGUuY2xvY2s7CiAKLQkJ ZHJtSW9jdGwoZmQsIERSTV9JT0NUTF9NT0RFX0dFVENSVEMsICZtb2RlKTsKLQkJcmV0dXJuIG1v ZGUubW9kZV92YWxpZCAmJiBtb2RlLm1vZGUuY2xvY2s7Ci0JfQorCWRybU1vZGVGcmVlQ3J0Yyhj cnRjKTsKKwlkcm1Nb2RlRnJlZVJlc291cmNlcyhyZXMpOwogCi0JcmV0dXJuIDA7CisJcmV0dXJu IHJldDsKIH0KIAogaWd0X21haW4KQEAgLTIwMiw4ICsxOTMsMzAgQEAgaWd0X21haW4KIAlzaWdp bnRlcnJ1cHQoU0lHQUxSTSwgMSk7CiAKIAlpZ3RfZml4dHVyZSB7Ci0JCWZkID0gZHJtX29wZW5f ZHJpdmVyX21hc3RlcihEUklWRVJfSU5URUwpOworCQlzdHJ1Y3Qga21zdGVzdF9jb25uZWN0b3Jf Y29uZmlnIGNvbmZpZzsKKwkJaW50IGksIG47CisKKwkJZmQgPSBkcm1fb3Blbl9kcml2ZXJfbWFz dGVyKE9QRU5fQU5ZX0dQVSk7CisJCWlndF9lbmFibGVfY29ubmVjdG9ycyhmZCk7CisJCWttc3Rl c3Rfc2V0X3Z0X2dyYXBoaWNzX21vZGUoKTsKKwogCQlpZ3RfcmVxdWlyZShwaXBlMF9lbmFibGVk KGZkKSk7CisKKwkJcmVzb3VyY2VzID0gZHJtTW9kZUdldFJlc291cmNlcyhmZCk7CisJCWlndF9h c3NlcnQocmVzb3VyY2VzKTsKKworCQlmb3IgKGkgPSAwOyBpIDwgcmVzb3VyY2VzLT5jb3VudF9j b25uZWN0b3JzOyBpKyspIHsKKwkJCWZvciAobiA9IDA7IG4gPCByZXNvdXJjZXMtPmNvdW50X2Ny dGNzOyBuKyspIHsKKwkJCQkvL3VzZSB0aGUgZmlyc3QgY29ubmVjdG9yIGNvbmZpZyB3ZSBmaW5k CisJCQkJaWYoa21zdGVzdF9nZXRfY29ubmVjdG9yX2NvbmZpZyhmZCwgcmVzb3VyY2VzLT5jb25u ZWN0b3JzW2ldLAorCQkJCQkJMSA8PCBuLCAmY29uZmlnKSl7CisJCQkJCWNydGNfaWR4ID0gY29u ZmlnLmNydGNfaWR4OworCQkJCQlicmVhazsKKwkJCQl9CisJCQl9CisJCX0KKwkJZHJtTW9kZUZy ZWVDcnRjKGNvbmZpZy5jcnRjKTsKKwogCX0KIAogCWlndF9zdWJ0ZXN0KCJpbnZhbGlkLWJ1ZmZl ciIpCi0tIAoyLjUuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Au b3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1n ZngK