From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhenyu Wang Subject: [RFC PATCH v2 1/2] drm/i915: Export current required functions for GVT Date: Mon, 26 Nov 2018 14:05:53 +0800 Message-ID: <20181126060554.16481-2-zhenyuw@linux.intel.com> References: <20181126060554.16481-1-zhenyuw@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20181126060554.16481-1-zhenyuw@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: joonas.lahtinen@linux.intel.com Cc: intel-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org VGhpcyB0cnlzIHRvIGV4cG9ydCBhbGwgcmVxdWlyZWQgaTkxNSBmdW5jdGlvbnMgZm9yIEdWVC4K ClNpZ25lZC1vZmYtYnk6IFpoZW55dSBXYW5nIDx6aGVueXV3QGxpbnV4LmludGVsLmNvbT4KLS0t CiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jICAgICAgICAgICB8IDExICsrKysrKysr KysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMgICB8ICAyICsrCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9kbWFidWYuYyAgICB8ICAxICsKIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2ZlbmNlX3JlZy5jIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9yZXF1ZXN0LmMgICAgICAgfCAgMyArKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf dm1hLmMgICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Jpbmdi dWZmZXIuYyAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcnVudGltZV9wbS5j ICAgfCAgMiArKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMgICAgICAgfCAg MyArKysKIDEwIGZpbGVzIGNoYW5nZWQsIDI4IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW0uYwppbmRleCBjNTViMWY3NWM5ODAuLjlhZjZlOTgxMGY4NSAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jCkBAIC03MDEsNiArNzAxLDcgQEAgdm9pZCAqaTkxNV9nZW1fb2JqZWN0X2FsbG9j KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKIAlyZXR1cm4ga21lbV9jYWNo ZV96YWxsb2MoZGV2X3ByaXYtPm9iamVjdHMsIEdGUF9LRVJORUwpOwogfQorRVhQT1JUX1NZTUJP TF9HUEwoaTkxNV9nZW1fb2JqZWN0X2FsbG9jKTsKIAogdm9pZCBpOTE1X2dlbV9vYmplY3RfZnJl ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogewpAQCAtMTAyOSw2ICsxMDMwLDcg QEAgaW50IGk5MTVfZ2VtX29ial9wcmVwYXJlX3NobWVtX3dyaXRlKHN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmosCiAJaTkxNV9nZW1fb2JqZWN0X3VucGluX3BhZ2VzKG9iaik7CiAJcmV0 dXJuIHJldDsKIH0KK0VYUE9SVF9TWU1CT0xfR1BMKGk5MTVfZ2VtX29ial9wcmVwYXJlX3NobWVt X3dyaXRlKTsKIAogc3RhdGljIHZvaWQKIHNobWVtX2NsZmx1c2hfc3dpenpsZWRfcmFuZ2UoY2hh ciAqYWRkciwgdW5zaWduZWQgbG9uZyBsZW5ndGgsCkBAIC0yNzY0LDYgKzI3NjYsNyBAQCB2b2lk IF9faTkxNV9nZW1fb2JqZWN0X3NldF9wYWdlcyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAq b2JqLAogCWxpc3RfYWRkKCZvYmotPm1tLmxpbmssICZpOTE1LT5tbS51bmJvdW5kX2xpc3QpOwog CXNwaW5fdW5sb2NrKCZpOTE1LT5tbS5vYmpfbG9jayk7CiB9CitFWFBPUlRfU1lNQk9MX0dQTChf X2k5MTVfZ2VtX29iamVjdF9zZXRfcGFnZXMpOwogCiBzdGF0aWMgaW50IF9fX19pOTE1X2dlbV9v YmplY3RfZ2V0X3BhZ2VzKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiB7CkBAIC0y OTMwLDYgKzI5MzMsNyBAQCB2b2lkICppOTE1X2dlbV9vYmplY3RfcGluX21hcChzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCXB0ciA9IEVSUl9QVFIocmV0KTsKIAlnb3RvIG91dF91 bmxvY2s7CiB9CitFWFBPUlRfU1lNQk9MX0dQTChpOTE1X2dlbV9vYmplY3RfcGluX21hcCk7CiAK IHN0YXRpYyBpbnQKIGk5MTVfZ2VtX29iamVjdF9wd3JpdGVfZ3R0KHN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmosCkBAIC00MDQxLDYgKzQwNDUsNyBAQCBpOTE1X2dlbV9vYmplY3Rfc2V0 X3RvX2d0dF9kb21haW4oc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwgYm9vbCB3cml0 ZSkKIAlpOTE1X2dlbV9vYmplY3RfdW5waW5fcGFnZXMob2JqKTsKIAlyZXR1cm4gMDsKIH0KK0VY UE9SVF9TWU1CT0xfR1BMKGk5MTVfZ2VtX29iamVjdF9zZXRfdG9fZ3R0X2RvbWFpbik7CiAKIC8q KgogICogQ2hhbmdlcyB0aGUgY2FjaGUtbGV2ZWwgb2YgYW4gb2JqZWN0IGFjcm9zcyBhbGwgVk1B LgpAQCAtNDQwNiw2ICs0NDExLDcgQEAgaTkxNV9nZW1fb2JqZWN0X3NldF90b19jcHVfZG9tYWlu KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIGJvb2wgd3JpdGUpCiAKIAlyZXR1cm4g MDsKIH0KK0VYUE9SVF9TWU1CT0xfR1BMKGk5MTVfZ2VtX29iamVjdF9zZXRfdG9fY3B1X2RvbWFp bik7CiAKIC8qIFRocm90dGxlIG91ciByZW5kZXJpbmcgYnkgd2FpdGluZyB1bnRpbCB0aGUgcmlu ZyBoYXMgY29tcGxldGVkIG91ciByZXF1ZXN0cwogICogZW1pdHRlZCBvdmVyIDIwIG1zZWMgYWdv LgpAQCAtNDUzNSw2ICs0NTQxLDcgQEAgaTkxNV9nZW1fb2JqZWN0X2dndHRfcGluKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAKIAlyZXR1cm4gdm1hOwogfQorRVhQT1JUX1NZTUJP TF9HUEwoaTkxNV9nZW1fb2JqZWN0X2dndHRfcGluKTsKIAogc3RhdGljIF9fYWx3YXlzX2lubGlu ZSB1bnNpZ25lZCBpbnQgX19idXN5X3JlYWRfZmxhZyh1bnNpZ25lZCBpbnQgaWQpCiB7CkBAIC00 NzU4LDYgKzQ3NjUsNyBAQCB2b2lkIGk5MTVfZ2VtX29iamVjdF9pbml0KHN0cnVjdCBkcm1faTkx NV9nZW1fb2JqZWN0ICpvYmosCiAKIAlpOTE1X2dlbV9pbmZvX2FkZF9vYmoodG9faTkxNShvYmot PmJhc2UuZGV2KSwgb2JqLT5iYXNlLnNpemUpOwogfQorRVhQT1JUX1NZTUJPTF9HUEwoaTkxNV9n ZW1fb2JqZWN0X2luaXQpOwogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3Rfb3BzIGk5MTVfZ2VtX29iamVjdF9vcHMgPSB7CiAJLmZsYWdzID0gSTkxNV9HRU1fT0JKRUNU X0hBU19TVFJVQ1RfUEFHRSB8CkBAIC00ODY0LDYgKzQ4NzIsNyBAQCBpOTE1X2dlbV9vYmplY3Rf Y3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwgdTY0IHNpemUpCiAJaTkx NV9nZW1fb2JqZWN0X2ZyZWUob2JqKTsKIAlyZXR1cm4gRVJSX1BUUihyZXQpOwogfQorRVhQT1JU X1NZTUJPTF9HUEwoaTkxNV9nZW1fb2JqZWN0X2NyZWF0ZSk7CiAKIHN0YXRpYyBib29sIGRpc2Nh cmRfYmFja2luZ19zdG9yYWdlKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmopCiB7CkBA IC01MDYxLDYgKzUwNzAsNyBAQCB2b2lkIF9faTkxNV9nZW1fb2JqZWN0X3JlbGVhc2VfdW5sZXNz X2FjdGl2ZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQogCWVsc2UKIAkJaTkxNV9n ZW1fb2JqZWN0X3B1dChvYmopOwogfQorRVhQT1JUX1NZTUJPTF9HUEwoX19pOTE1X2dlbV9vYmpl Y3RfcmVsZWFzZV91bmxlc3NfYWN0aXZlKTsKIAogdm9pZCBpOTE1X2dlbV9zYW5pdGl6ZShzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKIHsKQEAgLTYxNjgsNiArNjE3OCw3IEBAIGk5MTVf Z2VtX29iamVjdF9nZXRfcGFnZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLCB1bnNp Z25lZCBpbnQgbikKIAlzZyA9IGk5MTVfZ2VtX29iamVjdF9nZXRfc2cob2JqLCBuLCAmb2Zmc2V0 KTsKIAlyZXR1cm4gbnRoX3BhZ2Uoc2dfcGFnZShzZyksIG9mZnNldCk7CiB9CitFWFBPUlRfU1lN Qk9MX0dQTChpOTE1X2dlbV9vYmplY3RfZ2V0X3BhZ2UpOwogCiAvKiBMaWtlIGk5MTVfZ2VtX29i amVjdF9nZXRfcGFnZSgpLCBidXQgbWFyayB0aGUgcmV0dXJuZWQgcGFnZSBkaXJ0eSAqLwogc3Ry dWN0IHBhZ2UgKgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29u dGV4dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCmluZGV4IGI5 Nzk2M2RiMDI4Ny4uMjEyYjhkMTc2ZDI1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9jb250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f Y29udGV4dC5jCkBAIC0yNzQsNiArMjc0LDcgQEAgdm9pZCBpOTE1X2dlbV9jb250ZXh0X3JlbGVh c2Uoc3RydWN0IGtyZWYgKnJlZikKIAlpZiAobGxpc3RfYWRkKCZjdHgtPmZyZWVfbGluaywgJmk5 MTUtPmNvbnRleHRzLmZyZWVfbGlzdCkpCiAJCXF1ZXVlX3dvcmsoaTkxNS0+d3EsICZpOTE1LT5j b250ZXh0cy5mcmVlX3dvcmspOwogfQorRVhQT1JUX1NZTUJPTF9HUEwoaTkxNV9nZW1fY29udGV4 dF9yZWxlYXNlKTsKIAogc3RhdGljIHZvaWQgY29udGV4dF9jbG9zZShzdHJ1Y3QgaTkxNV9nZW1f Y29udGV4dCAqY3R4KQogewpAQCAtNDczLDYgKzQ3NCw3IEBAIGk5MTVfZ2VtX2NvbnRleHRfY3Jl YXRlX2d2dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1 Y3RfbXV0ZXgpOwogCXJldHVybiBjdHg7CiB9CitFWFBPUlRfU1lNQk9MX0dQTChpOTE1X2dlbV9j b250ZXh0X2NyZWF0ZV9ndnQpOwogCiBzdGF0aWMgdm9pZAogZGVzdHJveV9rZXJuZWxfY29udGV4 dChzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqKmN0eHApCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9kbWFidWYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2RtYWJ1Zi5jCmluZGV4IDgyZTJjYTE3YTQ0MS4uYWM5OGIwOTQyMjBjIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9kbWFidWYuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9kbWFidWYuYwpAQCAtMjQ0LDYgKzI0NCw3IEBAIHN0cnVjdCBk bWFfYnVmICppOTE1X2dlbV9wcmltZV9leHBvcnQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAog CXJldHVybiBkcm1fZ2VtX2RtYWJ1Zl9leHBvcnQoZGV2LCAmZXhwX2luZm8pOwogfQorRVhQT1JU X1NZTUJPTF9HUEwoaTkxNV9nZW1fcHJpbWVfZXhwb3J0KTsKIAogc3RhdGljIGludCBpOTE1X2dl bV9vYmplY3RfZ2V0X3BhZ2VzX2RtYWJ1ZihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2Jq KQogewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZmVuY2VfcmVn LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9mZW5jZV9yZWcuYwppbmRleCBkNTQ4 YWMwNWNjZDcuLjIxYjc5YzFmNjFkMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fZmVuY2VfcmVnLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f ZmVuY2VfcmVnLmMKQEAgLTQyMCw2ICs0MjAsNyBAQCBpOTE1X3Jlc2VydmVfZmVuY2Uoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCWxpc3RfZGVsKCZmZW5jZS0+bGluayk7CiAJ cmV0dXJuIGZlbmNlOwogfQorRVhQT1JUX1NZTUJPTF9HUEwoaTkxNV9yZXNlcnZlX2ZlbmNlKTsK IAogLyoqCiAgKiBpOTE1X3VucmVzZXJ2ZV9mZW5jZSAtIFJlY2xhaW0gYSByZXNlcnZlZCBmZW5j ZQpAQCAtNDMzLDYgKzQzNCw3IEBAIHZvaWQgaTkxNV91bnJlc2VydmVfZmVuY2Uoc3RydWN0IGRy bV9pOTE1X2ZlbmNlX3JlZyAqZmVuY2UpCiAKIAlsaXN0X2FkZCgmZmVuY2UtPmxpbmssICZmZW5j ZS0+aTkxNS0+bW0uZmVuY2VfbGlzdCk7CiB9CitFWFBPUlRfU1lNQk9MX0dQTChpOTE1X3VucmVz ZXJ2ZV9mZW5jZSk7CiAKIC8qKgogICogaTkxNV9nZW1fcmV2b2tlX2ZlbmNlcyAtIHJldm9rZSBm ZW5jZSBzdGF0ZQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0 LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwppbmRleCBhZGQxZmU3YWVi OTMuLjc1ZGQ2ZWJmNTE3ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKQEAgLTQw NDAsNiArNDA0MCw3IEBAIGludCBpOTE1X2dlbV9ndHRfaW5zZXJ0KHN0cnVjdCBpOTE1X2FkZHJl c3Nfc3BhY2UgKnZtLAogCQkJCQkgICBzaXplLCBhbGlnbm1lbnQsIGNvbG9yLAogCQkJCQkgICBz dGFydCwgZW5kLCBEUk1fTU1fSU5TRVJUX0VWSUNUKTsKIH0KK0VYUE9SVF9TWU1CT0xfR1BMKGk5 MTVfZ2VtX2d0dF9pbnNlcnQpOwogCiAjaWYgSVNfRU5BQkxFRChDT05GSUdfRFJNX0k5MTVfU0VM RlRFU1QpCiAjaW5jbHVkZSAic2VsZnRlc3RzL21vY2tfZ3R0LmMiCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlcXVlc3QuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfcmVxdWVzdC5jCmluZGV4IDcxMTA3NTQwNTgxZC4uMDA0OGZkOWJiODk5IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3JlcXVlc3QuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3JlcXVlc3QuYwpAQCAtNzQ5LDYgKzc0OSw3IEBAIGk5MTVfcmVxdWVzdF9h bGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsIHN0cnVjdCBpOTE1X2dlbV9jb250 ZXh0ICpjdHgpCiAJaW50ZWxfY29udGV4dF91bnBpbihjZSk7CiAJcmV0dXJuIEVSUl9QVFIocmV0 KTsKIH0KK0VYUE9SVF9TWU1CT0xfR1BMKGk5MTVfcmVxdWVzdF9hbGxvYyk7CiAKIHN0YXRpYyBp bnQKIGk5MTVfcmVxdWVzdF9hd2FpdF9yZXF1ZXN0KHN0cnVjdCBpOTE1X3JlcXVlc3QgKnRvLCBz dHJ1Y3QgaTkxNV9yZXF1ZXN0ICpmcm9tKQpAQCAtMTA3Myw2ICsxMDc0LDcgQEAgdm9pZCBpOTE1 X3JlcXVlc3RfYWRkKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJlcXVlc3QpCiAJaWYgKHByZXYgJiYg aTkxNV9yZXF1ZXN0X2NvbXBsZXRlZChwcmV2KSkKIAkJaTkxNV9yZXF1ZXN0X3JldGlyZV91cHRv KHByZXYpOwogfQorRVhQT1JUX1NZTUJPTF9HUEwoaTkxNV9yZXF1ZXN0X2FkZCk7CiAKIHN0YXRp YyB1bnNpZ25lZCBsb25nIGxvY2FsX2Nsb2NrX3VzKHVuc2lnbmVkIGludCAqY3B1KQogewpAQCAt MTMzOSw2ICsxMzQxLDcgQEAgbG9uZyBpOTE1X3JlcXVlc3Rfd2FpdChzdHJ1Y3QgaTkxNV9yZXF1 ZXN0ICpycSwKIAogCXJldHVybiB0aW1lb3V0OwogfQorRVhQT1JUX1NZTUJPTF9HUEwoaTkxNV9y ZXF1ZXN0X3dhaXQpOwogCiBzdGF0aWMgdm9pZCByaW5nX3JldGlyZV9yZXF1ZXN0cyhzdHJ1Y3Qg aW50ZWxfcmluZyAqcmluZykKIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfdm1hLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZtYS5jCmluZGV4IDViNGQ3OGNk YjRjYS4uNzA0ZjE4YThlY2QzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3ZtYS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdm1hLmMKQEAgLTc4Myw2ICs3 ODMsNyBAQCB2b2lkIGk5MTVfdm1hX2Nsb3NlKHN0cnVjdCBpOTE1X3ZtYSAqdm1hKQogCSAqLwog CWxpc3RfYWRkX3RhaWwoJnZtYS0+Y2xvc2VkX2xpbmssICZ2bWEtPnZtLT5pOTE1LT5ndC5jbG9z ZWRfdm1hKTsKIH0KK0VYUE9SVF9TWU1CT0xfR1BMKGk5MTVfdm1hX2Nsb3NlKTsKIAogdm9pZCBp OTE1X3ZtYV9yZW9wZW4oc3RydWN0IGk5MTVfdm1hICp2bWEpCiB7CkBAIC0xMDI4LDYgKzEwMjks NyBAQCBpbnQgaTkxNV92bWFfbW92ZV90b19hY3RpdmUoc3RydWN0IGk5MTVfdm1hICp2bWEsCiAJ ZXhwb3J0X2ZlbmNlKHZtYSwgcnEsIGZsYWdzKTsKIAlyZXR1cm4gMDsKIH0KK0VYUE9SVF9TWU1C T0xfR1BMKGk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKTsKIAogaW50IGk5MTVfdm1hX3VuYmluZChz dHJ1Y3QgaTkxNV92bWEgKnZtYSkKIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuYwppbmRleCA4N2VlYmMxM2MwZDguLmMwZDg2OTNmMTExMCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuYwpAQCAtMTk1Nyw2ICsxOTU3LDcgQEAgdTMyICppbnRlbF9y aW5nX2JlZ2luKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxLCB1bnNpZ25lZCBpbnQgbnVtX2R3b3Jk cykKIAogCXJldHVybiBjczsKIH0KK0VYUE9SVF9TWU1CT0xfR1BMKGludGVsX3JpbmdfYmVnaW4p OwogCiAvKiBBbGlnbiB0aGUgcmluZyB0YWlsIHRvIGEgY2FjaGVsaW5lIGJvdW5kYXJ5ICovCiBp bnQgaW50ZWxfcmluZ19jYWNoZWxpbmVfYWxpZ24oc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEpCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMKaW5kZXggMWMyZGU5YjY5YTE5Li45 MGExNWU4ZDJhZmEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3J1bnRp bWVfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ydW50aW1lX3BtLmMKQEAg LTQwMDQsNiArNDAwNCw3IEBAIHZvaWQgaW50ZWxfcnVudGltZV9wbV9nZXQoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KQogCWF0b21pY19pbmMoJmRldl9wcml2LT5ydW50aW1lX3Bt Lndha2VyZWZfY291bnQpOwogCWFzc2VydF9ycG1fd2FrZWxvY2tfaGVsZChkZXZfcHJpdik7CiB9 CitFWFBPUlRfU1lNQk9MX0dQTChpbnRlbF9ydW50aW1lX3BtX2dldCk7CiAKIC8qKgogICogaW50 ZWxfcnVudGltZV9wbV9nZXRfaWZfaW5fdXNlIC0gZ3JhYiBhIHJ1bnRpbWUgcG0gcmVmZXJlbmNl IGlmIGRldmljZSBpbiB1c2UKQEAgLTQwODcsNiArNDA4OCw3IEBAIHZvaWQgaW50ZWxfcnVudGlt ZV9wbV9wdXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCXBtX3J1bnRpbWVf bWFya19sYXN0X2J1c3koa2Rldik7CiAJcG1fcnVudGltZV9wdXRfYXV0b3N1c3BlbmQoa2Rldik7 CiB9CitFWFBPUlRfU1lNQk9MX0dQTChpbnRlbF9ydW50aW1lX3BtX3B1dCk7CiAKIC8qKgogICog aW50ZWxfcnVudGltZV9wbV9lbmFibGUgLSBlbmFibGUgcnVudGltZSBwbQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF91bmNvcmUuYwppbmRleCA5Mjg5NTE1MTA4YzMuLjM1MjkzYWM3ZGZmOSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKQEAgLTY0NCw2ICs2NDQsNyBAQCB2b2lkIGludGVs X3VuY29yZV9mb3JjZXdha2VfZ2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwK IAlfX2ludGVsX3VuY29yZV9mb3JjZXdha2VfZ2V0KGRldl9wcml2LCBmd19kb21haW5zKTsKIAlz cGluX3VubG9ja19pcnFyZXN0b3JlKCZkZXZfcHJpdi0+dW5jb3JlLmxvY2ssIGlycWZsYWdzKTsK IH0KK0VYUE9SVF9TWU1CT0xfR1BMKGludGVsX3VuY29yZV9mb3JjZXdha2VfZ2V0KTsKIAogLyoq CiAgKiBpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3VzZXJfZ2V0IC0gY2xhaW0gZm9yY2V3YWtlIG9u IGJlaGFsZiBvZiB1c2Vyc3BhY2UKQEAgLTc1Niw2ICs3NTcsNyBAQCB2b2lkIGludGVsX3VuY29y ZV9mb3JjZXdha2VfcHV0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAlfX2lu dGVsX3VuY29yZV9mb3JjZXdha2VfcHV0KGRldl9wcml2LCBmd19kb21haW5zKTsKIAlzcGluX3Vu bG9ja19pcnFyZXN0b3JlKCZkZXZfcHJpdi0+dW5jb3JlLmxvY2ssIGlycWZsYWdzKTsKIH0KK0VY UE9SVF9TWU1CT0xfR1BMKGludGVsX3VuY29yZV9mb3JjZXdha2VfcHV0KTsKIAogLyoqCiAgKiBp bnRlbF91bmNvcmVfZm9yY2V3YWtlX3B1dF9fbG9ja2VkIC0gZ3JhYiBmb3JjZXdha2UgZG9tYWlu IHJlZmVyZW5jZXMKQEAgLTIzODgsNiArMjM5MCw3IEBAIGludGVsX3VuY29yZV9mb3JjZXdha2Vf Zm9yX3JlZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAKIAlyZXR1cm4gZndf ZG9tYWluczsKIH0KK0VYUE9SVF9TWU1CT0xfR1BMKGludGVsX3VuY29yZV9mb3JjZXdha2VfZm9y X3JlZyk7CiAKICNpZiBJU19FTkFCTEVEKENPTkZJR19EUk1fSTkxNV9TRUxGVEVTVCkKICNpbmNs dWRlICJzZWxmdGVzdHMvbW9ja191bmNvcmUuYyIKLS0gCjIuMTkuMQoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJ bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Au b3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==