From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0D4BD89FD1 for ; Wed, 5 Sep 2018 21:05:10 +0000 (UTC) From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= Date: Wed, 5 Sep 2018 14:05:03 -0700 Message-Id: <20180905210505.28867-1-jose.souza@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 1/3] lib: Add functions to read parameters 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 List-ID: VGhpcyBmdW5jdGlvbnMgYWxsb3cgdXMgdG8gcmVhZCBpOTE1IHBhcmFtZXRlcnMsIHRoYXQgaXMg dXNlcmZ1bCB0bwprbm93IHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBsb2FkZWQgZHJpdmVyLgoK U2lnbmVkLW9mZi1ieTogSm9zw6kgUm9iZXJ0byBkZSBTb3V6YSA8am9zZS5zb3V6YUBpbnRlbC5j b20+Ci0tLQogbGliL2lndF9hdXguYyAgfCA1OCArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKwogbGliL2lndF9hdXguaCAgfCAgMiArKwogbGliL2lndF9j b3JlLmggfCAzNCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2Vk LCA5NCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvbGliL2lndF9hdXguYyBiL2xpYi9pZ3Rf YXV4LmMKaW5kZXggMTI1MGQ1YzUuLjU0NTFmNTFjIDEwMDY0NAotLS0gYS9saWIvaWd0X2F1eC5j CisrKyBiL2xpYi9pZ3RfYXV4LmMKQEAgLTEyMjgsNiArMTIyOCw0MCBAQCB2b2lkIGlndF9zZXRf bW9kdWxlX3BhcmFtKGNvbnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnZhbCkKIAlpZ3RfYXNz ZXJ0KGNsb3NlKGZkKSA9PSAwKTsKIH0KIAorLyoqCisgKiBpZ3RfZ2V0X21vZHVsZV9wYXJhbToK KyAqIEBuYW1lOiBpOTE1LmtvIHBhcmFtZXRlciBuYW1lCisgKiBAdmFsOiBpOTE1LmtvIHBhcmFt ZXRlciB2YWx1ZQorICogQHZhbF9sZW46IHRoZSBsZW5ndGggb2YgdmFsIGJ1ZmZlcgorICogUmV0 dXJuczogMCBpbiBzdWNjZXNzCisgKgorICogVGhpcyBmdW5jdGlvbiBnZXRzIHRoZSB2YWx1ZSBv ZiB0aGUgZ2l2ZW4gaTkxNS5rbyBwYXJhbWV0ZXIuCisgKgorICogUGxlYXNlIGNvbnNpZGVyIHVz aW5nIGlndF9nZXRfbW9kdWxlX3BhcmFtX2ludCgpIGZvciB0aGUgaW50ZWdlciBhbmQgYm9vbAor ICogcGFyYW1ldGVycy4KKyAqLworaW50IGlndF9nZXRfbW9kdWxlX3BhcmFtKGNvbnN0IGNoYXIg Km5hbWUsIGNoYXIgKnZhbCwgc2l6ZV90IHZhbF9sZW4pCit7CisJY2hhciBmaWxlX3BhdGhbUEFS QU1fRklMRV9QQVRIX01BWF9TWl07CisJc2l6ZV90IG47CisJaW50IGZkOworCisJaWd0X2Fzc2Vy dF9yZXR1cm5fZihzdHJsZW4obmFtZSkgPCBQQVJBTV9OQU1FX01BWF9TWiwgLTEsCisJCQkgICAg Ik5lZWQgdG8gaW5jcmVhc2UgUEFSQU1fTkFNRV9NQVhfU1pcbiIpOworCXNucHJpbnRmKGZpbGVf cGF0aCwgc2l6ZW9mKGZpbGVfcGF0aCksICIlcyVzIiwgTU9EVUxFX1BBUkFNX0RJUiwgbmFtZSk7 CisKKwlmZCA9IG9wZW4oZmlsZV9wYXRoLCBPX1JET05MWSk7CisJaWd0X2Fzc2VydF9yZXR1cm4o ZmQgPj0gMCwgLTEpOworCisJbiA9IHJlYWQoZmQsIHZhbCwgdmFsX2xlbik7CisJaWd0X2Fzc2Vy dChjbG9zZShmZCkgPT0gMCk7CisKKwlpZ3RfYXNzZXJ0X3JldHVybl9mKG4gPiAwICYmIG4gPCBQ QVJBTV9WQUxVRV9NQVhfU1osIC0xLAorCQkJICAgICJOZWVkIHRvIGluY3JlYXNlIFBBUkFNX1ZB TFVFX01BWF9TWlxuIik7CisKKwlyZXR1cm4gMDsKK30KKwogLyoqCiAgKiBpZ3Rfc2V0X21vZHVs ZV9wYXJhbV9pbnQ6CiAgKiBAbmFtZTogaTkxNS5rbyBwYXJhbWV0ZXIgbmFtZQpAQCAtMTI0OCw2 ICsxMjgyLDMwIEBAIHZvaWQgaWd0X3NldF9tb2R1bGVfcGFyYW1faW50KGNvbnN0IGNoYXIgKm5h bWUsIGludCB2YWwpCiAJaWd0X3NldF9tb2R1bGVfcGFyYW0obmFtZSwgc3RyKTsKIH0KIAorLyoq CisgKiBpZ3RfZ2V0X21vZHVsZV9wYXJhbV9pbnQ6CisgKiBAbmFtZTogaTkxNS5rbyBwYXJhbWV0 ZXIgbmFtZQorICogQHZhbDogaTkxNS5rbyBwYXJhbWV0ZXIgdmFsdWUKKyAqIFJldHVybnM6IDAg aW4gc3VjY2VzcworICoKKyAqIFRoaXMgaXMgYSB3cmFwcGVyIGZvciBpZ3RfZ2V0X21vZHVsZV9w YXJhbSgpIHRoYXQgdGFrZXMgYW4gaW50ZWdlciBpbnN0ZWFkIG9mCisgKiBhIHN0cmluZy4gUGxl YXNlIHNlZSBpZ3RfZ2V0X21vZHVsZV9wYXJhbSgpLgorICovCitpbnQgaWd0X2dldF9tb2R1bGVf cGFyYW1faW50KGNvbnN0IGNoYXIgKm5hbWUsIGludCAqdmFsKQoreworCWNoYXIgc3RyW1BBUkFN X1ZBTFVFX01BWF9TWl07CisJbG9uZyBpbnQgcmV0OworCisJcmV0ID0gaWd0X2dldF9tb2R1bGVf cGFyYW0obmFtZSwgc3RyLCBzaXplb2Yoc3RyKSk7CisJaWYgKHJldCkKKwkJcmV0dXJuIHJldDsK KworCXJldCA9IHN0cnRvbChzdHIsIE5VTEwsIDEwKTsKKwkqdmFsID0gcmV0OworCisJcmV0dXJu IDA7Cit9CisKIC8qKgogICogaWd0X3Rlcm1pbmF0ZV9wcm9jZXNzOgogICogQHNpZzogU2lnbmFs IHRvIHNlbmQKZGlmZiAtLWdpdCBhL2xpYi9pZ3RfYXV4LmggYi9saWIvaWd0X2F1eC5oCmluZGV4 IGVmODlmYWE5Li5mYzk0ODI2NSAxMDA2NDQKLS0tIGEvbGliL2lndF9hdXguaAorKysgYi9saWIv aWd0X2F1eC5oCkBAIC0yNzYsNiArMjc2LDggQEAgZG91YmxlIGlndF9zdG9wX3NpZ2xhdGVuY3ko c3RydWN0IGlndF9tZWFuICpyZXN1bHQpOwogCiB2b2lkIGlndF9zZXRfbW9kdWxlX3BhcmFtKGNv bnN0IGNoYXIgKm5hbWUsIGNvbnN0IGNoYXIgKnZhbCk7CiB2b2lkIGlndF9zZXRfbW9kdWxlX3Bh cmFtX2ludChjb25zdCBjaGFyICpuYW1lLCBpbnQgdmFsKTsKK2ludCBpZ3RfZ2V0X21vZHVsZV9w YXJhbShjb25zdCBjaGFyICpuYW1lLCBjaGFyICp2YWwsIHNpemVfdCB2YWxfbGVuKTsKK2ludCBp Z3RfZ2V0X21vZHVsZV9wYXJhbV9pbnQoY29uc3QgY2hhciAqbmFtZSwgaW50ICp2YWwpOwogCiBp bnQgaWd0X3Rlcm1pbmF0ZV9wcm9jZXNzKGludCBzaWcsIGNvbnN0IGNoYXIgKmNvbW0pOwogdm9p ZCBpZ3RfbHNvZihjb25zdCBjaGFyICpkcGF0aCk7CmRpZmYgLS1naXQgYS9saWIvaWd0X2NvcmUu aCBiL2xpYi9pZ3RfY29yZS5oCmluZGV4IGI4MGUxNzAyLi41OWNiYWIyMSAxMDA2NDQKLS0tIGEv bGliL2lndF9jb3JlLmgKKysrIGIvbGliL2lndF9jb3JlLmgKQEAgLTMzNyw2ICszMzcsMjEgQEAg c3RhdGljIGlubGluZSB2b2lkIGlndF9pZ25vcmVfd2Fybihib29sIHZhbHVlKQogCQlfX2lndF9m YWlsX2Fzc2VydChJR1RfTE9HX0RPTUFJTiwgX19GSUxFX18sIF9fTElORV9fLCBfX2Z1bmNfXywg I2V4cHIgLCBOVUxMKTsgXAogCX0gd2hpbGUgKDApCiAKKy8qKgorICogaWd0X2Fzc2VydF9yZXR1 cm46CisgKiBAZXhwcjogY29uZGl0aW9uIHRvIHRlc3QKKyAqIEByZXQ6IHJldHVybnMgdmFsdWUg aWYgY29uZGl0aW9uIGlzIG5vdCBtZXQKKyAqCisgKiBGYWlscyAoc3ViLSl0ZXN0IGlmIHRoZSBj b25kaXRpb24gaXMgbm90IG1ldC4KKyAqCisgKiBTaG91bGQgYmUgdXNlZCBldmVyeXdoZXJlIHdo ZXJlIGEgdGVzdCBjaGVja3MgcmVzdWx0cy4KKyAqLworI2RlZmluZSBpZ3RfYXNzZXJ0X3JldHVy bihleHByLCByZXQpIFwKKwlpZiAoIShleHByKSkgeyBcCisJCV9faWd0X2ZhaWxfYXNzZXJ0KElH VF9MT0dfRE9NQUlOLCBfX0ZJTEVfXywgX19MSU5FX18sIF9fZnVuY19fLCAjZXhwciAsIE5VTEwp OyBcCisJCXJldHVybiByZXQ7IFwKKwl9CisKIC8qKgogICogaWd0X2Fzc2VydF9mOgogICogQGV4 cHI6IGNvbmRpdGlvbiB0byB0ZXN0CkBAIC0zNTQsNiArMzY5LDI1IEBAIHN0YXRpYyBpbmxpbmUg dm9pZCBpZ3RfaWdub3JlX3dhcm4oYm9vbCB2YWx1ZSkKIAkJX19pZ3RfZmFpbF9hc3NlcnQoSUdU X0xPR19ET01BSU4sIF9fRklMRV9fLCBfX0xJTkVfXywgX19mdW5jX18sICNleHByICwgZik7IFwK IAl9IHdoaWxlICgwKQogCisvKioKKyAqIGlndF9hc3NlcnRfcmV0dXJuX2Y6CisgKiBAZXhwcjog Y29uZGl0aW9uIHRvIHRlc3QKKyAqIEByZXQ6IHJldHVybnMgdmFsdWUgaWYgY29uZGl0aW9uIGlz IG5vdCBtZXQKKyAqIEAuLi46IGZvcm1hdCBzdHJpbmcgYW5kIG9wdGlvbmFsIGFyZ3VtZW50cwor ICoKKyAqIEZhaWxzIChzdWItKXRlc3QgaWYgdGhlIGNvbmRpdGlvbiBpcyBub3QgbWV0LgorICoK KyAqIFNob3VsZCBiZSB1c2VkIGV2ZXJ5d2hlcmUgd2hlcmUgYSB0ZXN0IGNoZWNrcyByZXN1bHRz LgorICoKKyAqIEluIGFkZGl0aW9uIHRvIHRoZSBwbGFpbiBpZ3RfYXNzZXJ0KCkgaGVscGVyIHRo aXMgYWxsb3dzIHRvIHByaW50IGFkZGl0aW9uYWwKKyAqIGluZm9ybWF0aW9uIHRvIGhlbHAgZGVi dWdnaW5nIHRlc3QgZmFpbHVyZXMuCisgKi8KKyNkZWZpbmUgaWd0X2Fzc2VydF9yZXR1cm5fZihl eHByLCByZXQsIGYuLi4pIFwKKwlpZiAoIShleHByKSkgeyBcCisJCV9faWd0X2ZhaWxfYXNzZXJ0 KElHVF9MT0dfRE9NQUlOLCBfX0ZJTEVfXywgX19MSU5FX18sIF9fZnVuY19fLCAjZXhwciAsIGYp OyBcCisJCXJldHVybiByZXQ7IFwKKwl9CisKIC8qKgogICogaWd0X2ZhaWxfb246CiAgKiBAZXhw cjogY29uZGl0aW9uIHRvIHRlc3QKLS0gCjIuMTguMAoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KaWd0LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pZ3QtZGV2Cg==