From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Bragg Subject: [PATCH igt v3 04/11] igt/gem_exec_parse: update hsw_load_register_reg Date: Wed, 9 Nov 2016 16:15:55 +0000 Message-ID: <20161109161602.2402-5-robert@sixbynine.org> References: <20161109161602.2402-1-robert@sixbynine.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id B93B06E6EC for ; Wed, 9 Nov 2016 16:16:43 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id c17so30151371wmc.3 for ; Wed, 09 Nov 2016 08:16:43 -0800 (PST) In-Reply-To: <20161109161602.2402-1-robert@sixbynine.org> 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 VGhpcyBnZW5lcmFsaXNlcyBoc3dfbG9hZF9yZWdpc3Rlcl9yZWcgdG8gbG9vcCB0aHJvdWdoIGFu IGFycmF5IG9mCmFsbG93ZWQgYW5kIGRpc2FsbG93ZWQgcmVnaXN0ZXJzIGFuZCB0byB1c2UgdGhl IGV4ZWNfYmF0Y2hbX3BhdGNoZWRdCnV0aWxpdGllcy4KClNpZ25lZC1vZmYtYnk6IFJvYmVydCBC cmFnZyA8cm9iZXJ0QHNpeGJ5bmluZS5vcmc+Ci0tLQogdGVzdHMvZ2VtX2V4ZWNfcGFyc2UuYyB8 IDEzOSArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAx IGZpbGUgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKSwgNzMgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvdGVzdHMvZ2VtX2V4ZWNfcGFyc2UuYyBiL3Rlc3RzL2dlbV9leGVjX3BhcnNlLmMKaW5k ZXggYzUzMGJiNi4uMmZlYTA2MCAxMDA2NDQKLS0tIGEvdGVzdHMvZ2VtX2V4ZWNfcGFyc2UuYwor KysgYi90ZXN0cy9nZW1fZXhlY19wYXJzZS5jCkBAIC0zNCw4ICszNCwxMSBAQAogI2RlZmluZSBJ OTE1X1BBUkFNX0NNRF9QQVJTRVJfVkVSU0lPTiAgICAgICAyOAogI2VuZGlmCiAKLSNkZWZpbmUg T0FDT05UUk9MIDB4MjM2MAorI2RlZmluZSBBUlJBWV9MRU4oQSkgKHNpemVvZihBKSAvIHNpemVv ZihBWzBdKSkKKwogI2RlZmluZSBERVJSTVIgMHg0NDA1MAorI2RlZmluZSBPQUNPTlRST0wgMHgy MzYwCisjZGVmaW5lIFNPX1dSSVRFX09GRlNFVF8wIDB4NTI4MAogCiAjZGVmaW5lIEhTV19DU19H UFIobikgKDB4MjYwMCArIDgqKG4pKQogI2RlZmluZSBIU1dfQ1NfR1BSMCBIU1dfQ1NfR1BSKDAp CkBAIC02NSw4ICs2OCw4IEBAIHN0YXRpYyBpbnQgY29tbWFuZF9wYXJzZXJfdmVyc2lvbihpbnQg ZmQpCiAJcmV0dXJuIC0xOwogfQogCi1zdGF0aWMgdm9pZCBleGVjX2JhdGNoX3BhdGNoZWQoaW50 IGZkLCB1aW50MzJfdCBjbWRfYm8sIHVpbnQzMl90ICpjbWRzLAotCQkJICAgICAgIGludCBzaXpl LCBpbnQgcGF0Y2hfb2Zmc2V0LCB1aW50NjRfdCBleHBlY3RlZF92YWx1ZSkKK3N0YXRpYyB1aW50 NjRfdCBfX2V4ZWNfYmF0Y2hfcGF0Y2hlZChpbnQgZmQsIHVpbnQzMl90IGNtZF9ibywgdWludDMy X3QgKmNtZHMsCisJCQkJICAgICBpbnQgc2l6ZSwgaW50IHBhdGNoX29mZnNldCkKIHsKIAlzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyIGV4ZWNidWY7CiAJc3RydWN0IGRybV9pOTE1X2dl bV9leGVjX29iamVjdDIgb2JqWzJdOwpAQCAtMTAwLDkgKzEwMywxOSBAQCBzdGF0aWMgdm9pZCBl eGVjX2JhdGNoX3BhdGNoZWQoaW50IGZkLCB1aW50MzJfdCBjbWRfYm8sIHVpbnQzMl90ICpjbWRz LAogCWdlbV9zeW5jKGZkLCBjbWRfYm8pOwogCiAJZ2VtX3JlYWQoZmQsdGFyZ2V0X2JvLCAwLCAm YWN0dWFsX3ZhbHVlLCBzaXplb2YoYWN0dWFsX3ZhbHVlKSk7Ci0JaWd0X2Fzc2VydF9lcShleHBl Y3RlZF92YWx1ZSwgYWN0dWFsX3ZhbHVlKTsKIAogCWdlbV9jbG9zZShmZCwgdGFyZ2V0X2JvKTsK KworCXJldHVybiBhY3R1YWxfdmFsdWU7Cit9CisKK3N0YXRpYyB2b2lkIGV4ZWNfYmF0Y2hfcGF0 Y2hlZChpbnQgZmQsIHVpbnQzMl90IGNtZF9ibywgdWludDMyX3QgKmNtZHMsCisJCQkgICAgICAg aW50IHNpemUsIGludCBwYXRjaF9vZmZzZXQsCisJCQkgICAgICAgdWludDY0X3QgZXhwZWN0ZWRf dmFsdWUpCit7CisJaWd0X2Fzc2VydF9lcShfX2V4ZWNfYmF0Y2hfcGF0Y2hlZChmZCwgY21kX2Jv LCBjbWRzLAorCQkJCQkgICBzaXplLCBwYXRjaF9vZmZzZXQpLAorCQkgICAgICBleHBlY3RlZF92 YWx1ZSk7CiB9CiAKIHN0YXRpYyBpbnQgX19leGVjX2JhdGNoKGludCBmZCwgdWludDMyX3QgY21k X2JvLCB1aW50MzJfdCAqY21kcywKQEAgLTI2MiwzMSArMjc1LDM2IEBAIHN0YXRpYyB2b2lkIHN0 cmF5X2xyaShpbnQgZmQsIHVpbnQzMl90IGhhbmRsZSkKIAogc3RhdGljIHZvaWQgaHN3X2xvYWRf cmVnaXN0ZXJfcmVnKHZvaWQpCiB7Ci0JdWludDMyX3QgYnVmWzE2XSA9IHsKLQkJTUlfTE9BRF9S RUdJU1RFUl9JTU0gfCAoNSAtIDIpLAorCXVpbnQzMl90IGluaXRfZ3ByMFsxNl0gPSB7CisJCU1J X0xPQURfUkVHSVNURVJfSU1NIHwgKDMgLSAyKSwKIAkJSFNXX0NTX0dQUjAsCi0JCTB4YWJjZGFi Y2QsCi0JCUhTV19DU19HUFIxLAotCQkweGRlYWRiZWVmLAotCisJCTB4YWJjZGFiYzAsIC8qIGxl YXZlIFsxOjBdIHplcm8gKi8KKwkJTUlfQkFUQ0hfQlVGRkVSX0VORCwKKwl9OworCXVpbnQzMl90 IHN0b3JlX2dwcjBbMTZdID0gewogCQlNSV9TVE9SRV9SRUdJU1RFUl9NRU0gfCAoMyAtIDIpLAot CQlIU1dfQ1NfR1BSMSwKLQkJMCwgLyogYWRkcmVzczAgKi8KLQotCQlNSV9MT0FEX1JFR0lTVEVS X1JFRyB8ICgzIC0gMiksCiAJCUhTV19DU19HUFIwLAotCQlIU1dfQ1NfR1BSMSwKLQotCQlNSV9T VE9SRV9SRUdJU1RFUl9NRU0gfCAoMyAtIDIpLAotCQlIU1dfQ1NfR1BSMSwKLQkJNCwgLyogYWRk cmVzczEgKi8KLQorCQkwLCAvKiByZWxvYyovCiAJCU1JX0JBVENIX0JVRkZFUl9FTkQsCiAJfTsK LQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyIGV4ZWNidWY7Ci0Jc3RydWN0IGRybV9p OTE1X2dlbV9leGVjX29iamVjdDIgb2JqWzJdOwotCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVsb2Nh dGlvbl9lbnRyeSByZWxvY1syXTsKKwl1aW50MzJfdCBkb19scnJbMTZdID0geworCQlNSV9MT0FE X1JFR0lTVEVSX1JFRyB8ICgzIC0gMiksCisJCTAsIC8qIFsxXSA9IHNyYyAqLworCQlIU1dfQ1Nf R1BSMCwgLyogZHN0ICovCisJCU1JX0JBVENIX0JVRkZFUl9FTkQsCisJfTsKKwl1aW50MzJfdCBh bGxvd2VkX3JlZ3NbXSA9IHsKKwkJSFNXX0NTX0dQUjEsCisJCVNPX1dSSVRFX09GRlNFVF8wLAor CX07CisJdWludDMyX3QgZGlzYWxsb3dlZF9yZWdzW10gPSB7CisJCTAsCisJCU9BQ09OVFJPTCwg LyogZmlsdGVyZWQgKi8KKwkJREVSUk1SLCAvKiBtYXN0ZXIgb25seSAqLworCQkweDIwMzgsIC8q IFJJTkdfU1RBUlQ6IGludmFsaWQgKi8KKwl9OwogCWludCBmZDsKKwl1aW50MzJfdCBoYW5kbGU7 CiAKIAkvKiBPcGVuIGFnYWluIHRvIGdldCBhIG5vbi1tYXN0ZXIgZmlsZSBkZXNjcmlwdG9yICov CiAJZmQgPSBkcm1fb3Blbl9kcml2ZXIoRFJJVkVSX0lOVEVMKTsKQEAgLTI5NCw1OSArMzEyLDM0 IEBAIHN0YXRpYyB2b2lkIGhzd19sb2FkX3JlZ2lzdGVyX3JlZyh2b2lkKQogCWlndF9yZXF1aXJl KElTX0hBU1dFTEwoaW50ZWxfZ2V0X2RybV9kZXZpZChmZCkpKTsKIAlpZ3RfcmVxdWlyZShjb21t YW5kX3BhcnNlcl92ZXJzaW9uKGZkKSA+PSA3KTsKIAotCW1lbXNldChvYmosIDAsIHNpemVvZihv YmopKTsKLQlvYmpbMF0uaGFuZGxlID0gZ2VtX2NyZWF0ZShmZCwgNDA5Nik7Ci0Jb2JqWzFdLmhh bmRsZSA9IGdlbV9jcmVhdGUoZmQsIDQwOTYpOwotCWdlbV93cml0ZShmZCwgb2JqWzFdLmhhbmRs ZSwgMCwgYnVmLCBzaXplb2YoYnVmKSk7Ci0KLQltZW1zZXQocmVsb2MsIDAsIHNpemVvZihyZWxv YykpOwotCXJlbG9jWzBdLm9mZnNldCA9IDcqc2l6ZW9mKHVpbnQzMl90KTsKLQlyZWxvY1swXS50 YXJnZXRfaGFuZGxlID0gb2JqWzBdLmhhbmRsZTsKLQlyZWxvY1swXS5kZWx0YSA9IDA7Ci0JcmVs b2NbMF0ucmVhZF9kb21haW5zID0gSTkxNV9HRU1fRE9NQUlOX0NPTU1BTkQ7Ci0JcmVsb2NbMF0u d3JpdGVfZG9tYWluID0gSTkxNV9HRU1fRE9NQUlOX0NPTU1BTkQ7Ci0JcmVsb2NbMV0ub2Zmc2V0 ID0gMTMqc2l6ZW9mKHVpbnQzMl90KTsKLQlyZWxvY1sxXS50YXJnZXRfaGFuZGxlID0gb2JqWzBd LmhhbmRsZTsKLQlyZWxvY1sxXS5kZWx0YSA9IHNpemVvZih1aW50MzJfdCk7Ci0JcmVsb2NbMV0u cmVhZF9kb21haW5zID0gSTkxNV9HRU1fRE9NQUlOX0NPTU1BTkQ7Ci0JcmVsb2NbMV0ud3JpdGVf ZG9tYWluID0gSTkxNV9HRU1fRE9NQUlOX0NPTU1BTkQ7Ci0Jb2JqWzFdLnJlbG9jc19wdHIgPSAo dWludHB0cl90KSZyZWxvYzsKLQlvYmpbMV0ucmVsb2NhdGlvbl9jb3VudCA9IDI7CisJaGFuZGxl ID0gZ2VtX2NyZWF0ZShmZCwgNDA5Nik7CiAKLQltZW1zZXQoJmV4ZWNidWYsIDAsIHNpemVvZihl eGVjYnVmKSk7Ci0JZXhlY2J1Zi5idWZmZXJzX3B0ciA9ICh1aW50cHRyX3Qpb2JqOwotCWV4ZWNi dWYuYnVmZmVyX2NvdW50ID0gMjsKLQlleGVjYnVmLmJhdGNoX2xlbiA9IHNpemVvZihidWYpOwot CWV4ZWNidWYuZmxhZ3MgPSBJOTE1X0VYRUNfUkVOREVSOwotCWdlbV9leGVjYnVmKGZkLCAmZXhl Y2J1Zik7Ci0JZ2VtX2Nsb3NlKGZkLCBvYmpbMV0uaGFuZGxlKTsKKwlmb3IgKGludCBpID0gMCA7 IGkgPCBBUlJBWV9MRU4oYWxsb3dlZF9yZWdzKTsgaSsrKSB7CisJCXVpbnQzMl90IHZhcjsKIAot CWdlbV9yZWFkKGZkLCBvYmpbMF0uaGFuZGxlLCAwLCBidWYsIDIqc2l6ZW9mKGJ1ZlswXSkpOwot CWlndF9hc3NlcnRfZXFfdTMyKGJ1ZlswXSwgMHhkZWFkYmVlZik7IC8qIGJlZm9yZSBjb3B5ICov Ci0JaWd0X2Fzc2VydF9lcV91MzIoYnVmWzFdLCAweGFiY2RhYmNkKTsgLyogYWZ0ZXIgY29weSAq LworCQlleGVjX2JhdGNoKGZkLCBoYW5kbGUsIGluaXRfZ3ByMCwgc2l6ZW9mKGluaXRfZ3ByMCks CisJCQkgICBJOTE1X0VYRUNfUkVOREVSLAorCQkJICAgMCk7CisJCWV4ZWNfYmF0Y2hfcGF0Y2hl ZChmZCwgaGFuZGxlLAorCQkJCSAgIHN0b3JlX2dwcjAsIHNpemVvZihzdG9yZV9ncHIwKSwKKwkJ CQkgICAyICogc2l6ZW9mKHVpbnQzMl90KSwgLyogcmVsb2MgKi8KKwkJCQkgICAweGFiY2RhYmMw KTsKKwkJZG9fbHJyWzFdID0gYWxsb3dlZF9yZWdzW2ldOworCQlleGVjX2JhdGNoKGZkLCBoYW5k bGUsIGRvX2xyciwgc2l6ZW9mKGRvX2xyciksCisJCQkgICBJOTE1X0VYRUNfUkVOREVSLAorCQkJ ICAgMCk7CisJCXZhciA9IF9fZXhlY19iYXRjaF9wYXRjaGVkKGZkLCBoYW5kbGUsCisJCQkJCSAg IHN0b3JlX2dwcjAsIHNpemVvZihzdG9yZV9ncHIwKSwKKwkJCQkJICAgMiAqIHNpemVvZih1aW50 MzJfdCkpOyAvKiByZWxvYyAqLworCQlpZ3RfYXNzZXJ0X25lcSh2YXIsIDB4YWJjZGFiYzApOwor CX0KIAotCS8qIE5vdyBhIGNvdXBsZSBvZiBuZWdhdGl2ZSB0ZXN0cyB0aGF0IHNob3VsZCBiZSBm aWx0ZXJlZCAqLwotCWV4ZWNidWYuYnVmZmVyX2NvdW50ID0gMTsKLQlleGVjYnVmLmJhdGNoX2xl biA9IDQqc2l6ZW9mKGJ1ZlswXSk7Ci0KLQlidWZbMF0gPSBNSV9MT0FEX1JFR0lTVEVSX1JFRyB8 ICgzIC0gMik7Ci0JYnVmWzFdID0gSFNXX0NTX0dQUjA7Ci0JYnVmWzJdID0gMDsKLQlidWZbM10g PSBNSV9CQVRDSF9CVUZGRVJfRU5EOwotCWdlbV93cml0ZShmZCwgb2JqWzBdLmhhbmRsZSwgMCwg YnVmLCBleGVjYnVmLmJhdGNoX2xlbik7Ci0JaWd0X2Fzc2VydF9lcShfX2dlbV9leGVjYnVmKGZk LCAmZXhlY2J1ZiksIC1FSU5WQUwpOwotCi0JYnVmWzJdID0gT0FDT05UUk9MOyAvKiBmaWx0ZXJl ZCAqLwotCWdlbV93cml0ZShmZCwgb2JqWzBdLmhhbmRsZSwgMCwgYnVmLCBleGVjYnVmLmJhdGNo X2xlbik7Ci0JaWd0X2Fzc2VydF9lcShfX2dlbV9leGVjYnVmKGZkLCAmZXhlY2J1ZiksIC1FSU5W QUwpOwotCi0JYnVmWzJdID0gREVSUk1SOyAvKiBtYXN0ZXIgb25seSAqLwotCWdlbV93cml0ZShm ZCwgb2JqWzBdLmhhbmRsZSwgMCwgYnVmLCBleGVjYnVmLmJhdGNoX2xlbik7Ci0JaWd0X2Fzc2Vy dF9lcShfX2dlbV9leGVjYnVmKGZkLCAmZXhlY2J1ZiksIC1FSU5WQUwpOwotCi0JYnVmWzJdID0g MHgyMDM4OyAvKiBSSU5HX1NUQVJUOiBpbnZhbGlkICovCi0JZ2VtX3dyaXRlKGZkLCBvYmpbMF0u aGFuZGxlLCAwLCBidWYsIGV4ZWNidWYuYmF0Y2hfbGVuKTsKLQlpZ3RfYXNzZXJ0X2VxKF9fZ2Vt X2V4ZWNidWYoZmQsICZleGVjYnVmKSwgLUVJTlZBTCk7CisJZm9yIChpbnQgaSA9IDAgOyBpIDwg QVJSQVlfTEVOKGRpc2FsbG93ZWRfcmVncyk7IGkrKykgeworCQlkb19scnJbMV0gPSBkaXNhbGxv d2VkX3JlZ3NbaV07CisJCWV4ZWNfYmF0Y2goZmQsIGhhbmRsZSwgZG9fbHJyLCBzaXplb2YoZG9f bHJyKSwKKwkJCSAgIEk5MTVfRVhFQ19SRU5ERVIsCisJCQkgICAtRUlOVkFMKTsKKwl9CiAKIAlj bG9zZShmZCk7CiB9Ci0tIAoyLjEwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2ludGVsLWdmeAo=