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 57F2C89237 for ; Mon, 18 Mar 2019 23:44:29 +0000 (UTC) From: =?UTF-8?q?Jos=C3=A9=20Roberto=20de=20Souza?= Date: Mon, 18 Mar 2019 16:44:24 -0700 Message-Id: <20190318234424.14487-1-jose.souza@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH v2 i-g-t] tests/chamelium: Add test for hotplug workaround 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: SXQgaXMga25vdyB0aGF0IHNvbWUgdW5wb3dlcmVkIHR5cGUtYyBkb25nbGVzIGNhbiB0YWtlIHNv bWUgdGltZSB0bwpib290IGFuZCBiZSByZXNwb25zaWJsZSBpbiB0aGUgRERDL2F1eCB0cmFuc2Fj dGlvbiBsaW5lcyBzbyBhCndvcmthcm91bmQgd2FzIGltcGxlbWVudGVkIGluIGtlcm5lbChkcm0v aTkxNTogRW5hYmxlIGhvdHBsdWcgcmV0cnkpCnRvIGZpeCBpdCBidXQgaXMgcG9zc2libGUgdGhh dCB0aGlzIGNvdWxkIGhhcHBlbiB0byBvdGhlciBEUCBzaW5rcy4KClNvIHRoaXMgdGVzdCB3aWxs IHRyeSB0byBzaW11bGF0ZSB0aGUgc2NlbmVhcmlvIGRlc2NyaWJlZCBhYm92ZSwgaXQKd2lsbCBk aXNhYmxlIHRoZSBEREMgbGluZXMgYW5kIHBsdWcgdGhlIGNvbm5lY3RvciwgdGhlIGhvdHBsdWcg c2hvdWxkCmZhaWwgYW5kIHRoZW4gZW5hYmxpbmcgdGhlIEREQyBsaW5lcyBrZXJuZWwgc2hvdWxk IHJlcG9ydCB0aGUKY29ubmVjdG9yIGFzIGNvbm5lY3RlZC4KClRoZSB3b3JrYXJvdW5kIHdpbGwg cmVwcm9iZSBjb25uZWN0b3IgYWZ0ZXIgMSBzZWNvbmQgYWZ0ZXIga2VybmVsCmdpdmVzIHVwIG9u IHRoZSBmaXJzdCB0cnkgdG8gcHJvYmUgdGhlIGNvbm5lY3Rvciwgc28gdGhhdCBpcyB3aHkgYQpz bWFsbGVyIHRpbWVvdXQgdG8gZGV0ZWN0IGhvdHBsdWcgd2FzIG5lZWRlZC4KCnYyOgotIFJlbW92 aW5nIGlndF9hc3NlcnQoKSBmcm9tIHRoZSBpZ3RfaG90cGx1Z19kZXRlY3RlZCgpIHdoZW4gY2hl Y2tpbmcKaWYgZGV2aWNlIGNhbiBhY3Qgb24gaG90cGx1ZyBmYXN0IGVub3VnaAotIENoZWNraW5n IHRpbWUgc3BlbmQgYmV0d2VlbiBob3RwbHVnIGFuZCB0aGUgZW5hYmxpbmcgb2YgRERDIGxpbmVz CihJbXJlKQoKQ2M6IEltcmUgRGVhayA8aW1yZS5kZWFrQGludGVsLmNvbT4KU2lnbmVkLW9mZi1i eTogSm9zw6kgUm9iZXJ0byBkZSBTb3V6YSA8am9zZS5zb3V6YUBpbnRlbC5jb20+Ci0tLQogdGVz dHMva21zX2NoYW1lbGl1bS5jIHwgMTEwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDExMCBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0 IGEvdGVzdHMva21zX2NoYW1lbGl1bS5jIGIvdGVzdHMva21zX2NoYW1lbGl1bS5jCmluZGV4IGMy MDkwMDM3Li5jNzk1MTZlZiAxMDA2NDQKLS0tIGEvdGVzdHMva21zX2NoYW1lbGl1bS5jCisrKyBi L3Rlc3RzL2ttc19jaGFtZWxpdW0uYwpAQCAtNDUsNiArNDUsOCBAQCB0eXBlZGVmIHN0cnVjdCB7 CiAKICNkZWZpbmUgSE9UUExVR19USU1FT1VUIDIwIC8qIHNlY29uZHMgKi8KIAorI2RlZmluZSBG QVNUX0hPVFBMVUdfVElNRU9VVCAoMSkgLyogc2Vjb25kICovCisKICNkZWZpbmUgSFBEX1NUT1JN X1BVTFNFX0lOVEVSVkFMX0RQIDEwMCAvKiBtcyAqLwogI2RlZmluZSBIUERfU1RPUk1fUFVMU0Vf SU5URVJWQUxfSERNSSAyMDAgLyogbXMgKi8KIApAQCAtMTA3LDYgKzEwOSwyMSBAQCByZXByb2Jl X2Nvbm5lY3RvcihkYXRhX3QgKmRhdGEsIHN0cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCkKIAly ZXR1cm4gc3RhdHVzOwogfQogCitzdGF0aWMgZHJtTW9kZUNvbm5lY3Rpb24KK2Nvbm5lY3Rvcl9z dGF0dXNfZ2V0KGRhdGFfdCAqZGF0YSwgc3RydWN0IGNoYW1lbGl1bV9wb3J0ICpwb3J0KQorewor CWRybU1vZGVDb25uZWN0b3IgKmNvbm5lY3RvcjsKKwlkcm1Nb2RlQ29ubmVjdGlvbiBzdGF0dXM7 CisKKwlpZ3RfZGVidWcoIkdldHRpbmcgY29ubmVjdG9yIHN0YXRlICVzLi4uXG4iLCBjaGFtZWxp dW1fcG9ydF9nZXRfbmFtZShwb3J0KSk7CisJY29ubmVjdG9yID0gY2hhbWVsaXVtX3BvcnRfZ2V0 X2Nvbm5lY3RvcihkYXRhLT5jaGFtZWxpdW0sIHBvcnQsIGZhbHNlKTsKKwlpZ3RfYXNzZXJ0KGNv bm5lY3Rvcik7CisJc3RhdHVzID0gY29ubmVjdG9yLT5jb25uZWN0aW9uOworCisJZHJtTW9kZUZy ZWVDb25uZWN0b3IoY29ubmVjdG9yKTsKKwlyZXR1cm4gc3RhdHVzOworfQorCiBzdGF0aWMgdm9p ZAogd2FpdF9mb3JfY29ubmVjdG9yKGRhdGFfdCAqZGF0YSwgc3RydWN0IGNoYW1lbGl1bV9wb3J0 ICpwb3J0LAogCQkgICBkcm1Nb2RlQ29ubmVjdGlvbiBzdGF0dXMpCkBAIC0yNTMsNiArMjcwLDk2 IEBAIHRlc3RfYmFzaWNfaG90cGx1ZyhkYXRhX3QgKmRhdGEsIHN0cnVjdCBjaGFtZWxpdW1fcG9y dCAqcG9ydCwgaW50IHRvZ2dsZV9jb3VudCkKIAlpZ3RfaHBkX3N0b3JtX3Jlc2V0KGRhdGEtPmRy bV9mZCk7CiB9CiAKK3N0YXRpYyB2b2lkCit0ZXN0X2Zhc3RfaG90cGx1Z19oYW5kbGluZyhkYXRh X3QgKmRhdGEsIHN0cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCwKKwkJCSAgIHN0cnVjdCB1ZGV2 X21vbml0b3IgKm1vbikKK3sKKwlkcm1Nb2RlQ29ubmVjdGlvbiBzdGF0dXM7CisKKwlpZ3RfZmx1 c2hfaG90cGx1Z3MobW9uKTsKKwljaGFtZWxpdW1fcGx1ZyhkYXRhLT5jaGFtZWxpdW0sIHBvcnQp OworCWlndF9ob3RwbHVnX2RldGVjdGVkKG1vbiwgRkFTVF9IT1RQTFVHX1RJTUVPVVQpOworCXN0 YXR1cyA9IGNvbm5lY3Rvcl9zdGF0dXNfZ2V0KGRhdGEsIHBvcnQpOworCWlndF9yZXF1aXJlKHN0 YXR1cyA9PSBEUk1fTU9ERV9DT05ORUNURUQpOworCisJaWd0X2ZsdXNoX2hvdHBsdWdzKG1vbik7 CisJY2hhbWVsaXVtX3VucGx1ZyhkYXRhLT5jaGFtZWxpdW0sIHBvcnQpOworCWlndF9ob3RwbHVn X2RldGVjdGVkKG1vbiwgRkFTVF9IT1RQTFVHX1RJTUVPVVQpOworCXN0YXR1cyA9IGNvbm5lY3Rv cl9zdGF0dXNfZ2V0KGRhdGEsIHBvcnQpOworCWlndF9yZXF1aXJlKHN0YXR1cyA9PSBEUk1fTU9E RV9ESVNDT05ORUNURUQpOworfQorCisvKgorICogVGVzdCBrZXJuZWwgd29ya2Fyb3VuZCBmb3Ig c2lua3MgdGhhdCB0YWtlcyBzb21lIHRpbWUgdG8gaGF2ZSB0aGUgRERDL2F1eAorICogY2hhbm5l bCByZXNwb25zaXZlIGFmdGVyIHRoZSBob3RwbHVnCisgKi8KK3N0YXRpYyB2b2lkCit0ZXN0X2xh dGVfYXV4X3dhKGRhdGFfdCAqZGF0YSwgc3RydWN0IGNoYW1lbGl1bV9wb3J0ICpwb3J0KQorewor CXN0cnVjdCB1ZGV2X21vbml0b3IgKm1vbiA9IGlndF93YXRjaF9ob3RwbHVnKCk7CisJZHJtTW9k ZUNvbm5lY3Rpb24gc3RhdHVzOworCXN0cnVjdCB0aW1lc3BlYyBiZWdpbjsKKwl1aW50NjRfdCBk ZWx0YV9uc2VjOworCXVpbnQ4X3QgcmV0cmllcyA9IDA7CisKKwkvKiBSZXNldCB3aWxsIHVucGx1 ZyBhbGwgY29ubmVjdG9ycyAqLworCXJlc2V0X3N0YXRlKGRhdGEsIE5VTEwpOworCisJLyogQ2hl Y2sgaWYgaXQgZGV2aWNlIGNhbiBhY3Qgb24gaG90cGx1Z3MgZmFzdCBlbm91Z2ggZm9yIHRoaXMg dGVzdCAqLworCXRlc3RfZmFzdF9ob3RwbHVnX2hhbmRsaW5nKGRhdGEsIHBvcnQsIG1vbik7CisK K3JldHJ5OgorCS8qIEl0IGlzIGZhc3QgZW5vdWdoLCBsZXRzIGRpc2FibGUgdGhlIEREQyBsaW5l cyBhbmQgcGx1ZyBhZ2FpbiAqLworCWlndF9mbHVzaF9ob3RwbHVncyhtb24pOworCWNoYW1lbGl1 bV9wb3J0X3NldF9kZGNfc3RhdGUoZGF0YS0+Y2hhbWVsaXVtLCBwb3J0LCBmYWxzZSk7CisJY2hh bWVsaXVtX3BsdWcoZGF0YS0+Y2hhbWVsaXVtLCBwb3J0KTsKKwlpZ3RfZ2V0dGltZSgmYmVnaW4p OworCWlndF9hc3NlcnQoIWNoYW1lbGl1bV9wb3J0X2dldF9kZGNfc3RhdGUoZGF0YS0+Y2hhbWVs aXVtLCBwb3J0KSk7CisKKwkvKgorCSAqIEdpdmUgc29tZSB0aW1lIHRvIGtlcm5lbCB0cnkgdG8g cHJvY2VzcyBob3RwbHVnIGJ1dCBpdCBzaG91bGQgZmFpbAorCSAqLworCWlndF9ob3RwbHVnX2Rl dGVjdGVkKG1vbiwgRkFTVF9IT1RQTFVHX1RJTUVPVVQpOworCXN0YXR1cyA9IGNvbm5lY3Rvcl9z dGF0dXNfZ2V0KGRhdGEsIHBvcnQpOworCWlndF9hc3NlcnQoc3RhdHVzID09IERSTV9NT0RFX0RJ U0NPTk5FQ1RFRCk7CisKKwkvKgorCSAqIEVuYWJsZSB0aGUgRERDIGxpbmUgYW5kIHRoZSBrZXJu ZWwgd29ya2Fyb3VuZCBzaG91bGQgcmVwcm9iZSBhbmQKKwkgKiByZXBvcnQgYXMgY29ubmVjdGVk CisJICovCisJY2hhbWVsaXVtX3BvcnRfc2V0X2RkY19zdGF0ZShkYXRhLT5jaGFtZWxpdW0sIHBv cnQsIHRydWUpOworCisJLyoKKwkgKiBpOTE1IHVzZXMgdGhlIG1heGltdW0gdGltZW91dCB0aGF0 IGVhY2ggcGxhdGZvcm0gc3VwcG9ydCB0byBkbyBhdXgKKwkgKiB0cmFuc2FjdGlvbnMsIHRoaXMg dGltZW91dCBjYW4gdmFyeSBmcm9tIDEuNm1zZWMgdG8gNG1zZWMgYW5kIGk5MTUKKwkgKiBkcml2 ZXIgdHJpZXMgdGhlIHNhbWUgYXV4IHRyYW5zYWN0aW9uIHVwIHRvIDUgdGltZXMgYmVmb3JlIHJl dHVybiBhCisJICogZXJyb3IgYW5kIGFkZGl0aW9uYWxseSBkcm0gaGVscGVycyB3aWxsIGFzayBk cml2ZXIgdG8gZG8gdGhlIHNhbWUgYXV4CisJICogdHJhbnNhY3Rpb24gdXAgdG8gMzIgdGltZXMs IHNvIGl0IHdpbGwgdGFrZSBhdCBsZWFzdCAyNTZtc2VjfjY0MG1zZWMKKwkgKiB0byBrZXJuZWwg Z2l2ZSB1cCBvbiBhIHNpbmsgZGV0ZWN0aW9uLgorCSAqCisJICogVGhlIHdvcmthcm91bmQgd2ls bCBiZSBzY2hlZHVsZSB0byBydW4gMSBzZWNvbmQgYWZ0ZXIgdGhlIGRyaXZlcgorCSAqIGZhaWxl ZCB0byBwcm9iZSB0aGUgY29ubmVjdG9yIHRoYXQgc2lnbmFsZWQgYSBob3RwbHVnLCBzbyBpZiB0 aGlzCisJICogdGVzdCBpcyBwcmVlbXB0IGl0IGNvdWxkIGZhaWwgYmVjYXVzZSB0aGUgd29ya2Fy b3VuZCBpcyBhbHJlYWR5CisJICogcnVubmluZyB3aXRoIHRoZSBEREMgbGluZXMgc3RpbGwgb2Zm LCBzbyBsZXRzIHRyeSBhZ2FpbiB1bnRpbCB0aGUKKwkgKiB0aW1lIHJlcXVpcmVtZW50IGlzIG1l ZXQuCisJICovCisJZGVsdGFfbnNlYyA9IGlndF9uc2VjX2VsYXBzZWQoJmJlZ2luKTsKKwlpZiAo ZGVsdGFfbnNlYyA+IChOU0VDX1BFUl9TRUMgKiAxLjNmKSkgeworCQlpZ3RfYXNzZXJ0X2YocmV0 cmllcyAhPSA1LCAiVGVzdCBwcmVlbXB0ZWQgdG9vIG1hbnkgdGltZXMiKTsKKwkJcmV0cmllcysr OworCisJCS8qIFdhaXQgZm9yIDEgbW9yZSBzZWMgdG8gbWFrZSBzdXJlIHRoZSB3b3JrYXJvdW5k IGZpbmlzaGVkICovCisJCWNoYW1lbGl1bV91bnBsdWcoZGF0YS0+Y2hhbWVsaXVtLCBwb3J0KTsK KwkJaWd0X2hvdHBsdWdfZGV0ZWN0ZWQobW9uLCBGQVNUX0hPVFBMVUdfVElNRU9VVCk7CisJCWdv dG8gcmV0cnk7CisJfQorCisJaWd0X2Fzc2VydChjaGFtZWxpdW1fcG9ydF9nZXRfZGRjX3N0YXRl KGRhdGEtPmNoYW1lbGl1bSwgcG9ydCkpOworCWlndF9hc3NlcnQoaWd0X2hvdHBsdWdfZGV0ZWN0 ZWQobW9uLCBGQVNUX0hPVFBMVUdfVElNRU9VVCkpOworCXN0YXR1cyA9IGNvbm5lY3Rvcl9zdGF0 dXNfZ2V0KGRhdGEsIHBvcnQpOworCWlndF9hc3NlcnQoc3RhdHVzID09IERSTV9NT0RFX0NPTk5F Q1RFRCk7Cit9CisKIHN0YXRpYyB2b2lkCiB0ZXN0X2VkaWRfcmVhZChkYXRhX3QgKmRhdGEsIHN0 cnVjdCBjaGFtZWxpdW1fcG9ydCAqcG9ydCwKIAkgICAgICAgaW50IGVkaWRfaWQsIGNvbnN0IHVu c2lnbmVkIGNoYXIgKmVkaWQpCkBAIC0xMzA4LDYgKzE0MTUsOSBAQCBpZ3RfbWFpbgogCiAJCWNv bm5lY3Rvcl9zdWJ0ZXN0KCJkcC1mcmFtZS1kdW1wIiwgRGlzcGxheVBvcnQpCiAJCQl0ZXN0X2Rp c3BsYXlfZnJhbWVfZHVtcCgmZGF0YSwgcG9ydCk7CisKKwkJY29ubmVjdG9yX3N1YnRlc3QoImRw LWxhdGUtYXV4LXdhIiwgRGlzcGxheVBvcnQpCisJCQl0ZXN0X2xhdGVfYXV4X3dhKCZkYXRhLCBw b3J0KTsKIAl9CiAKIAlpZ3Rfc3VidGVzdF9ncm91cCB7Ci0tIAoyLjIxLjAKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0 CmlndC1kZXZAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaWd0LWRldg==