From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jani Nikula Subject: [PATCH 2/2] drm/i915: move intel connector specific functions to intel_connector.c Date: Wed, 10 Oct 2018 10:52:05 +0300 Message-ID: <20181010075205.7713-2-jani.nikula@intel.com> References: <20181010075205.7713-1-jani.nikula@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 11A4E6E0E5 for ; Wed, 10 Oct 2018 07:52:23 +0000 (UTC) In-Reply-To: <20181010075205.7713-1-jani.nikula@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org Cc: jani.nikula@intel.com List-Id: intel-gfx@lists.freedesktop.org Tm93IHRoYXQgd2UgaGF2ZSBpbnRlbF9jb25uZWN0b3IuYywgbW92ZSB0aGUgY29ubmVjdG9yIHNw ZWNpZmljCmZ1bmN0aW9ucyBmcm9tIGludGVsX2Rpc3BsYXkuYyB0aGVyZS4gRml4IGEgZmV3IGNo ZWNrcGF0Y2ggY29tcGxhaW50cwp3aGlsZSBhdCBpdC4gTm8gZnVuY3Rpb25hbCBjaGFuZ2VzLgoK U2lnbmVkLW9mZi1ieTogSmFuaSBOaWt1bGEgPGphbmkubmlrdWxhQGludGVsLmNvbT4KLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICB8ICAgMiAtCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9jb25uZWN0b3IuYyB8IDExMCArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyAgIHwgMTA3 IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9kcnYuaCAgICAgICB8ICAxNiArKy0tLQogNCBmaWxlcyBjaGFuZ2VkLCAxMTkgaW5zZXJ0 aW9ucygrKSwgMTE2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDc5 NGE4YTAzYzdlNi4uMzAxN2VmMDM3ZmVkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTM0 OTIsOCArMzQ5Miw2IEBAIG1rd3JpdGVfZGV2aWNlX2luZm8oc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2KQogZXh0ZXJuIHZvaWQgaW50ZWxfbW9kZXNldF9pbml0X2h3KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpOwogZXh0ZXJuIGludCBpbnRlbF9tb2Rlc2V0X2luaXQoc3RydWN0IGRy bV9kZXZpY2UgKmRldik7CiBleHRlcm4gdm9pZCBpbnRlbF9tb2Rlc2V0X2NsZWFudXAoc3RydWN0 IGRybV9kZXZpY2UgKmRldik7Ci1leHRlcm4gaW50IGludGVsX2Nvbm5lY3Rvcl9yZWdpc3Rlcihz dHJ1Y3QgZHJtX2Nvbm5lY3RvciAqKTsKLWV4dGVybiB2b2lkIGludGVsX2Nvbm5lY3Rvcl91bnJl Z2lzdGVyKHN0cnVjdCBkcm1fY29ubmVjdG9yICopOwogZXh0ZXJuIGludCBpbnRlbF9tb2Rlc2V0 X3ZnYV9zZXRfc3RhdGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCSAg ICAgICBib29sIHN0YXRlKTsKIGV4dGVybiB2b2lkIGludGVsX2Rpc3BsYXlfcmVzdW1lKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfY29ubmVjdG9yLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9jb25uZWN0b3IuYwpp bmRleCBjYTQ0YmYzNjhlMjQuLmQ1NmY1MGE2ZjVhMCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfY29ubmVjdG9yLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfY29ubmVjdG9yLmMKQEAgLTI1LDExICsyNSwxMjEgQEAKIAogI2luY2x1ZGUgPGxpbnV4L3Ns YWIuaD4KICNpbmNsdWRlIDxsaW51eC9pMmMuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX2F0b21pY19o ZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJtX2VkaWQuaD4KICNpbmNsdWRlIDxkcm0vZHJtUC5o PgogI2luY2x1ZGUgImludGVsX2Rydi5oIgogI2luY2x1ZGUgImk5MTVfZHJ2LmgiCiAKK2ludCBp bnRlbF9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpCit7 CisJc3RydWN0IGludGVsX2RpZ2l0YWxfY29ubmVjdG9yX3N0YXRlICpjb25uX3N0YXRlOworCisJ LyoKKwkgKiBBbGxvY2F0ZSBlbm91Z2ggbWVtb3J5IHRvIGhvbGQgaW50ZWxfZGlnaXRhbF9jb25u ZWN0b3Jfc3RhdGUsCisJICogVGhpcyBtaWdodCBiZSBhIGZldyBieXRlcyB0b28gbWFueSwgYnV0 IGZvciBjb25uZWN0b3JzIHRoYXQgZG9uJ3QKKwkgKiBuZWVkIGl0IHdlJ2xsIGZyZWUgdGhlIHN0 YXRlIGFuZCBhbGxvY2F0ZSBhIHNtYWxsZXIgb25lIG9uIHRoZSBmaXJzdAorCSAqIHN1Y2Nlc3Nm dWwgY29tbWl0IGFueXdheS4KKwkgKi8KKwljb25uX3N0YXRlID0ga3phbGxvYyhzaXplb2YoKmNv bm5fc3RhdGUpLCBHRlBfS0VSTkVMKTsKKwlpZiAoIWNvbm5fc3RhdGUpCisJCXJldHVybiAtRU5P TUVNOworCisJX19kcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfcmVzZXQoJmNvbm5lY3Rvci0+ YmFzZSwKKwkJCQkJICAgICZjb25uX3N0YXRlLT5iYXNlKTsKKworCXJldHVybiAwOworfQorCitz dHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3JfYWxsb2Modm9pZCkKK3sKKwlz dHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3I7CisKKwljb25uZWN0b3IgPSBremFsbG9j KHNpemVvZigqY29ubmVjdG9yKSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFjb25uZWN0b3IpCisJCXJl dHVybiBOVUxMOworCisJaWYgKGludGVsX2Nvbm5lY3Rvcl9pbml0KGNvbm5lY3RvcikgPCAwKSB7 CisJCWtmcmVlKGNvbm5lY3Rvcik7CisJCXJldHVybiBOVUxMOworCX0KKworCXJldHVybiBjb25u ZWN0b3I7Cit9CisKKy8qCisgKiBGcmVlIHRoZSBiaXRzIGFsbG9jYXRlZCBieSBpbnRlbF9jb25u ZWN0b3JfYWxsb2MuCisgKiBUaGlzIHNob3VsZCBvbmx5IGJlIHVzZWQgYWZ0ZXIgaW50ZWxfY29u bmVjdG9yX2FsbG9jIGhhcyByZXR1cm5lZAorICogc3VjY2Vzc2Z1bGx5LCBhbmQgYmVmb3JlIGRy bV9jb25uZWN0b3JfaW5pdCByZXR1cm5zIHN1Y2Nlc3NmdWxseS4KKyAqIE90aGVyd2lzZSB0aGUg ZGVzdHJveSBjYWxsYmFja3MgZm9yIHRoZSBjb25uZWN0b3IgYW5kIHRoZSBzdGF0ZSBzaG91bGQK KyAqIHRha2UgY2FyZSBvZiBwcm9wZXIgY2xlYW51cC9mcmVlIChzZWUgaW50ZWxfY29ubmVjdG9y X2Rlc3Ryb3kpLgorICovCit2b2lkIGludGVsX2Nvbm5lY3Rvcl9mcmVlKHN0cnVjdCBpbnRlbF9j b25uZWN0b3IgKmNvbm5lY3RvcikKK3sKKwlrZnJlZSh0b19pbnRlbF9kaWdpdGFsX2Nvbm5lY3Rv cl9zdGF0ZShjb25uZWN0b3ItPmJhc2Uuc3RhdGUpKTsKKwlrZnJlZShjb25uZWN0b3IpOworfQor CisvKgorICogQ29ubmVjdG9yIHR5cGUgaW5kZXBlbmRlbnQgZGVzdHJveSBob29rIGZvciBkcm1f Y29ubmVjdG9yX2Z1bmNzLgorICovCit2b2lkIGludGVsX2Nvbm5lY3Rvcl9kZXN0cm95KHN0cnVj dCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpCit7CisJc3RydWN0IGludGVsX2Nvbm5lY3RvciAq aW50ZWxfY29ubmVjdG9yID0gdG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3Rvcik7CisKKwlrZnJl ZShpbnRlbF9jb25uZWN0b3ItPmRldGVjdF9lZGlkKTsKKworCWlmICghSVNfRVJSX09SX05VTEwo aW50ZWxfY29ubmVjdG9yLT5lZGlkKSkKKwkJa2ZyZWUoaW50ZWxfY29ubmVjdG9yLT5lZGlkKTsK KworCWludGVsX3BhbmVsX2ZpbmkoJmludGVsX2Nvbm5lY3Rvci0+cGFuZWwpOworCisJZHJtX2Nv bm5lY3Rvcl9jbGVhbnVwKGNvbm5lY3Rvcik7CisJa2ZyZWUoY29ubmVjdG9yKTsKK30KKworaW50 IGludGVsX2Nvbm5lY3Rvcl9yZWdpc3RlcihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y KQoreworCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IHRvX2ludGVs X2Nvbm5lY3Rvcihjb25uZWN0b3IpOworCWludCByZXQ7CisKKwlyZXQgPSBpbnRlbF9iYWNrbGln aHRfZGV2aWNlX3JlZ2lzdGVyKGludGVsX2Nvbm5lY3Rvcik7CisJaWYgKHJldCkKKwkJZ290byBl cnI7CisKKwlyZXR1cm4gMDsKKworZXJyOgorCXJldHVybiByZXQ7Cit9CisKK3ZvaWQgaW50ZWxf Y29ubmVjdG9yX3VucmVnaXN0ZXIoc3RydWN0IGRybV9jb25uZWN0b3IgKmNvbm5lY3RvcikKK3sK KwlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3IgPSB0b19pbnRlbF9jb25u ZWN0b3IoY29ubmVjdG9yKTsKKworCWludGVsX2JhY2tsaWdodF9kZXZpY2VfdW5yZWdpc3Rlcihp bnRlbF9jb25uZWN0b3IpOworfQorCit2b2lkIGludGVsX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2Rl cihzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IsCisJCQkJICAgIHN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyKQoreworCWNvbm5lY3Rvci0+ZW5jb2RlciA9IGVuY29kZXI7CisJ ZHJtX2Nvbm5lY3Rvcl9hdHRhY2hfZW5jb2RlcigmY29ubmVjdG9yLT5iYXNlLCAmZW5jb2Rlci0+ YmFzZSk7Cit9CisKKy8qCisgKiBTaW1wbGUgY29ubmVjdG9yLT5nZXRfaHdfc3RhdGUgaW1wbGVt ZW50YXRpb24gZm9yIGVuY29kZXJzIHRoYXQgc3VwcG9ydCBvbmx5CisgKiBvbmUgY29ubmVjdG9y IGFuZCBubyBjbG9uaW5nIGFuZCBoZW5jZSB0aGUgZW5jb2RlciBzdGF0ZSBkZXRlcm1pbmVzIHRo ZSBzdGF0ZQorICogb2YgdGhlIGNvbm5lY3Rvci4KKyAqLworYm9vbCBpbnRlbF9jb25uZWN0b3Jf Z2V0X2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvcikKK3sKKwllbnVt IHBpcGUgcGlwZSA9IDA7CisJc3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIgPSBjb25uZWN0 b3ItPmVuY29kZXI7CisKKwlyZXR1cm4gZW5jb2Rlci0+Z2V0X2h3X3N0YXRlKGVuY29kZXIsICZw aXBlKTsKK30KKwogLyoqCiAgKiBpbnRlbF9jb25uZWN0b3JfdXBkYXRlX21vZGVzIC0gdXBkYXRl IGNvbm5lY3RvciBmcm9tIGVkaWQKICAqIEBjb25uZWN0b3I6IERSTSBjb25uZWN0b3IgZGV2aWNl IHRvIHVzZQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IGExNDVlZmJhOTE1 Ny4uZjI0YjM0YzM3ZWVkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9k aXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCkBAIC02 MzI0LDg0ICs2MzI0LDYgQEAgc3RhdGljIHZvaWQgaW50ZWxfY29ubmVjdG9yX3ZlcmlmeV9zdGF0 ZShzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCiAJfQogfQogCi1pbnQgaW50ZWxf Y29ubmVjdG9yX2luaXQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yKQotewotCXN0 cnVjdCBpbnRlbF9kaWdpdGFsX2Nvbm5lY3Rvcl9zdGF0ZSAqY29ubl9zdGF0ZTsKLQotCS8qCi0J ICogQWxsb2NhdGUgZW5vdWdoIG1lbW9yeSB0byBob2xkIGludGVsX2RpZ2l0YWxfY29ubmVjdG9y X3N0YXRlLAotCSAqIFRoaXMgbWlnaHQgYmUgYSBmZXcgYnl0ZXMgdG9vIG1hbnksIGJ1dCBmb3Ig Y29ubmVjdG9ycyB0aGF0IGRvbid0Ci0JICogbmVlZCBpdCB3ZSdsbCBmcmVlIHRoZSBzdGF0ZSBh bmQgYWxsb2NhdGUgYSBzbWFsbGVyIG9uZSBvbiB0aGUgZmlyc3QKLQkgKiBzdWNjZXNmdWwgY29t bWl0IGFueXdheS4KLQkgKi8KLQljb25uX3N0YXRlID0ga3phbGxvYyhzaXplb2YoKmNvbm5fc3Rh dGUpLCBHRlBfS0VSTkVMKTsKLQlpZiAoIWNvbm5fc3RhdGUpCi0JCXJldHVybiAtRU5PTUVNOwot Ci0JX19kcm1fYXRvbWljX2hlbHBlcl9jb25uZWN0b3JfcmVzZXQoJmNvbm5lY3Rvci0+YmFzZSwK LQkJCQkJICAgICZjb25uX3N0YXRlLT5iYXNlKTsKLQotCXJldHVybiAwOwotfQotCi1zdHJ1Y3Qg aW50ZWxfY29ubmVjdG9yICppbnRlbF9jb25uZWN0b3JfYWxsb2Modm9pZCkKLXsKLQlzdHJ1Y3Qg aW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3I7Ci0KLQljb25uZWN0b3IgPSBremFsbG9jKHNpemVv ZiAqY29ubmVjdG9yLCBHRlBfS0VSTkVMKTsKLQlpZiAoIWNvbm5lY3RvcikKLQkJcmV0dXJuIE5V TEw7Ci0KLQlpZiAoaW50ZWxfY29ubmVjdG9yX2luaXQoY29ubmVjdG9yKSA8IDApIHsKLQkJa2Zy ZWUoY29ubmVjdG9yKTsKLQkJcmV0dXJuIE5VTEw7Ci0JfQotCi0JcmV0dXJuIGNvbm5lY3RvcjsK LX0KLQotLyoKLSAqIEZyZWUgdGhlIGJpdHMgYWxsb2NhdGVkIGJ5IGludGVsX2Nvbm5lY3Rvcl9h bGxvYy4KLSAqIFRoaXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBhZnRlciBpbnRlbF9jb25uZWN0b3Jf YWxsb2MgaGFzIHJldHVybmVkCi0gKiBzdWNjZXNzZnVsbHksIGFuZCBiZWZvcmUgZHJtX2Nvbm5l Y3Rvcl9pbml0IHJldHVybnMgc3VjY2Vzc2Z1bGx5LgotICogT3RoZXJ3aXNlIHRoZSBkZXN0cm95 IGNhbGxiYWNrcyBmb3IgdGhlIGNvbm5lY3RvciBhbmQgdGhlIHN0YXRlIHNob3VsZAotICogdGFr ZSBjYXJlIG9mIHByb3BlciBjbGVhbnVwL2ZyZWUgKHNlZSBpbnRlbF9jb25uZWN0b3JfZGVzdHJv eSkuCi0gKi8KLXZvaWQgaW50ZWxfY29ubmVjdG9yX2ZyZWUoc3RydWN0IGludGVsX2Nvbm5lY3Rv ciAqY29ubmVjdG9yKQotewotCWtmcmVlKHRvX2ludGVsX2RpZ2l0YWxfY29ubmVjdG9yX3N0YXRl KGNvbm5lY3Rvci0+YmFzZS5zdGF0ZSkpOwotCWtmcmVlKGNvbm5lY3Rvcik7Ci19Ci0KLS8qCi0g KiBDb25uZWN0b3IgdHlwZSBpbmRlcGVuZGVudCBkZXN0cm95IGhvb2sgZm9yIGRybV9jb25uZWN0 b3JfZnVuY3MuCi0gKi8KLXZvaWQgaW50ZWxfY29ubmVjdG9yX2Rlc3Ryb3koc3RydWN0IGRybV9j b25uZWN0b3IgKmNvbm5lY3RvcikKLXsKLQlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICppbnRlbF9j b25uZWN0b3IgPSB0b19pbnRlbF9jb25uZWN0b3IoY29ubmVjdG9yKTsKLQotCWtmcmVlKGludGVs X2Nvbm5lY3Rvci0+ZGV0ZWN0X2VkaWQpOwotCi0JaWYgKCFJU19FUlJfT1JfTlVMTChpbnRlbF9j b25uZWN0b3ItPmVkaWQpKQotCQlrZnJlZShpbnRlbF9jb25uZWN0b3ItPmVkaWQpOwotCi0JaW50 ZWxfcGFuZWxfZmluaSgmaW50ZWxfY29ubmVjdG9yLT5wYW5lbCk7Ci0KLQlkcm1fY29ubmVjdG9y X2NsZWFudXAoY29ubmVjdG9yKTsKLQlrZnJlZShjb25uZWN0b3IpOwotfQotCi0vKiBTaW1wbGUg Y29ubmVjdG9yLT5nZXRfaHdfc3RhdGUgaW1wbGVtZW50YXRpb24gZm9yIGVuY29kZXJzIHRoYXQg c3VwcG9ydCBvbmx5Ci0gKiBvbmUgY29ubmVjdG9yIGFuZCBubyBjbG9uaW5nIGFuZCBoZW5jZSB0 aGUgZW5jb2RlciBzdGF0ZSBkZXRlcm1pbmVzIHRoZSBzdGF0ZQotICogb2YgdGhlIGNvbm5lY3Rv ci4gKi8KLWJvb2wgaW50ZWxfY29ubmVjdG9yX2dldF9od19zdGF0ZShzdHJ1Y3QgaW50ZWxfY29u bmVjdG9yICpjb25uZWN0b3IpCi17Ci0JZW51bSBwaXBlIHBpcGUgPSAwOwotCXN0cnVjdCBpbnRl bF9lbmNvZGVyICplbmNvZGVyID0gY29ubmVjdG9yLT5lbmNvZGVyOwotCi0JcmV0dXJuIGVuY29k ZXItPmdldF9od19zdGF0ZShlbmNvZGVyLCAmcGlwZSk7Ci19Ci0KIHN0YXRpYyBpbnQgcGlwZV9y ZXF1aXJlZF9mZGlfbGFuZXMoc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiB7 CiAJaWYgKGNydGNfc3RhdGUtPmJhc2UuZW5hYmxlICYmIGNydGNfc3RhdGUtPmhhc19wY2hfZW5j b2RlcikKQEAgLTE1ODY1LDI4ICsxNTc4Nyw2IEBAIHZvaWQgaW50ZWxfZGlzcGxheV9yZXN1bWUo c3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJZHJtX2F0b21pY19zdGF0ZV9wdXQoc3RhdGUpOwog fQogCi1pbnQgaW50ZWxfY29ubmVjdG9yX3JlZ2lzdGVyKHN0cnVjdCBkcm1fY29ubmVjdG9yICpj b25uZWN0b3IpCi17Ci0Jc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yID0g dG9faW50ZWxfY29ubmVjdG9yKGNvbm5lY3Rvcik7Ci0JaW50IHJldDsKLQotCXJldCA9IGludGVs X2JhY2tsaWdodF9kZXZpY2VfcmVnaXN0ZXIoaW50ZWxfY29ubmVjdG9yKTsKLQlpZiAocmV0KQot CQlnb3RvIGVycjsKLQotCXJldHVybiAwOwotCi1lcnI6Ci0JcmV0dXJuIHJldDsKLX0KLQotdm9p ZCBpbnRlbF9jb25uZWN0b3JfdW5yZWdpc3RlcihzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yKQotewotCXN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3RvciA9IHRvX2lu dGVsX2Nvbm5lY3Rvcihjb25uZWN0b3IpOwotCi0JaW50ZWxfYmFja2xpZ2h0X2RldmljZV91bnJl Z2lzdGVyKGludGVsX2Nvbm5lY3Rvcik7Ci19Ci0KIHN0YXRpYyB2b2lkIGludGVsX2hwZF9wb2xs X2Zpbmkoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgaW50ZWxfY29ubmVjdG9y ICpjb25uZWN0b3I7CkBAIC0xNTk0NiwxMyArMTU4NDYsNiBAQCB2b2lkIGludGVsX21vZGVzZXRf Y2xlYW51cChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWRlc3Ryb3lfd29ya3F1ZXVlKGRldl9w cml2LT5tb2Rlc2V0X3dxKTsKIH0KIAotdm9pZCBpbnRlbF9jb25uZWN0b3JfYXR0YWNoX2VuY29k ZXIoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yLAotCQkJCSAgICBzdHJ1Y3QgaW50 ZWxfZW5jb2RlciAqZW5jb2RlcikKLXsKLQljb25uZWN0b3ItPmVuY29kZXIgPSBlbmNvZGVyOwot CWRybV9jb25uZWN0b3JfYXR0YWNoX2VuY29kZXIoJmNvbm5lY3Rvci0+YmFzZSwgJmVuY29kZXIt PmJhc2UpOwotfQotCiAvKgogICogc2V0IHZnYSBkZWNvZGUgc3RhdGUgLSB0cnVlID09IGVuYWJs ZSBWR0EgZGVjb2RlCiAgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggYmMzNzNmODJj MGQyLi4zZGVhN2ExYmRhN2YgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCkBAIC0xNTA3LDEz ICsxNTA3LDYgQEAgdm9pZCBpbnRlbF9tYXJrX2lkbGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2KTsKIGludCBpbnRlbF9kaXNwbGF5X3N1c3BlbmQoc3RydWN0IGRybV9kZXZpY2Ug KmRldik7CiB2b2lkIGludGVsX3Bwc191bmxvY2tfcmVnc193YShzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpbnRlbF9lbmNvZGVyX2Rlc3Ryb3koc3RydWN0IGRybV9l bmNvZGVyICplbmNvZGVyKTsKLWludCBpbnRlbF9jb25uZWN0b3JfaW5pdChzdHJ1Y3QgaW50ZWxf Y29ubmVjdG9yICopOwotc3RydWN0IGludGVsX2Nvbm5lY3RvciAqaW50ZWxfY29ubmVjdG9yX2Fs bG9jKHZvaWQpOwotdm9pZCBpbnRlbF9jb25uZWN0b3JfZnJlZShzdHJ1Y3QgaW50ZWxfY29ubmVj dG9yICpjb25uZWN0b3IpOwotdm9pZCBpbnRlbF9jb25uZWN0b3JfZGVzdHJveShzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKLWJvb2wgaW50ZWxfY29ubmVjdG9yX2dldF9od19zdGF0 ZShzdHJ1Y3QgaW50ZWxfY29ubmVjdG9yICpjb25uZWN0b3IpOwotdm9pZCBpbnRlbF9jb25uZWN0 b3JfYXR0YWNoX2VuY29kZXIoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVjdG9yLAotCQkJ CSAgICBzdHJ1Y3QgaW50ZWxfZW5jb2RlciAqZW5jb2Rlcik7CiBzdHJ1Y3QgZHJtX2Rpc3BsYXlf bW9kZSAqCiBpbnRlbF9lbmNvZGVyX2N1cnJlbnRfbW9kZShzdHJ1Y3QgaW50ZWxfZW5jb2RlciAq ZW5jb2Rlcik7CiBib29sIGludGVsX3BvcnRfaXNfdGMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LCBlbnVtIHBvcnQgcG9ydCk7CkBAIC0xNjY5LDYgKzE2NjIsMTUgQEAgdW5zaWdu ZWQgaW50IGk5eHhfcGxhbmVfbWF4X3N0cmlkZShzdHJ1Y3QgaW50ZWxfcGxhbmUgKnBsYW5lLAog CQkJCSAgIHVuc2lnbmVkIGludCByb3RhdGlvbik7CiAKIC8qIGludGVsX2Nvbm5lY3Rvci5jICov CitpbnQgaW50ZWxfY29ubmVjdG9yX2luaXQoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29ubmVj dG9yKTsKK3N0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmludGVsX2Nvbm5lY3Rvcl9hbGxvYyh2b2lk KTsKK3ZvaWQgaW50ZWxfY29ubmVjdG9yX2ZyZWUoc3RydWN0IGludGVsX2Nvbm5lY3RvciAqY29u bmVjdG9yKTsKK3ZvaWQgaW50ZWxfY29ubmVjdG9yX2Rlc3Ryb3koc3RydWN0IGRybV9jb25uZWN0 b3IgKmNvbm5lY3Rvcik7CitpbnQgaW50ZWxfY29ubmVjdG9yX3JlZ2lzdGVyKHN0cnVjdCBkcm1f Y29ubmVjdG9yICpjb25uZWN0b3IpOwordm9pZCBpbnRlbF9jb25uZWN0b3JfdW5yZWdpc3Rlcihz dHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKTsKK3ZvaWQgaW50ZWxfY29ubmVjdG9yX2F0 dGFjaF9lbmNvZGVyKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3RvciwKKwkJCQkgICAg c3RydWN0IGludGVsX2VuY29kZXIgKmVuY29kZXIpOworYm9vbCBpbnRlbF9jb25uZWN0b3JfZ2V0 X2h3X3N0YXRlKHN0cnVjdCBpbnRlbF9jb25uZWN0b3IgKmNvbm5lY3Rvcik7CiBpbnQgaW50ZWxf Y29ubmVjdG9yX3VwZGF0ZV9tb2RlcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLAog CQkJCSBzdHJ1Y3QgZWRpZCAqZWRpZCk7CiBpbnQgaW50ZWxfZGRjX2dldF9tb2RlcyhzdHJ1Y3Qg ZHJtX2Nvbm5lY3RvciAqYywgc3RydWN0IGkyY19hZGFwdGVyICphZGFwdGVyKTsKLS0gCjIuMTEu MAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==