From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from m43-7.mailgun.net (m43-7.mailgun.net [69.72.43.7]) by gabe.freedesktop.org (Postfix) with ESMTPS id 6EE466E17D for ; Tue, 15 Sep 2020 19:56:31 +0000 (UTC) From: Abhinav Kumar Date: Tue, 15 Sep 2020 12:56:11 -0700 Message-Id: <20200915195614.7618-3-abhinavk@codeaurora.org> In-Reply-To: <20200915195614.7618-1-abhinavk@codeaurora.org> References: <20200915195614.7618-1-abhinavk@codeaurora.org> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2 2/5] lib/igt_kms: move some of the useful dump functions to igt_kms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: petri.latvala@intel.com, swboyd@chromium.org, khsieh@codeaurora.org, nganji@codeaurora.org, seanpaul@chromium.org, tanmay@codeaurora.org, aravindh@codeaurora.org List-ID: U29tZSBvZiB0aGUgZnVuY3Rpb25zIGluc2lkZSB0aGUgaW50ZWxfZHBfY29tcGxpYW5jZSBhcmUK Z2VuZXJpYyBhbmQgY2FuIGJlIHVzZWQgYnkgb3RoZXIgbW9kdWxlcyBhcyB3ZWxsLiBNb3ZlIHRo ZXNlCnRvIHRoZSBpZ3Rfa21zIGxpYi4KCmNoYW5nZXMgaW4gdjI6CgktIGFkZCBtb3JlIGRvY3Vt ZW50YXRpb24gZm9yIHRoZSBuZXcgQVBJcyBpbiB0aGUgbGliCgpTaWduZWQtb2ZmLWJ5OiBBYmhp bmF2IEt1bWFyIDxhYmhpbmF2a0Bjb2RlYXVyb3JhLm9yZz4KLS0tCiBsaWIvaWd0X2ttcy5jICAg ICAgICAgICAgICAgfCA5MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBs aWIvaWd0X2ttcy5oICAgICAgICAgICAgICAgfCAyMiArKysrKysrKysKIHRvb2xzL2ludGVsX2Rw X2NvbXBsaWFuY2UuYyB8IDkyICstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K IDMgZmlsZXMgY2hhbmdlZCwgMTE2IGluc2VydGlvbnMoKyksIDkwIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2xpYi9pZ3Rfa21zLmMgYi9saWIvaWd0X2ttcy5jCmluZGV4IDdjZjIwMDhlLi5i ZTM0ZDA3YiAxMDA2NDQKLS0tIGEvbGliL2lndF9rbXMuYworKysgYi9saWIvaWd0X2ttcy5jCkBA IC0xLDQgKzEsNSBAQAogLyoKKyAqIENvcHlyaWdodCAoYykgMjAyMCwgVGhlIExpbnV4IEZvdW5k YXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5cmlnaHQgwqkgMjAxMyBJbnRlbCBD b3Jwb3JhdGlvbgogICoKICAqIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2Yg Y2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhCkBAIC00Nzc4LDMgKzQ3NzksOTQgQEAg dWludDMyX3QgaWd0X3JlZHVjZV9mb3JtYXQodWludDMyX3QgZm9ybWF0KQogCQlyZXR1cm4gZm9y bWF0OwogCX0KIH0KKwordm9pZCBpZ3RfZHVtcF9jb25uZWN0b3JzX2ZkKGludCBkcm1mZCkKK3sK KwlpbnQgaSwgajsKKworCWRybU1vZGVSZXMgKm1vZGVfcmVzb3VyY2VzID0gZHJtTW9kZUdldFJl c291cmNlcyhkcm1mZCk7CisKKwlpZiAoIW1vZGVfcmVzb3VyY2VzKSB7CisJCWlndF93YXJuKCJk cm1Nb2RlR2V0UmVzb3VyY2VzIGZhaWxlZDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7CisJCXJl dHVybjsKKwl9CisKKwlpZ3RfaW5mbygiQ29ubmVjdG9yczpcbiIpOworCWlndF9pbmZvKCJpZFx0 ZW5jb2Rlclx0c3RhdHVzXHRcdHR5cGVcdHNpemUgKG1tKVx0bW9kZXNcbiIpOworCWZvciAoaSA9 IDA7IGkgPCBtb2RlX3Jlc291cmNlcy0+Y291bnRfY29ubmVjdG9yczsgaSsrKSB7CisJCWRybU1v ZGVDb25uZWN0b3IgKmNvbm5lY3RvcjsKKworCQljb25uZWN0b3IgPSBkcm1Nb2RlR2V0Q29ubmVj dG9yQ3VycmVudChkcm1mZCwKKwkJCQltb2RlX3Jlc291cmNlcy0+Y29ubmVjdG9yc1tpXSk7CisJ CWlmICghY29ubmVjdG9yKSB7CisJCQlpZ3Rfd2FybigiQ291bGQgbm90IGdldCBjb25uZWN0b3Ig JWk6ICVzXG4iLAorCQkJCSBtb2RlX3Jlc291cmNlcy0+Y29ubmVjdG9yc1tpXSwKKwkJCQkgc3Ry ZXJyb3IoZXJybm8pKTsKKwkJCWNvbnRpbnVlOworCQl9CisKKwkJaWd0X2luZm8oIiVkXHQlZFx0 JXNcdCVzXHQlZHglZFx0XHQlZFxuIiwKKwkJCSBjb25uZWN0b3ItPmNvbm5lY3Rvcl9pZCwKKwkJ CSBjb25uZWN0b3ItPmVuY29kZXJfaWQsCisJCQkga21zdGVzdF9jb25uZWN0b3Jfc3RhdHVzX3N0 cihjb25uZWN0b3ItPmNvbm5lY3Rpb24pLAorCQkJIGttc3Rlc3RfY29ubmVjdG9yX3R5cGVfc3Ry KGNvbm5lY3Rvci0+Y29ubmVjdG9yX3R5cGUpLAorCQkJIGNvbm5lY3Rvci0+bW1XaWR0aCwKKwkJ CSBjb25uZWN0b3ItPm1tSGVpZ2h0LAorCQkJIGNvbm5lY3Rvci0+Y291bnRfbW9kZXMpOworCisJ CWlmICghY29ubmVjdG9yLT5jb3VudF9tb2RlcykKKwkJCWNvbnRpbnVlOworCisJCWlndF9pbmZv KCIgIE1vZGVzOlxuIik7CisJCWlndF9pbmZvKCIgIG5hbWUgcmVmcmVzaCAoSHopIGhkaXNwIGhz cyBoc2UgaHRvdCB2ZGlzcCAiInZzcyB2c2UgdnRvdCBmbGFncyB0eXBlIGNsb2NrXG4iKTsKKwkJ Zm9yIChqID0gMDsgaiA8IGNvbm5lY3Rvci0+Y291bnRfbW9kZXM7IGorKykgeworCQkJaWd0X2lu Zm8oIlslZF0iLCBqKTsKKwkJCWttc3Rlc3RfZHVtcF9tb2RlKCZjb25uZWN0b3ItPm1vZGVzW2pd KTsKKwkJfQorCisJCWRybU1vZGVGcmVlQ29ubmVjdG9yKGNvbm5lY3Rvcik7CisJfQorCWlndF9p bmZvKCJcbiIpOworCisJZHJtTW9kZUZyZWVSZXNvdXJjZXMobW9kZV9yZXNvdXJjZXMpOworfQor Cit2b2lkIGlndF9kdW1wX2NydGNzX2ZkKGludCBkcm1mZCkKK3sKKwlpbnQgaTsKKwlkcm1Nb2Rl UmVzICptb2RlX3Jlc291cmNlczsKKworCW1vZGVfcmVzb3VyY2VzID0gZHJtTW9kZUdldFJlc291 cmNlcyhkcm1mZCk7CisJaWYgKCFtb2RlX3Jlc291cmNlcykgeworCQlpZ3Rfd2FybigiZHJtTW9k ZUdldFJlc291cmNlcyBmYWlsZWQ6ICVzXG4iLCBzdHJlcnJvcihlcnJubykpOworCQlyZXR1cm47 CisJfQorCisJaWd0X2luZm8oIkNSVENzOlxuIik7CisJaWd0X2luZm8oImlkXHRmYlx0cG9zXHRz aXplXG4iKTsKKwlmb3IgKGkgPSAwOyBpIDwgbW9kZV9yZXNvdXJjZXMtPmNvdW50X2NydGNzOyBp KyspIHsKKwkJZHJtTW9kZUNydGMgKmNydGM7CisKKwkJY3J0YyA9IGRybU1vZGVHZXRDcnRjKGRy bWZkLCBtb2RlX3Jlc291cmNlcy0+Y3J0Y3NbaV0pOworCQlpZiAoIWNydGMpIHsKKwkJCWlndF93 YXJuKCJDb3VsZCBub3QgZ2V0IGNydGMgJWk6ICVzXG4iLAorCQkJCQltb2RlX3Jlc291cmNlcy0+ Y3J0Y3NbaV0sCisJCQkJCXN0cmVycm9yKGVycm5vKSk7CisJCQljb250aW51ZTsKKwkJfQorCQlp Z3RfaW5mbygiJWRcdCVkXHQoJWQsJWQpXHQoJWR4JWQpXG4iLAorCQkJIGNydGMtPmNydGNfaWQs CisJCQkgY3J0Yy0+YnVmZmVyX2lkLAorCQkJIGNydGMtPngsCisJCQkgY3J0Yy0+eSwKKwkJCSBj cnRjLT53aWR0aCwKKwkJCSBjcnRjLT5oZWlnaHQpOworCisJCWttc3Rlc3RfZHVtcF9tb2RlKCZj cnRjLT5tb2RlKTsKKworCQlkcm1Nb2RlRnJlZUNydGMoY3J0Yyk7CisJfQorCWlndF9pbmZvKCJc biIpOworCisJZHJtTW9kZUZyZWVSZXNvdXJjZXMobW9kZV9yZXNvdXJjZXMpOworfQpkaWZmIC0t Z2l0IGEvbGliL2lndF9rbXMuaCBiL2xpYi9pZ3Rfa21zLmgKaW5kZXggNDVkYTZiZjYuLmNmMDNj NzIxIDEwMDY0NAotLS0gYS9saWIvaWd0X2ttcy5oCisrKyBiL2xpYi9pZ3Rfa21zLmgKQEAgLTEs NCArMSw1IEBACiAvKgorICogQ29weXJpZ2h0IChjKSAyMDIwLCBUaGUgTGludXggRm91bmRhdGlv bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqIENvcHlyaWdodCDCqSAyMDEzIEludGVsIENvcnBv cmF0aW9uCiAgKgogICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFy Z2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEKQEAgLTg3NCw2ICs4NzUsNyBAQCBpbnQgaWd0 X2Nvbm5lY3Rvcl9zeXNmc19vcGVuKGludCBkcm1fZmQsCiAJCQkgICAgIGRybU1vZGVDb25uZWN0 b3IgKmNvbm5lY3Rvcik7CiB1aW50MzJfdCBpZ3RfcmVkdWNlX2Zvcm1hdCh1aW50MzJfdCBmb3Jt YXQpOwogCisKIC8qCiAgKiBpZ3RfcmVxdWlyZV9waXBlOgogICogQGRpc3BsYXk6IHBvaW50ZXIg dG8gaWd0X2Rpc3BsYXlfdApAQCAtODg3LDQgKzg4OSwyNCBAQCB1aW50MzJfdCBpZ3RfcmVkdWNl X2Zvcm1hdCh1aW50MzJfdCBmb3JtYXQpOwogdm9pZCBpZ3RfcmVxdWlyZV9waXBlKGlndF9kaXNw bGF5X3QgKmRpc3BsYXksCiAJCWVudW0gcGlwZSBwaXBlKTsKIAorLyoqCisgKiBpZ3RfZHVtcF9j b25uZWN0b3JzX2ZkOgorICogQGRybWZkOiBoYW5kbGUgdG8gb3BlbiBkcm0gZGV2aWNlLgorICoK KyAqIEl0ZXJhdGVzIHRocm91Z2ggbGlzdCBvZiBjb25uZWN0b3JzIGFuZAorICogZHVtcHMgdGhl aXIgbGlzdCBvZiBtb2Rlcy4KKyAqCisgKi8KK3ZvaWQgaWd0X2R1bXBfY29ubmVjdG9yc19mZChp bnQgZHJtZmQpOworCisvKioKKyAqIGlndF9kdW1wX2NydGNzX2ZkOgorICogQGRybWZkOiBoYW5k bGUgdG8gb3BlbiBkcm0gZGV2aWNlLgorICoKKyAqIEl0ZXJhdGVzIHRocm91Z2ggdGhlIGxpc3Qg b2YgY3J0Y3MgYW5kCisgKiBkdW1wcyBvdXQgdGhlIG1vZGUgYW5kIGJhc2ljIGluZm9ybWF0aW9u CisgKiBmb3IgZWFjaCBvZiB0aGVtLgorICovCit2b2lkIGlndF9kdW1wX2NydGNzX2ZkKGludCBk cm1mZCk7CisKICNlbmRpZiAvKiBfX0lHVF9LTVNfSF9fICovCmRpZmYgLS1naXQgYS90b29scy9p bnRlbF9kcF9jb21wbGlhbmNlLmMgYi90b29scy9pbnRlbF9kcF9jb21wbGlhbmNlLmMKaW5kZXgg NWM0MjM4OTcuLmZjNTEyNzExIDEwMDY0NAotLS0gYS90b29scy9pbnRlbF9kcF9jb21wbGlhbmNl LmMKKysrIGIvdG9vbHMvaW50ZWxfZHBfY29tcGxpYW5jZS5jCkBAIC0zNDcsOTggKzM0NywxMCBA QCBzdGF0aWMgaW50IHByb2Nlc3NfdGVzdF9yZXF1ZXN0KGludCB0ZXN0X3R5cGUpCiAJcmV0dXJu IC0xOwogfQogCi1zdGF0aWMgdm9pZCBkdW1wX2Nvbm5lY3RvcnNfZmQoaW50IGRybWZkKQotewot CWludCBpLCBqOwotCi0JZHJtTW9kZVJlcyAqbW9kZV9yZXNvdXJjZXMgPSBkcm1Nb2RlR2V0UmVz b3VyY2VzKGRybWZkKTsKLQotCWlmICghbW9kZV9yZXNvdXJjZXMpIHsKLQkJaWd0X3dhcm4oImRy bU1vZGVHZXRSZXNvdXJjZXMgZmFpbGVkOiAlc1xuIiwgc3RyZXJyb3IoZXJybm8pKTsKLQkJcmV0 dXJuOwotCX0KLQotCWlndF9pbmZvKCJDb25uZWN0b3JzOlxuIik7Ci0JaWd0X2luZm8oImlkXHRl bmNvZGVyXHRzdGF0dXNcdFx0dHlwZVx0c2l6ZSAobW0pXHRtb2Rlc1xuIik7Ci0JZm9yIChpID0g MDsgaSA8IG1vZGVfcmVzb3VyY2VzLT5jb3VudF9jb25uZWN0b3JzOyBpKyspIHsKLQkJZHJtTW9k ZUNvbm5lY3RvciAqY29ubmVjdG9yOwotCi0JCWNvbm5lY3RvciA9IGRybU1vZGVHZXRDb25uZWN0 b3JDdXJyZW50KGRybWZkLAotCQkJCQkJICAgICAgIG1vZGVfcmVzb3VyY2VzLT5jb25uZWN0b3Jz W2ldKTsKLQkJaWYgKCFjb25uZWN0b3IpIHsKLQkJCWlndF93YXJuKCJDb3VsZCBub3QgZ2V0IGNv bm5lY3RvciAlaTogJXNcbiIsCi0JCQkJIG1vZGVfcmVzb3VyY2VzLT5jb25uZWN0b3JzW2ldLCBz dHJlcnJvcihlcnJubykpOwotCQkJY29udGludWU7Ci0JCX0KLQotCQlpZ3RfaW5mbygiJWRcdCVk XHQlc1x0JXNcdCVkeCVkXHRcdCVkXG4iLAotCQkJIGNvbm5lY3Rvci0+Y29ubmVjdG9yX2lkLAot CQkJIGNvbm5lY3Rvci0+ZW5jb2Rlcl9pZCwKLQkJCSBrbXN0ZXN0X2Nvbm5lY3Rvcl9zdGF0dXNf c3RyKGNvbm5lY3Rvci0+Y29ubmVjdGlvbiksCi0JCQkga21zdGVzdF9jb25uZWN0b3JfdHlwZV9z dHIoY29ubmVjdG9yLT5jb25uZWN0b3JfdHlwZSksCi0JCQkgY29ubmVjdG9yLT5tbVdpZHRoLAot CQkJIGNvbm5lY3Rvci0+bW1IZWlnaHQsCi0JCQkgY29ubmVjdG9yLT5jb3VudF9tb2Rlcyk7Ci0K LQkJaWYgKCFjb25uZWN0b3ItPmNvdW50X21vZGVzKQotCQkJY29udGludWU7Ci0KLQkJaWd0X2lu Zm8oIiAgTW9kZXM6XG4iKTsKLQkJaWd0X2luZm8oIiAgbmFtZSByZWZyZXNoIChIeikgaGRpc3Ag aHNzIGhzZSBodG90IHZkaXNwICIidnNzIHZzZSB2dG90IGZsYWdzIHR5cGUgY2xvY2tcbiIpOwot CQlmb3IgKGogPSAwOyBqIDwgY29ubmVjdG9yLT5jb3VudF9tb2RlczsgaisrKSB7Ci0JCQlpZ3Rf aW5mbygiWyVkXSIsIGopOwotCQkJa21zdGVzdF9kdW1wX21vZGUoJmNvbm5lY3Rvci0+bW9kZXNb al0pOwotCQl9Ci0KLQkJZHJtTW9kZUZyZWVDb25uZWN0b3IoY29ubmVjdG9yKTsKLQl9Ci0JaWd0 X2luZm8oIlxuIik7Ci0KLQlkcm1Nb2RlRnJlZVJlc291cmNlcyhtb2RlX3Jlc291cmNlcyk7Ci19 Ci0KLXN0YXRpYyB2b2lkIGR1bXBfY3J0Y3NfZmQoaW50IGRybWZkKQotewotCWludCBpOwotCWRy bU1vZGVSZXMgKm1vZGVfcmVzb3VyY2VzOwotCi0JbW9kZV9yZXNvdXJjZXMgPSBkcm1Nb2RlR2V0 UmVzb3VyY2VzKGRybWZkKTsKLQlpZiAoIW1vZGVfcmVzb3VyY2VzKSB7Ci0JCWlndF93YXJuKCJk cm1Nb2RlR2V0UmVzb3VyY2VzIGZhaWxlZDogJXNcbiIsIHN0cmVycm9yKGVycm5vKSk7Ci0JCXJl dHVybjsKLQl9Ci0KLQlpZ3RfaW5mbygiQ1JUQ3M6XG4iKTsKLQlpZ3RfaW5mbygiaWRcdGZiXHRw b3NcdHNpemVcbiIpOwotCWZvciAoaSA9IDA7IGkgPCBtb2RlX3Jlc291cmNlcy0+Y291bnRfY3J0 Y3M7IGkrKykgewotCQlkcm1Nb2RlQ3J0YyAqY3J0YzsKLQotCQljcnRjID0gZHJtTW9kZUdldENy dGMoZHJtZmQsIG1vZGVfcmVzb3VyY2VzLT5jcnRjc1tpXSk7Ci0JCWlmICghY3J0YykgewotCQkJ aWd0X3dhcm4oIkNvdWxkIG5vdCBnZXQgY3J0YyAlaTogJXNcbiIsIG1vZGVfcmVzb3VyY2VzLT5j cnRjc1tpXSwgc3RyZXJyb3IoZXJybm8pKTsKLQkJCWNvbnRpbnVlOwotCQl9Ci0JCWlndF9pbmZv KCIlZFx0JWRcdCglZCwlZClcdCglZHglZClcbiIsCi0JCQkgY3J0Yy0+Y3J0Y19pZCwKLQkJCSBj cnRjLT5idWZmZXJfaWQsCi0JCQkgY3J0Yy0+eCwKLQkJCSBjcnRjLT55LAotCQkJIGNydGMtPndp ZHRoLAotCQkJIGNydGMtPmhlaWdodCk7Ci0KLQkJa21zdGVzdF9kdW1wX21vZGUoJmNydGMtPm1v ZGUpOwotCi0JCWRybU1vZGVGcmVlQ3J0YyhjcnRjKTsKLQl9Ci0JaWd0X2luZm8oIlxuIik7Ci0K LQlkcm1Nb2RlRnJlZVJlc291cmNlcyhtb2RlX3Jlc291cmNlcyk7Ci19Ci0KIHN0YXRpYyB2b2lk IGR1bXBfaW5mbyh2b2lkKQogewotCWR1bXBfY29ubmVjdG9yc19mZChkcm1fZmQpOwotCWR1bXBf Y3J0Y3NfZmQoZHJtX2ZkKTsKKwlpZ3RfZHVtcF9jb25uZWN0b3JzX2ZkKGRybV9mZCk7CisJaWd0 X2R1bXBfY3J0Y3NfZmQoZHJtX2ZkKTsKIH0KIAogc3RhdGljIGludCBzZXR1cF9mcmFtZWJ1ZmZl cnMoc3RydWN0IGNvbm5lY3RvciAqZHBfY29ubikKLS0gClRoZSBRdWFsY29tbSBJbm5vdmF0aW9u IENlbnRlciwgSW5jLiBpcyBhIG1lbWJlciBvZiB0aGUgQ29kZSBBdXJvcmEgRm9ydW0sCmEgTGlu dXggRm91bmRhdGlvbiBDb2xsYWJvcmF0aXZlIFByb2plY3QKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaWd0LWRldgo=