From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id DB921892E6 for ; Mon, 15 Apr 2019 08:59:43 +0000 (UTC) From: Daniel Mrzyglod Date: Mon, 15 Apr 2019 10:59:33 +0200 Message-Id: <20190415085937.5110-2-daniel.t.mrzyglod@intel.com> In-Reply-To: <20190415085937.5110-1-daniel.t.mrzyglod@intel.com> References: <20190415085937.5110-1-daniel.t.mrzyglod@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v3 1/5] lib/igt_device: add igt_device_get_pci_addr by fd 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: RnJvbTogTWljaGHFgiBXaW5pYXJza2kgPG1pY2hhbC53aW5pYXJza2lAaW50ZWwuY29tPgoKVGhp cyBmdW5jdGlvbiBnZXQgdXMgcGNpIGFkZHJlc3MgYmFzZWQgYnkgZmQuCkl0IGFsbG93cyB1cyB0 byBtYWtlIHRoaW5ncyBhIGxpdHRsZSBiaXQgbW9yZSBnZW5lcmljLgpBbHNvLCB3ZSBub3cgcmVx dWlyZSBmZCByYXRoZXIgdGhhbiBkb2luZyBndWVzc3dvcmsgd2hlbiBpdCBjb21lcyB0byBwY2kg YWRkcmVzcy4KClNpZ25lZC1vZmYtYnk6IE1pY2hhxYIgV2luaWFyc2tpIDxtaWNoYWwud2luaWFy c2tpQGludGVsLmNvbT4KQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVr PgpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgTXJ6eWdsb2QgPGRhbmllbC50Lm1yenlnbG9kQGludGVs LmNvbT4KLS0tCiBsaWIvaWd0X2RldmljZS5jIHwgMTIyICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrCiBsaWIvaWd0X2RldmljZS5oIHwgICAyICsKIDIgZmls ZXMgY2hhbmdlZCwgMTI0IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9saWIvaWd0X2Rldmlj ZS5jIGIvbGliL2lndF9kZXZpY2UuYwppbmRleCAwOGYzOWM4Yi4uZjNkMmE5ZjUgMTAwNjQ0Ci0t LSBhL2xpYi9pZ3RfZGV2aWNlLmMKKysrIGIvbGliL2lndF9kZXZpY2UuYwpAQCAtMjEsMTEgKzIx LDE0IEBACiAgKiBJTiBUSEUgU09GVFdBUkUuCiAgKgogICovCisjaW5jbHVkZSA8c3lzL3R5cGVz Lmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KIAogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+CiAjaW5jbHVk ZSA8c3lzL3N5c21hY3Jvcy5oPgogI2luY2x1ZGUgImlndC5oIgogI2luY2x1ZGUgImlndF9kZXZp Y2UuaCIKKyNpbmNsdWRlICJpZ3Rfc3lzZnMuaCIKIAogaW50IF9faWd0X2RldmljZV9zZXRfbWFz dGVyKGludCBmZCkKIHsKQEAgLTEwMywzICsxMDYsMTIyIEBAIGludCBpZ3RfZGV2aWNlX2dldF9j YXJkX2luZGV4KGludCBmZCkKIAogCXJldHVybiBtaW5vcihzdC5zdF9yZGV2KTsKIH0KKworI2Rl ZmluZSBJR1RfREVWX1BBVEhfTEVOIDgwCisKK3N0YXRpYyBib29sIGlndF9kZXZpY2VfaXNfcGNp KGludCBmZCkKK3sKKwljaGFyIHBhdGhbSUdUX0RFVl9QQVRIX0xFTl07CisJY2hhciAqc3Vic3lz dGVtOworCWludCBzeXNmczsKKwlpbnQgbGVuOworCisJc3lzZnMgPSBpZ3Rfc3lzZnNfb3Blbihm ZCk7CisJaWYgKHN5c2ZzID09IC0xKQorCQlyZXR1cm4gZmFsc2U7CisKKwlsZW4gPSByZWFkbGlu a2F0KHN5c2ZzLCAiZGV2aWNlL3N1YnN5c3RlbSIsIHBhdGgsIHNpemVvZihwYXRoKSAtIDEpOwor CWlmIChsZW4gPT0gLTEpCisJCXJldHVybiBmYWxzZTsKKwlwYXRoW2xlbl0gPSAnXDAnOworCisJ c3Vic3lzdGVtID0gc3RycmNocihwYXRoLCAnLycpOworCWlmICghc3Vic3lzdGVtKQorCQlyZXR1 cm4gZmFsc2U7CisKKwlyZXR1cm4gc3RyY21wKHN1YnN5c3RlbSwgIi9wY2kiKSA9PSAwOworfQor CitzdHJ1Y3QgaWd0X3BjaV9hZGRyIHsKKwl1bnNpZ25lZCBpbnQgZG9tYWluOworCXVuc2lnbmVk IGludCBidXM7CisJdW5zaWduZWQgaW50IGRldmljZTsKKwl1bnNpZ25lZCBpbnQgZnVuY3Rpb247 Cit9OworCitzdGF0aWMgaW50IGlndF9kZXZpY2VfZ2V0X3BjaV9hZGRyKGludCBmZCwgc3RydWN0 IGlndF9wY2lfYWRkciAqcGNpKQoreworCWNoYXIgcGF0aFtJR1RfREVWX1BBVEhfTEVOXTsKKwlj aGFyICpidWY7CisJaW50IHN5c2ZzOworCWludCBsZW47CisKKwlpZiAoIWlndF9kZXZpY2VfaXNf cGNpKGZkKSkKKwkJcmV0dXJuIC1FTk9ERVY7CisKKwlzeXNmcyA9IGlndF9zeXNmc19vcGVuKGZk KTsKKwlpZiAoc3lzZnMgPT0gLTEpCisJCXJldHVybiAtRU5PRU5UOworCisJbGVuID0gcmVhZGxp bmthdChzeXNmcywgImRldmljZSIsIHBhdGgsIHNpemVvZihwYXRoKSAtIDEpOworCWlmIChsZW4g PT0gLTEpCisJCXJldHVybiAtRU5PRU5UOworCXBhdGhbbGVuXSA9ICdcMCc7CisKKwlidWYgPSBz dHJyY2hyKHBhdGgsICcvJyk7CisJaWYgKCFidWYpCisJCXJldHVybiAtRU5PRU5UOworCisJaWYg KHNzY2FuZihidWYsICIvJTR4OiUyeDolMnguJTJ4IiwKKwkJICAgJnBjaS0+ZG9tYWluLCAmcGNp LT5idXMsCisJCSAgICZwY2ktPmRldmljZSwgJnBjaS0+ZnVuY3Rpb24pICE9IDQpIHsKKwkJaWd0 X3dhcm4oIlVuYWJsZSB0byBleHRyYWN0IFBDSSBkZXZpY2UgYWRkcmVzcyBmcm9tICclcydcbiIs IGJ1Zik7CisJCXJldHVybiAtRU5PRU5UOworCX0KKworCXJldHVybiAwOworfQorCitzdGF0aWMg c3RydWN0IHBjaV9kZXZpY2UgKl9faWd0X2RldmljZV9nZXRfcGNpX2RldmljZShpbnQgZmQpCit7 CisJc3RydWN0IGlndF9wY2lfYWRkciBwY2lfYWRkcjsKKwlzdHJ1Y3QgcGNpX2RldmljZSAqcGNp X2RldjsKKworCWlmIChpZ3RfZGV2aWNlX2dldF9wY2lfYWRkcihmZCwgJnBjaV9hZGRyKSkgewor CQlpZ3Rfd2FybigiVW5hYmxlIHRvIGZpbmQgZGV2aWNlIFBDSSBhZGRyZXNzXG4iKTsKKwkJcmV0 dXJuIE5VTEw7CisJfQorCisJaWYgKHBjaV9zeXN0ZW1faW5pdCgpKSB7CisJCWlndF93YXJuKCJD b3VsZG4ndCBpbml0aWFsaXplIFBDSSBzeXN0ZW1cbiIpOworCQlyZXR1cm4gTlVMTDsKKwl9CisK KwlwY2lfZGV2ID0gcGNpX2RldmljZV9maW5kX2J5X3Nsb3QocGNpX2FkZHIuZG9tYWluLAorCQkJ CQkgIHBjaV9hZGRyLmJ1cywKKwkJCQkJICBwY2lfYWRkci5kZXZpY2UsCisJCQkJCSAgcGNpX2Fk ZHIuZnVuY3Rpb24pOworCWlmICghcGNpX2RldikgeworCQlpZ3Rfd2FybigiQ291bGRuJ3QgZmlu ZCBQQ0kgZGV2aWNlICUwNHg6JTAyeDolMDJ4OiUwMnhcbiIsCisJCQkgcGNpX2FkZHIuZG9tYWlu LCBwY2lfYWRkci5idXMsCisJCQkgcGNpX2FkZHIuZGV2aWNlLCBwY2lfYWRkci5mdW5jdGlvbik7 CisJCXJldHVybiBOVUxMOworCX0KKworCWlmIChwY2lfZGV2aWNlX3Byb2JlKHBjaV9kZXYpKSB7 CisJCWlndF93YXJuKCJDb3VsZG4ndCBwcm9iZSBQQ0kgZGV2aWNlXG4iKTsKKwkJcmV0dXJuIE5V TEw7CisJfQorCisJcmV0dXJuIHBjaV9kZXY7Cit9CisKKy8qKgorICogaWd0X2RldmljZV9nZXRf cGNpX2RldmljZToKKyAqCisgKiBAZmQ6IHRoZSBkZXZpY2UKKyAqCisgKiBMb29rcyB1cCB0aGUg bWFpbiBncmFwaGljcyBwY2kgZGV2aWNlIHVzaW5nIGxpYnBjaWFjY2Vzcy4KKyAqCisgKiBSZXR1 cm5zOgorICogVGhlIHBjaV9kZXZpY2UsIHNraXBzIHRoZSB0ZXN0IG9uIGFueSBmYWlsdXJlcy4K KyAqLworc3RydWN0IHBjaV9kZXZpY2UgKmlndF9kZXZpY2VfZ2V0X3BjaV9kZXZpY2UoaW50IGZk KQoreworCXN0cnVjdCBwY2lfZGV2aWNlICpwY2lfZGV2OworCisJcGNpX2RldiA9IF9faWd0X2Rl dmljZV9nZXRfcGNpX2RldmljZShmZCk7CisJaWd0X3JlcXVpcmUocGNpX2Rldik7CisKKwlyZXR1 cm4gcGNpX2RldjsKK30KZGlmZiAtLWdpdCBhL2xpYi9pZ3RfZGV2aWNlLmggYi9saWIvaWd0X2Rl dmljZS5oCmluZGV4IDlkN2RjMmMzLi44NjBiM2E4YSAxMDA2NDQKLS0tIGEvbGliL2lndF9kZXZp Y2UuaAorKysgYi9saWIvaWd0X2RldmljZS5oCkBAIC0yNSw2ICsyNSw3IEBACiAjaWZuZGVmIF9f SUdUX0RFVklDRV9IX18KICNkZWZpbmUgX19JR1RfREVWSUNFX0hfXwogCisjaW5jbHVkZSA8c3Rk aW50Lmg+CiBpbnQgX19pZ3RfZGV2aWNlX3NldF9tYXN0ZXIoaW50IGZkKTsKIHZvaWQgaWd0X2Rl dmljZV9zZXRfbWFzdGVyKGludCBmZCk7CiAKQEAgLTMyLDUgKzMzLDYgQEAgaW50IF9faWd0X2Rl dmljZV9kcm9wX21hc3RlcihpbnQgZmQpOwogdm9pZCBpZ3RfZGV2aWNlX2Ryb3BfbWFzdGVyKGlu dCBmZCk7CiAKIGludCBpZ3RfZGV2aWNlX2dldF9jYXJkX2luZGV4KGludCBmZCk7CitzdHJ1Y3Qg cGNpX2RldmljZSAqaWd0X2RldmljZV9nZXRfcGNpX2RldmljZShpbnQgZmQpOwogCiAjZW5kaWYg LyogX19JR1RfREVWSUNFX0hfXyAqLwotLSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2lndC1kZXY=