From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2F7E989D9A for ; Tue, 28 May 2019 14:05:21 +0000 (UTC) From: Simon Ser Date: Tue, 28 May 2019 17:05:30 +0300 Message-Id: <20190528140530.4321-2-simon.ser@intel.com> In-Reply-To: <20190528140530.4321-1-simon.ser@intel.com> References: <20190528140530.4321-1-simon.ser@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 2/2] lib/igt_eld: consolidate ELD parsing 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: martin.peres@intel.com List-ID: TWFrZSB0aGUgRUxEIGVudW1lcmF0aW9uIG1vcmUgcm9idXN0LCBhbmQgaW1wbGVtZW50IHByb3Bl ciBwYXJzaW5nIGZvciBFTEQKZmllbGRzLiBUaGlzIHdpbGwgYmVjb21lIHVzZWZ1bCB3aGVuIG90 aGVyIEVMRCBmaWVsZHMgKGZvcm1hdHMsIHNhbXBsZSByYXRlcywKc2FtcGxlIHNpemVzKSB3aWxs IGJlIHBhcnNlZCBhbmQgY2hlY2tlZC4KClNpZ25lZC1vZmYtYnk6IFNpbW9uIFNlciA8c2ltb24u c2VyQGludGVsLmNvbT4KLS0tCiBsaWIvaWd0X2VsZC5jIHwgOTIgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCiBsaWIvaWd0X2VsZC5oIHwgIDUgKysr CiAyIGZpbGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDM2IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2xpYi9pZ3RfZWxkLmMgYi9saWIvaWd0X2VsZC5jCmluZGV4IDhlMGRjYzMwNmU4 NS4uNmRiYzg4NWZmYTIzIDEwMDY0NAotLS0gYS9saWIvaWd0X2VsZC5jCisrKyBiL2xpYi9pZ3Rf ZWxkLmMKQEAgLTMwLDggKzMwLDEyIEBACiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxz dHJpbmcuaD4KIAorI2luY2x1ZGUgImlndF9jb3JlLmgiCiAjaW5jbHVkZSAiaWd0X2VsZC5oIgog CisjZGVmaW5lIEVMRF9QUkVGSVggImVsZCMiCisjZGVmaW5lIEVMRF9ERUxJTSAiIFx0IgorCiAv KioKICAqIEVESUQtTGlrZSBEYXRhIChFTEQpIGlzIG1ldGFkYXRhIHBhcnNlZCBhbmQgZXhwb3Nl ZCBieSBBTFNBIGZvciBIRE1JIGFuZAogICogRGlzcGxheVBvcnQgY29ubmVjdG9ycyBzdXBwb3J0 aW5nIGF1ZGlvLiBUaGlzIGluY2x1ZGVzIHRoZSBtb25pdG9yIG5hbWUgYW5kCkBAIC0zOSwzOSAr NDMsNDcgQEAKICAqIG9uKS4KICAqLwogCi0vKiogZWxkX2VudHJ5X2lzX2lndDogY2hlY2tzIHdo ZXRoZXIgYW4gRUxEIGVudHJ5IGlzIG1hcHBlZCB0byB0aGUgSUdUIEVESUQgKi8KLXN0YXRpYyBi b29sIGVsZF9lbnRyeV9pc19pZ3QoY29uc3QgY2hhciAqcGF0aCkKK3N0YXRpYyBib29sIGVsZF9w YXJzZV9lbnRyeShjb25zdCBjaGFyICpwYXRoLCBzdHJ1Y3QgZWxkX2VudHJ5ICplbGQpCiB7Ci0J RklMRSAqaW47CisJRklMRSAqZjsKIAljaGFyIGJ1ZlsxMDI0XTsKLQl1aW50OF90IGVsZF92YWxp ZCA9IDA7Ci0JdWludDhfdCBtb25fdmFsaWQgPSAwOwotCi0JaW4gPSBmb3BlbihwYXRoLCAiciIp OwotCWlmICghaW4pCi0JCXJldHVybiBmYWxzZTsKKwljaGFyICprZXksICp2YWx1ZTsKKwlzaXpl X3QgbGVuOworCWJvb2wgbW9uaXRvcl9wcmVzZW50OwogCi0JbWVtc2V0KGJ1ZiwgMCwgMTAyNCk7 CisJbWVtc2V0KGVsZCwgMCwgc2l6ZW9mKCplbGQpKTsKIAotCXdoaWxlICgoZmdldHMoYnVmLCAx MDI0LCBpbikpICE9IE5VTEwpIHsKLQkJY2hhciAqbGluZSA9IGJ1ZjsKKwlmID0gZm9wZW4ocGF0 aCwgInIiKTsKKwlpZiAoIWYpIHsKKwkJaWd0X2RlYnVnKCJGYWlsZWQgdG8gb3BlbiBFTEQgZmls ZTogJXNcbiIsIHBhdGgpOworCQlyZXR1cm4gZmFsc2U7CisJfQogCi0JCWlmICghc3RybmNhc2Vj bXAobGluZSwgImVsZF92YWxpZCIsIDkpICYmCi0JCQkJc3Ryc3RyKGxpbmUsICIxIikpIHsKLQkJ CWVsZF92YWxpZCsrOwotCQl9CisJd2hpbGUgKChmZ2V0cyhidWYsIHNpemVvZihidWYpLCBmKSkg IT0gTlVMTCkgeworCQlsZW4gPSBzdHJsZW4oYnVmKTsKKwkJaWYgKGJ1ZltsZW4gLSAxXSA9PSAn XG4nKQorCQkJYnVmW2xlbiAtIDFdID0gJ1wwJzsKKworCQlrZXkgPSBzdHJ0b2soYnVmLCBFTERf REVMSU0pOworCQl2YWx1ZSA9IHN0cnRvayhOVUxMLCBFTERfREVMSU0pOworCisJCWlmIChzdHJj bXAoa2V5LCAibW9uaXRvcl9wcmVzZW50IikgPT0gMCkKKwkJCW1vbml0b3JfcHJlc2VudCA9IHN0 cmNtcCh2YWx1ZSwgIjEiKSA9PSAwOworCQllbHNlIGlmIChzdHJjbXAoa2V5LCAiZWxkX3ZhbGlk IikgPT0gMCkKKwkJCWVsZC0+dmFsaWQgPSBzdHJjbXAodmFsdWUsICIxIikgPT0gMDsKKwkJZWxz ZSBpZiAoc3RyY21wKGtleSwgIm1vbml0b3JfbmFtZSIpID09IDApCisJCQlzbnByaW50ZihlbGQt Pm1vbml0b3JfbmFtZSwgc2l6ZW9mKGVsZC0+bW9uaXRvcl9uYW1lKSwKKwkJCQkgIiVzIiwgdmFs dWUpOworCX0KIAotCQlpZiAoIXN0cm5jYXNlY21wKGxpbmUsICJtb25pdG9yX25hbWUiLCAxMikg JiYKLQkJCQlzdHJzdHIobGluZSwgIklHVCIpKSB7Ci0JCQltb25fdmFsaWQrKzsKLQkJfQorCWlm IChmZXJyb3IoZikgIT0gMCkgeworCQlpZ3RfZGVidWcoIkZhaWxlZCB0byByZWFkIEVMRCBmaWxl OiAlZFxuIiwgZmVycm9yKGYpKTsKKwkJcmV0dXJuIGZhbHNlOwogCX0KIAotCWZjbG9zZShpbik7 Ci0JaWYgKG1vbl92YWxpZCAmJiBlbGRfdmFsaWQpCi0JCXJldHVybiB0cnVlOworCWZjbG9zZShm KTsKIAotCXJldHVybiBmYWxzZTsKKwlyZXR1cm4gbW9uaXRvcl9wcmVzZW50OwogfQogCiAvKiog ZWxkX2hhc19pZ3Q6IGNoZWNrIHdoZXRoZXIgQUxTQSBoYXMgZGV0ZWN0ZWQgdGhlIGF1ZGlvLWNh cGFibGUgSUdUIEVESUQgYnkKQEAgLTc5LDI3ICs5MSwzNSBAQCBzdGF0aWMgYm9vbCBlbGRfZW50 cnlfaXNfaWd0KGNvbnN0IGNoYXIgKnBhdGgpCiBib29sIGVsZF9oYXNfaWd0KHZvaWQpCiB7CiAJ RElSICpkaXI7Ci0Jc3RydWN0IGRpcmVudCAqc25kX2hkYTsKKwlzdHJ1Y3QgZGlyZW50ICpkaXJl bnQ7CiAJaW50IGk7CisJY2hhciBjYXJkWzY0XTsKKwljaGFyIHBhdGhbUEFUSF9NQVhdOworCXN0 cnVjdCBlbGRfZW50cnkgZWxkOwogCiAJZm9yIChpID0gMDsgaSA8IDg7IGkrKykgewotCQljaGFy IGNhcmRzWzEyOF07Ci0KLQkJc25wcmludGYoY2FyZHMsIHNpemVvZihjYXJkcyksICIvcHJvYy9h c291bmQvY2FyZCVkIiwgaSk7Ci0JCWRpciA9IG9wZW5kaXIoY2FyZHMpOworCQlzbnByaW50Zihj YXJkLCBzaXplb2YoY2FyZCksICIvcHJvYy9hc291bmQvY2FyZCVkIiwgaSk7CisJCWRpciA9IG9w ZW5kaXIoY2FyZCk7CiAJCWlmICghZGlyKQogCQkJY29udGludWU7CiAKLQkJd2hpbGUgKChzbmRf aGRhID0gcmVhZGRpcihkaXIpKSkgewotCQkJY2hhciBmcGF0aFtQQVRIX01BWF07CisJCXdoaWxl ICgoZGlyZW50ID0gcmVhZGRpcihkaXIpKSkgeworCQkJaWYgKHN0cm5jbXAoZGlyZW50LT5kX25h bWUsIEVMRF9QUkVGSVgsCisJCQkJICAgIHN0cmxlbihFTERfUFJFRklYKSkgIT0gMCkKKwkJCQlj b250aW51ZTsKKworCQkJc25wcmludGYocGF0aCwgc2l6ZW9mKHBhdGgpLCAiJXMvJXMiLCBjYXJk LAorCQkJCSBkaXJlbnQtPmRfbmFtZSk7CisJCQlpZiAoIWVsZF9wYXJzZV9lbnRyeShwYXRoLCAm ZWxkKSkgeworCQkJCWNvbnRpbnVlOworCQkJfQogCi0JCQlpZiAoKnNuZF9oZGEtPmRfbmFtZSA9 PSAnLicgfHwKLQkJCSAgICBzdHJzdHIoc25kX2hkYS0+ZF9uYW1lLCAiZWxkIikgPT0gMCkKKwkJ CWlmICghZWxkLnZhbGlkKSB7CisJCQkJaWd0X2RlYnVnKCJTa2lwcGluZyBpbnZhbGlkIEVMRDog JXNcbiIsIHBhdGgpOwogCQkJCWNvbnRpbnVlOworCQkJfQogCi0JCQlzbnByaW50ZihmcGF0aCwg c2l6ZW9mKGZwYXRoKSwgIiVzLyVzIiwgY2FyZHMsCi0JCQkJIHNuZF9oZGEtPmRfbmFtZSk7Ci0J CQlpZiAoZWxkX2VudHJ5X2lzX2lndChmcGF0aCkpIHsKKwkJCWlmIChzdHJjbXAoZWxkLm1vbml0 b3JfbmFtZSwgIklHVCIpID09IDApIHsKIAkJCQljbG9zZWRpcihkaXIpOwogCQkJCXJldHVybiB0 cnVlOwogCQkJfQpkaWZmIC0tZ2l0IGEvbGliL2lndF9lbGQuaCBiL2xpYi9pZ3RfZWxkLmgKaW5k ZXggODQ0YjgwMjdkMDQ3Li5lYTA5MDQwZTgzMjUgMTAwNjQ0Ci0tLSBhL2xpYi9pZ3RfZWxkLmgK KysrIGIvbGliL2lndF9lbGQuaApAQCAtMzAsNiArMzAsMTEgQEAKIAogI2luY2x1ZGUgPHN0ZGJv b2wuaD4KIAorc3RydWN0IGVsZF9lbnRyeSB7CisJYm9vbCB2YWxpZDsKKwljaGFyIG1vbml0b3Jf bmFtZVsxNl07Cit9OworCiBib29sIGVsZF9oYXNfaWd0KHZvaWQpOwogCiAjZW5kaWYKLS0gCjIu MjEuMAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KaWd0 LWRldiBtYWlsaW5nIGxpc3QKaWd0LWRldkBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pZ3QtZGV2