From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Bragg Subject: [PATCH igt v4 04/13] igt/gem_exec_parse: update hsw_load_register_reg Date: Mon, 14 Nov 2016 20:51:13 +0000 Message-ID: <20161114205122.10742-5-robert@sixbynine.org> References: <20161114205122.10742-1-robert@sixbynine.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-pg0-x244.google.com (mail-pg0-x244.google.com [IPv6:2607:f8b0:400e:c05::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3DC1A6E50D for ; Mon, 14 Nov 2016 20:51:44 +0000 (UTC) Received: by mail-pg0-x244.google.com with SMTP id 3so9802703pgd.0 for ; Mon, 14 Nov 2016 12:51:44 -0800 (PST) In-Reply-To: <20161114205122.10742-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+ClJldmlld2VkLWJ5OiBNYXR0aGV3IEF1bGQgPG1h dHRoZXcuYXVsZEBpbnRlbC5jb20+Ci0tLQogdGVzdHMvZ2VtX2V4ZWNfcGFyc2UuYyB8IDEzNyAr KysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUg Y2hhbmdlZCwgNjQgaW5zZXJ0aW9ucygrKSwgNzMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv dGVzdHMvZ2VtX2V4ZWNfcGFyc2UuYyBiL3Rlc3RzL2dlbV9leGVjX3BhcnNlLmMKaW5kZXggN2E5 ZGM4Mi4uZGNmMzlhMiAxMDA2NDQKLS0tIGEvdGVzdHMvZ2VtX2V4ZWNfcGFyc2UuYworKysgYi90 ZXN0cy9nZW1fZXhlY19wYXJzZS5jCkBAIC0zNCw4ICszNCw5IEBACiAjZGVmaW5lIEk5MTVfUEFS QU1fQ01EX1BBUlNFUl9WRVJTSU9OICAgICAgIDI4CiAjZW5kaWYKIAotI2RlZmluZSBPQUNPTlRS T0wgMHgyMzYwCiAjZGVmaW5lIERFUlJNUiAweDQ0MDUwCisjZGVmaW5lIE9BQ09OVFJPTCAweDIz NjAKKyNkZWZpbmUgU09fV1JJVEVfT0ZGU0VUXzAgMHg1MjgwCiAKICNkZWZpbmUgSFNXX0NTX0dQ UihuKSAoMHgyNjAwICsgOCoobikpCiAjZGVmaW5lIEhTV19DU19HUFIwIEhTV19DU19HUFIoMCkK QEAgLTY1LDggKzY2LDggQEAgc3RhdGljIGludCBjb21tYW5kX3BhcnNlcl92ZXJzaW9uKGludCBm ZCkKIAlyZXR1cm4gLTE7CiB9CiAKLXN0YXRpYyB2b2lkIGV4ZWNfYmF0Y2hfcGF0Y2hlZChpbnQg ZmQsIHVpbnQzMl90IGNtZF9ibywgdWludDMyX3QgKmNtZHMsCi0JCQkgICAgICAgaW50IHNpemUs IGludCBwYXRjaF9vZmZzZXQsIHVpbnQ2NF90IGV4cGVjdGVkX3ZhbHVlKQorc3RhdGljIHVpbnQ2 NF90IF9fZXhlY19iYXRjaF9wYXRjaGVkKGludCBmZCwgdWludDMyX3QgY21kX2JvLCB1aW50MzJf dCAqY21kcywKKwkJCQkgICAgIGludCBzaXplLCBpbnQgcGF0Y2hfb2Zmc2V0KQogewogCXN0cnVj dCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIgZXhlY2J1ZjsKIAlzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X2V4ZWNfb2JqZWN0MiBvYmpbMl07CkBAIC0xMDAsOSArMTAxLDE5IEBAIHN0YXRpYyB2b2lkIGV4 ZWNfYmF0Y2hfcGF0Y2hlZChpbnQgZmQsIHVpbnQzMl90IGNtZF9ibywgdWludDMyX3QgKmNtZHMs CiAJZ2VtX3N5bmMoZmQsIGNtZF9ibyk7CiAKIAlnZW1fcmVhZChmZCx0YXJnZXRfYm8sIDAsICZh Y3R1YWxfdmFsdWUsIHNpemVvZihhY3R1YWxfdmFsdWUpKTsKLQlpZ3RfYXNzZXJ0X2VxKGV4cGVj dGVkX3ZhbHVlLCBhY3R1YWxfdmFsdWUpOwogCiAJZ2VtX2Nsb3NlKGZkLCB0YXJnZXRfYm8pOwor CisJcmV0dXJuIGFjdHVhbF92YWx1ZTsKK30KKworc3RhdGljIHZvaWQgZXhlY19iYXRjaF9wYXRj aGVkKGludCBmZCwgdWludDMyX3QgY21kX2JvLCB1aW50MzJfdCAqY21kcywKKwkJCSAgICAgICBp bnQgc2l6ZSwgaW50IHBhdGNoX29mZnNldCwKKwkJCSAgICAgICB1aW50NjRfdCBleHBlY3RlZF92 YWx1ZSkKK3sKKwlpZ3RfYXNzZXJ0X2VxKF9fZXhlY19iYXRjaF9wYXRjaGVkKGZkLCBjbWRfYm8s IGNtZHMsCisJCQkJCSAgIHNpemUsIHBhdGNoX29mZnNldCksCisJCSAgICAgIGV4cGVjdGVkX3Zh bHVlKTsKIH0KIAogc3RhdGljIGludCBfX2V4ZWNfYmF0Y2goaW50IGZkLCB1aW50MzJfdCBjbWRf Ym8sIHVpbnQzMl90ICpjbWRzLApAQCAtMjk1LDMxICszMDYsMzYgQEAgc3RhdGljIHZvaWQgdGVz dF9hbGxvY2F0aW9ucyhpbnQgZmQpCiAKIHN0YXRpYyB2b2lkIGhzd19sb2FkX3JlZ2lzdGVyX3Jl Zyh2b2lkKQogewotCXVpbnQzMl90IGJ1ZlsxNl0gPSB7Ci0JCU1JX0xPQURfUkVHSVNURVJfSU1N IHwgKDUgLSAyKSwKKwl1aW50MzJfdCBpbml0X2dwcjBbMTZdID0geworCQlNSV9MT0FEX1JFR0lT VEVSX0lNTSB8ICgzIC0gMiksCiAJCUhTV19DU19HUFIwLAotCQkweGFiY2RhYmNkLAotCQlIU1df Q1NfR1BSMSwKLQkJMHhkZWFkYmVlZiwKLQorCQkweGFiY2RhYmMwLCAvKiBsZWF2ZSBbMTowXSB6 ZXJvICovCisJCU1JX0JBVENIX0JVRkZFUl9FTkQsCisJfTsKKwl1aW50MzJfdCBzdG9yZV9ncHIw WzE2XSA9IHsKIAkJTUlfU1RPUkVfUkVHSVNURVJfTUVNIHwgKDMgLSAyKSwKLQkJSFNXX0NTX0dQ UjEsCi0JCTAsIC8qIGFkZHJlc3MwICovCi0KLQkJTUlfTE9BRF9SRUdJU1RFUl9SRUcgfCAoMyAt IDIpLAogCQlIU1dfQ1NfR1BSMCwKLQkJSFNXX0NTX0dQUjEsCi0KLQkJTUlfU1RPUkVfUkVHSVNU RVJfTUVNIHwgKDMgLSAyKSwKLQkJSFNXX0NTX0dQUjEsCi0JCTQsIC8qIGFkZHJlc3MxICovCi0K KwkJMCwgLyogcmVsb2MqLwogCQlNSV9CQVRDSF9CVUZGRVJfRU5ELAogCX07Ci0Jc3RydWN0IGRy bV9pOTE1X2dlbV9leGVjYnVmZmVyMiBleGVjYnVmOwotCXN0cnVjdCBkcm1faTkxNV9nZW1fZXhl Y19vYmplY3QyIG9ialsyXTsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlbG9jYXRpb25fZW50cnkg cmVsb2NbMl07CisJdWludDMyX3QgZG9fbHJyWzE2XSA9IHsKKwkJTUlfTE9BRF9SRUdJU1RFUl9S RUcgfCAoMyAtIDIpLAorCQkwLCAvKiBbMV0gPSBzcmMgKi8KKwkJSFNXX0NTX0dQUjAsIC8qIGRz dCAqLworCQlNSV9CQVRDSF9CVUZGRVJfRU5ELAorCX07CisJdWludDMyX3QgYWxsb3dlZF9yZWdz W10gPSB7CisJCUhTV19DU19HUFIxLAorCQlTT19XUklURV9PRkZTRVRfMCwKKwl9OworCXVpbnQz Ml90IGRpc2FsbG93ZWRfcmVnc1tdID0geworCQkwLAorCQlPQUNPTlRST0wsIC8qIGZpbHRlcmVk ICovCisJCURFUlJNUiwgLyogbWFzdGVyIG9ubHkgKi8KKwkJMHgyMDM4LCAvKiBSSU5HX1NUQVJU OiBpbnZhbGlkICovCisJfTsKIAlpbnQgZmQ7CisJdWludDMyX3QgaGFuZGxlOwogCiAJLyogT3Bl biBhZ2FpbiB0byBnZXQgYSBub24tbWFzdGVyIGZpbGUgZGVzY3JpcHRvciAqLwogCWZkID0gZHJt X29wZW5fZHJpdmVyKERSSVZFUl9JTlRFTCk7CkBAIC0zMjcsNTkgKzM0MywzNCBAQCBzdGF0aWMg dm9pZCBoc3dfbG9hZF9yZWdpc3Rlcl9yZWcodm9pZCkKIAlpZ3RfcmVxdWlyZShJU19IQVNXRUxM KGludGVsX2dldF9kcm1fZGV2aWQoZmQpKSk7CiAJaWd0X3JlcXVpcmUoY29tbWFuZF9wYXJzZXJf dmVyc2lvbihmZCkgPj0gNyk7CiAKLQltZW1zZXQob2JqLCAwLCBzaXplb2Yob2JqKSk7Ci0Jb2Jq WzBdLmhhbmRsZSA9IGdlbV9jcmVhdGUoZmQsIDQwOTYpOwotCW9ialsxXS5oYW5kbGUgPSBnZW1f Y3JlYXRlKGZkLCA0MDk2KTsKLQlnZW1fd3JpdGUoZmQsIG9ialsxXS5oYW5kbGUsIDAsIGJ1Ziwg c2l6ZW9mKGJ1ZikpOworCWhhbmRsZSA9IGdlbV9jcmVhdGUoZmQsIDQwOTYpOwogCi0JbWVtc2V0 KHJlbG9jLCAwLCBzaXplb2YocmVsb2MpKTsKLQlyZWxvY1swXS5vZmZzZXQgPSA3KnNpemVvZih1 aW50MzJfdCk7Ci0JcmVsb2NbMF0udGFyZ2V0X2hhbmRsZSA9IG9ialswXS5oYW5kbGU7Ci0JcmVs b2NbMF0uZGVsdGEgPSAwOwotCXJlbG9jWzBdLnJlYWRfZG9tYWlucyA9IEk5MTVfR0VNX0RPTUFJ Tl9DT01NQU5EOwotCXJlbG9jWzBdLndyaXRlX2RvbWFpbiA9IEk5MTVfR0VNX0RPTUFJTl9DT01N QU5EOwotCXJlbG9jWzFdLm9mZnNldCA9IDEzKnNpemVvZih1aW50MzJfdCk7Ci0JcmVsb2NbMV0u dGFyZ2V0X2hhbmRsZSA9IG9ialswXS5oYW5kbGU7Ci0JcmVsb2NbMV0uZGVsdGEgPSBzaXplb2Yo dWludDMyX3QpOwotCXJlbG9jWzFdLnJlYWRfZG9tYWlucyA9IEk5MTVfR0VNX0RPTUFJTl9DT01N QU5EOwotCXJlbG9jWzFdLndyaXRlX2RvbWFpbiA9IEk5MTVfR0VNX0RPTUFJTl9DT01NQU5EOwot CW9ialsxXS5yZWxvY3NfcHRyID0gKHVpbnRwdHJfdCkmcmVsb2M7Ci0Jb2JqWzFdLnJlbG9jYXRp b25fY291bnQgPSAyOworCWZvciAoaW50IGkgPSAwIDsgaSA8IEFSUkFZX1NJWkUoYWxsb3dlZF9y ZWdzKTsgaSsrKSB7CisJCXVpbnQzMl90IHZhcjsKIAotCW1lbXNldCgmZXhlY2J1ZiwgMCwgc2l6 ZW9mKGV4ZWNidWYpKTsKLQlleGVjYnVmLmJ1ZmZlcnNfcHRyID0gKHVpbnRwdHJfdClvYmo7Ci0J ZXhlY2J1Zi5idWZmZXJfY291bnQgPSAyOwotCWV4ZWNidWYuYmF0Y2hfbGVuID0gc2l6ZW9mKGJ1 Zik7Ci0JZXhlY2J1Zi5mbGFncyA9IEk5MTVfRVhFQ19SRU5ERVI7Ci0JZ2VtX2V4ZWNidWYoZmQs ICZleGVjYnVmKTsKLQlnZW1fY2xvc2UoZmQsIG9ialsxXS5oYW5kbGUpOwotCi0JZ2VtX3JlYWQo ZmQsIG9ialswXS5oYW5kbGUsIDAsIGJ1ZiwgMipzaXplb2YoYnVmWzBdKSk7Ci0JaWd0X2Fzc2Vy dF9lcV91MzIoYnVmWzBdLCAweGRlYWRiZWVmKTsgLyogYmVmb3JlIGNvcHkgKi8KLQlpZ3RfYXNz ZXJ0X2VxX3UzMihidWZbMV0sIDB4YWJjZGFiY2QpOyAvKiBhZnRlciBjb3B5ICovCisJCWV4ZWNf YmF0Y2goZmQsIGhhbmRsZSwgaW5pdF9ncHIwLCBzaXplb2YoaW5pdF9ncHIwKSwKKwkJCSAgIEk5 MTVfRVhFQ19SRU5ERVIsCisJCQkgICAwKTsKKwkJZXhlY19iYXRjaF9wYXRjaGVkKGZkLCBoYW5k bGUsCisJCQkJICAgc3RvcmVfZ3ByMCwgc2l6ZW9mKHN0b3JlX2dwcjApLAorCQkJCSAgIDIgKiBz aXplb2YodWludDMyX3QpLCAvKiByZWxvYyAqLworCQkJCSAgIDB4YWJjZGFiYzApOworCQlkb19s cnJbMV0gPSBhbGxvd2VkX3JlZ3NbaV07CisJCWV4ZWNfYmF0Y2goZmQsIGhhbmRsZSwgZG9fbHJy LCBzaXplb2YoZG9fbHJyKSwKKwkJCSAgIEk5MTVfRVhFQ19SRU5ERVIsCisJCQkgICAwKTsKKwkJ dmFyID0gX19leGVjX2JhdGNoX3BhdGNoZWQoZmQsIGhhbmRsZSwKKwkJCQkJICAgc3RvcmVfZ3By MCwgc2l6ZW9mKHN0b3JlX2dwcjApLAorCQkJCQkgICAyICogc2l6ZW9mKHVpbnQzMl90KSk7IC8q IHJlbG9jICovCisJCWlndF9hc3NlcnRfbmVxKHZhciwgMHhhYmNkYWJjMCk7CisJfQogCi0JLyog Tm93IGEgY291cGxlIG9mIG5lZ2F0aXZlIHRlc3RzIHRoYXQgc2hvdWxkIGJlIGZpbHRlcmVkICov Ci0JZXhlY2J1Zi5idWZmZXJfY291bnQgPSAxOwotCWV4ZWNidWYuYmF0Y2hfbGVuID0gNCpzaXpl b2YoYnVmWzBdKTsKLQotCWJ1ZlswXSA9IE1JX0xPQURfUkVHSVNURVJfUkVHIHwgKDMgLSAyKTsK LQlidWZbMV0gPSBIU1dfQ1NfR1BSMDsKLQlidWZbMl0gPSAwOwotCWJ1ZlszXSA9IE1JX0JBVENI X0JVRkZFUl9FTkQ7Ci0JZ2VtX3dyaXRlKGZkLCBvYmpbMF0uaGFuZGxlLCAwLCBidWYsIGV4ZWNi dWYuYmF0Y2hfbGVuKTsKLQlpZ3RfYXNzZXJ0X2VxKF9fZ2VtX2V4ZWNidWYoZmQsICZleGVjYnVm KSwgLUVJTlZBTCk7Ci0KLQlidWZbMl0gPSBPQUNPTlRST0w7IC8qIGZpbHRlcmVkICovCi0JZ2Vt X3dyaXRlKGZkLCBvYmpbMF0uaGFuZGxlLCAwLCBidWYsIGV4ZWNidWYuYmF0Y2hfbGVuKTsKLQlp Z3RfYXNzZXJ0X2VxKF9fZ2VtX2V4ZWNidWYoZmQsICZleGVjYnVmKSwgLUVJTlZBTCk7Ci0KLQli dWZbMl0gPSBERVJSTVI7IC8qIG1hc3RlciBvbmx5ICovCi0JZ2VtX3dyaXRlKGZkLCBvYmpbMF0u aGFuZGxlLCAwLCBidWYsIGV4ZWNidWYuYmF0Y2hfbGVuKTsKLQlpZ3RfYXNzZXJ0X2VxKF9fZ2Vt X2V4ZWNidWYoZmQsICZleGVjYnVmKSwgLUVJTlZBTCk7Ci0KLQlidWZbMl0gPSAweDIwMzg7IC8q IFJJTkdfU1RBUlQ6IGludmFsaWQgKi8KLQlnZW1fd3JpdGUoZmQsIG9ialswXS5oYW5kbGUsIDAs IGJ1ZiwgZXhlY2J1Zi5iYXRjaF9sZW4pOwotCWlndF9hc3NlcnRfZXEoX19nZW1fZXhlY2J1Zihm ZCwgJmV4ZWNidWYpLCAtRUlOVkFMKTsKKwlmb3IgKGludCBpID0gMCA7IGkgPCBBUlJBWV9TSVpF KGRpc2FsbG93ZWRfcmVncyk7IGkrKykgeworCQlkb19scnJbMV0gPSBkaXNhbGxvd2VkX3JlZ3Nb aV07CisJCWV4ZWNfYmF0Y2goZmQsIGhhbmRsZSwgZG9fbHJyLCBzaXplb2YoZG9fbHJyKSwKKwkJ CSAgIEk5MTVfRVhFQ19SRU5ERVIsCisJCQkgICAtRUlOVkFMKTsKKwl9CiAKIAljbG9zZShmZCk7 CiB9Ci0tIAoyLjEwLjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9w Lm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVs LWdmeAo=