From mboxrd@z Thu Jan 1 00:00:00 1970 From: ville.syrjala@linux.intel.com Subject: [PATCH 23/26] drm/i915: Pass dev_priv to init_clock_gating Date: Mon, 31 Oct 2016 22:37:22 +0200 Message-ID: <1477946245-14134-24-git-send-email-ville.syrjala@linux.intel.com> References: <1477946245-14134-1-git-send-email-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3CB036E399 for ; Mon, 31 Oct 2016 20:38:36 +0000 (UTC) In-Reply-To: <1477946245-14134-1-git-send-email-ville.syrjala@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: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClVu aWZ5IG91ciBhcHByb2FjaCB0byB0aGluZ3MgYnkgcGFzc2luZyBhcm91bmQgZGV2X3ByaXYgaW5z dGVhZCBvZiBkZXYuCgpTaWduZWQtb2ZmLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmph bGFAbGludXguaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMg ICAgICB8ICAgMyArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgIHwgICAy ICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgfCAgIDIgKy0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oICAgICB8ICAgMiArLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcG0uYyAgICAgIHwgMTI5ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tCiA1IGZpbGVzIGNoYW5nZWQsIDQ5IGluc2VydGlvbnMoKyksIDg5IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCmluZGV4IGM5OGU5MmVhNDNjMi4uZTVlNjgzMWZhMzBk IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMKQEAgLTIyNjQsNyArMjI2NCw2IEBAIHN0YXRpYyBp bnQgdmx2X3N1c3BlbmRfY29tcGxldGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 KQogc3RhdGljIGludCB2bHZfcmVzdW1lX3ByZXBhcmUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2LAogCQkJCWJvb2wgcnBtX3Jlc3VtZSkKIHsKLQlzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2ID0gJmRldl9wcml2LT5kcm07CiAJaW50IGVycjsKIAlpbnQgcmV0OwogCkBAIC0yMjg5LDcg KzIyODgsNyBAQCBzdGF0aWMgaW50IHZsdl9yZXN1bWVfcHJlcGFyZShzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYsCiAJdmx2X2NoZWNrX25vX2d0X2FjY2VzcyhkZXZfcHJpdik7CiAK IAlpZiAocnBtX3Jlc3VtZSkKLQkJaW50ZWxfaW5pdF9jbG9ja19nYXRpbmcoZGV2KTsKKwkJaW50 ZWxfaW5pdF9jbG9ja19nYXRpbmcoZGV2X3ByaXYpOwogCiAJcmV0dXJuIHJldDsKIH0KZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2Rydi5oCmluZGV4IGMxNDJmZDA3YTdhMy4uMjQ4ODkzNzMxYmEwIDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTUyNSw3ICs1MjUsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfZGlz cGxheV9mdW5jcyB7CiAJCQkJICAgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVz dGVkX21vZGUpOwogCXZvaWQgKCphdWRpb19jb2RlY19kaXNhYmxlKShzdHJ1Y3QgaW50ZWxfZW5j b2RlciAqZW5jb2Rlcik7CiAJdm9pZCAoKmZkaV9saW5rX3RyYWluKShzdHJ1Y3QgZHJtX2NydGMg KmNydGMpOwotCXZvaWQgKCppbml0X2Nsb2NrX2dhdGluZykoc3RydWN0IGRybV9kZXZpY2UgKmRl dik7CisJdm9pZCAoKmluaXRfY2xvY2tfZ2F0aW5nKShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYpOwogCWludCAoKnF1ZXVlX2ZsaXApKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJCSAgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCiAJ CQkgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKaW5kZXggZGY1OGExNTVhNmU0Li5kZGRhMDEzNjFlM2IgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTE2MzE0LDcgKzE2MzE0LDcgQEAgdm9pZCBpbnRl bF9tb2Rlc2V0X2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAogCWRldl9wcml2LT5h dG9taWNfY2RjbGtfZnJlcSA9IGRldl9wcml2LT5jZGNsa19mcmVxOwogCi0JaW50ZWxfaW5pdF9j bG9ja19nYXRpbmcoZGV2KTsKKwlpbnRlbF9pbml0X2Nsb2NrX2dhdGluZyhkZXZfcHJpdik7CiB9 CiAKIC8qCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCmluZGV4IDEzYzljNzhjNGIwOS4uMjQ1OTEx YjE5NDk1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaApAQCAtMTcxMiw3ICsxNzEyLDcgQEAg Ym9vbCBjaHZfcGh5X3Bvd2VyZ2F0ZV9jaChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYsIGVudW0gZHBpb19waHkgcGh5LAogCiAKIC8qIGludGVsX3BtLmMgKi8KLXZvaWQgaW50ZWxf aW5pdF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldik7Cit2b2lkIGludGVsX2lu aXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiB2b2lk IGludGVsX3N1c3BlbmRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiBpbnQgaWxrX3dtX21h eF9sZXZlbChjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBp bnRlbF91cGRhdGVfd2F0ZXJtYXJrcyhzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0Yyk7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcG0uYwppbmRleCBlODQwZmViYTdlY2EuLjc1NmJhODExMTZhMyAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9wbS5jCkBAIC01NSwxMCArNTUsOCBAQAogI2RlZmluZSBJTlRFTF9SQzZwX0VO QUJMRQkJCSgxPDwxKQogI2RlZmluZSBJTlRFTF9SQzZwcF9FTkFCTEUJCQkoMTw8MikKIAotc3Rh dGljIHZvaWQgZ2VuOV9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQor c3RhdGljIHZvaWQgZ2VuOV9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2 LT5kZXZfcHJpdmF0ZTsKLQogCS8qIFNlZSBCc3BlYyBub3RlIGZvciBQU1IyX0NUTCBiaXQgMzEs IFdhIzgyODpza2wsYnh0LGtibCAqLwogCUk5MTVfV1JJVEUoQ0hJQ0tFTl9QQVIxXzEsCiAJCSAg IEk5MTVfUkVBRChDSElDS0VOX1BBUjFfMSkgfCBTS0xfRURQX1BTUl9GSVhfUkRXUkFQKTsKQEAg LTgxLDExICs3OSw5IEBAIHN0YXRpYyB2b2lkIGdlbjlfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKIAkJICAgSUxLX0RQRkNfRElTQUJMRV9EVU1NWTApOwogfQogCi1z dGF0aWMgdm9pZCBieHRfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldikK K3N0YXRpYyB2b2lkIGJ4dF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9f aTkxNShkZXYpOwotCi0JZ2VuOV9pbml0X2Nsb2NrX2dhdGluZyhkZXYpOworCWdlbjlfaW5pdF9j bG9ja19nYXRpbmcoZGV2X3ByaXYpOwogCiAJLyogV2FEaXNhYmxlU0RFVW5pdENsb2NrR2F0aW5n OmJ4dCAqLwogCUk5MTVfV1JJVEUoR0VOOF9VQ0dDVEw2LCBJOTE1X1JFQUQoR0VOOF9VQ0dDVEw2 KSB8CkBAIC02ODczLDEwICs2ODY5LDggQEAgdm9pZCBpbnRlbF9hdXRvZW5hYmxlX2d0X3Bvd2Vy c2F2ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJfQogfQogCi1zdGF0aWMg dm9pZCBpYnhfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKK3N0YXRp YyB2b2lkIGlieF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2 X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShk ZXYpOwotCiAJLyoKIAkgKiBPbiBJYmV4IFBlYWsgYW5kIENvdWdhciBQb2ludCwgd2UgbmVlZCB0 byBkaXNhYmxlIGNsb2NrCiAJICogZ2F0aW5nIGZvciB0aGUgcGFuZWwgcG93ZXIgc2VxdWVuY2Vy IG9yIGl0IHdpbGwgZmFpbCB0bwpAQCAtNjg4NSw5ICs2ODc5LDggQEAgc3RhdGljIHZvaWQgaWJ4 X2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJSTkxNV9XUklURShT T1VUSF9EU1BDTEtfR0FURV9ELCBQQ0hfRFBMU1VOSVRfQ0xPQ0tfR0FURV9ESVNBQkxFKTsKIH0K IAotc3RhdGljIHZvaWQgZzR4X2Rpc2FibGVfdHJpY2tsZV9mZWVkKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpCitzdGF0aWMgdm9pZCBnNHhfZGlzYWJsZV90cmlja2xlX2ZlZWQoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IHRvX2k5MTUoZGV2KTsKIAllbnVtIHBpcGUgcGlwZTsKIAogCWZvcl9lYWNoX3BpcGUo ZGV2X3ByaXYsIHBpcGUpIHsKQEAgLTY5MDAsMTAgKzY4OTMsOCBAQCBzdGF0aWMgdm9pZCBnNHhf ZGlzYWJsZV90cmlja2xlX2ZlZWQoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAl9CiB9CiAKLXN0 YXRpYyB2b2lkIGlsa19pbml0X2xwX3dhdGVybWFya3Moc3RydWN0IGRybV9kZXZpY2UgKmRldikK K3N0YXRpYyB2b2lkIGlsa19pbml0X2xwX3dhdGVybWFya3Moc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2KQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUoZGV2KTsKLQogCUk5MTVfV1JJVEUoV00zX0xQX0lMSywgSTkxNV9SRUFEKFdNM19MUF9J TEspICYgfldNMV9MUF9TUl9FTik7CiAJSTkxNV9XUklURShXTTJfTFBfSUxLLCBJOTE1X1JFQUQo V00yX0xQX0lMSykgJiB+V00xX0xQX1NSX0VOKTsKIAlJOTE1X1dSSVRFKFdNMV9MUF9JTEssIEk5 MTVfUkVBRChXTTFfTFBfSUxLKSAmIH5XTTFfTFBfU1JfRU4pOwpAQCAtNjkxNCw5ICs2OTA1LDgg QEAgc3RhdGljIHZvaWQgaWxrX2luaXRfbHBfd2F0ZXJtYXJrcyhzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2KQogCSAqLwogfQogCi1zdGF0aWMgdm9pZCBpcm9ubGFrZV9pbml0X2Nsb2NrX2dhdGluZyhz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3RhdGljIHZvaWQgaXJvbmxha2VfaW5pdF9jbG9ja19n YXRpbmcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewotCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKIAl1aW50MzJfdCBkc3BjbGtf Z2F0ZSA9IElMS19WUkhVTklUX0NMT0NLX0dBVEVfRElTQUJMRTsKIAogCS8qCkBAIC02OTQ4LDcg KzY5MzgsNyBAQCBzdGF0aWMgdm9pZCBpcm9ubGFrZV9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQogCQkgICAoSTkxNV9SRUFEKERJU1BfQVJCX0NUTCkgfAogCQkgICAg RElTUF9GQkNfV01fRElTKSk7CiAKLQlpbGtfaW5pdF9scF93YXRlcm1hcmtzKGRldik7CisJaWxr X2luaXRfbHBfd2F0ZXJtYXJrcyhkZXZfcHJpdik7CiAKIAkvKgogCSAqIEJhc2VkIG9uIHRoZSBk b2N1bWVudCBmcm9tIGhhcmR3YXJlIGd1eXMgdGhlIGZvbGxvd2luZyBiaXRzCkBAIC02OTgzLDE0 ICs2OTczLDEzIEBAIHN0YXRpYyB2b2lkIGlyb25sYWtlX2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpCiAJLyogV2FEaXNhYmxlX1JlbmRlckNhY2hlX09wZXJhdGlvbmFs Rmx1c2g6aWxrICovCiAJSTkxNV9XUklURShDQUNIRV9NT0RFXzAsIF9NQVNLRURfQklUX0RJU0FC TEUoUkNfT1BfRkxVU0hfRU5BQkxFKSk7CiAKLQlnNHhfZGlzYWJsZV90cmlja2xlX2ZlZWQoZGV2 KTsKKwlnNHhfZGlzYWJsZV90cmlja2xlX2ZlZWQoZGV2X3ByaXYpOwogCi0JaWJ4X2luaXRfY2xv Y2tfZ2F0aW5nKGRldik7CisJaWJ4X2luaXRfY2xvY2tfZ2F0aW5nKGRldl9wcml2KTsKIH0KIAot c3RhdGljIHZvaWQgY3B0X2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp CitzdGF0aWMgdm9pZCBjcHRfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9pOTE1X3ByaXZh dGUgKmRldl9wcml2KQogewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRv X2k5MTUoZGV2KTsKIAlpbnQgcGlwZTsKIAl1aW50MzJfdCB2YWw7CiAKQEAgLTcwMjUsOSArNzAx NCw4IEBAIHN0YXRpYyB2b2lkIGNwdF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQogCX0KIH0KIAotc3RhdGljIHZvaWQgZ2VuNl9jaGVja19tY2hfc2V0dXAoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIGdlbjZfY2hlY2tfbWNoX3NldHVwKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CiAJdWludDMyX3QgdG1wOwogCiAJdG1wID0gSTkx NV9SRUFEKE1DSF9TU0tQRCk7CkBAIC03MDM2LDkgKzcwMjQsOCBAQCBzdGF0aWMgdm9pZCBnZW42 X2NoZWNrX21jaF9zZXR1cChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQkJICAgICAgdG1wKTsK IH0KIAotc3RhdGljIHZvaWQgZ2VuNl9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQorc3RhdGljIHZvaWQgZ2VuNl9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9w cml2ID0gdG9faTkxNShkZXYpOwogCXVpbnQzMl90IGRzcGNsa19nYXRlID0gSUxLX1ZSSFVOSVRf Q0xPQ0tfR0FURV9ESVNBQkxFOwogCiAJSTkxNV9XUklURShJTEtfRFNQQ0xLX0dBVEVfRCwgZHNw Y2xrX2dhdGUpOwpAQCAtNzA2NSw3ICs3MDUyLDcgQEAgc3RhdGljIHZvaWQgZ2VuNl9pbml0X2Ns b2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCUk5MTVfV1JJVEUoR0VONl9HVF9N T0RFLAogCQkgICBfTUFTS0VEX0ZJRUxEKEdFTjZfV0laX0hBU0hJTkdfTUFTSywgR0VONl9XSVpf SEFTSElOR18xNng0KSk7CiAKLQlpbGtfaW5pdF9scF93YXRlcm1hcmtzKGRldik7CisJaWxrX2lu aXRfbHBfd2F0ZXJtYXJrcyhkZXZfcHJpdik7CiAKIAlJOTE1X1dSSVRFKENBQ0hFX01PREVfMCwK IAkJICAgX01BU0tFRF9CSVRfRElTQUJMRShDTTBfU1RDX0VWSUNUX0RJU0FCTEVfTFJBX1NOQikp OwpAQCAtNzEyNiwxMSArNzExMywxMSBAQCBzdGF0aWMgdm9pZCBnZW42X2luaXRfY2xvY2tfZ2F0 aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCSAgIElMS19EUEFSQlVOSVRfQ0xPQ0tfR0FU RV9FTkFCTEUgIHwKIAkJICAgSUxLX0RQRkRVTklUX0NMT0NLX0dBVEVfRU5BQkxFKTsKIAotCWc0 eF9kaXNhYmxlX3RyaWNrbGVfZmVlZChkZXYpOworCWc0eF9kaXNhYmxlX3RyaWNrbGVfZmVlZChk ZXZfcHJpdik7CiAKLQljcHRfaW5pdF9jbG9ja19nYXRpbmcoZGV2KTsKKwljcHRfaW5pdF9jbG9j a19nYXRpbmcoZGV2X3ByaXYpOwogCi0JZ2VuNl9jaGVja19tY2hfc2V0dXAoZGV2KTsKKwlnZW42 X2NoZWNrX21jaF9zZXR1cChkZXZfcHJpdik7CiB9CiAKIHN0YXRpYyB2b2lkIGdlbjdfc2V0dXBf Zml4ZWRfZnVuY19zY2hlZHVsZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQpA QCAtNzE1MSwxMCArNzEzOCw4IEBAIHN0YXRpYyB2b2lkIGdlbjdfc2V0dXBfZml4ZWRfZnVuY19z Y2hlZHVsZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCUk5MTVfV1JJVEUo R0VON19GRl9USFJFQURfTU9ERSwgcmVnKTsKIH0KIAotc3RhdGljIHZvaWQgbHB0X2luaXRfY2xv Y2tfZ2F0aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBscHRfaW5pdF9j bG9ja19nYXRpbmcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewotCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKLQogCS8qCiAJICog VE9ETzogdGhpcyBiaXQgc2hvdWxkIG9ubHkgYmUgZW5hYmxlZCB3aGVuIHJlYWxseSBuZWVkZWQs IHRoZW4KIAkgKiBkaXNhYmxlZCB3aGVuIG5vdCBuZWVkZWQgYW55bW9yZSBpbiBvcmRlciB0byBz YXZlIHBvd2VyLgpAQCAtNzIwNSwxMSArNzE5MCw5IEBAIHN0YXRpYyB2b2lkIGdlbjhfc2V0X2wz c3FjX2NyZWRpdHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogCUk5MTVfV1JJ VEUoR0VON19NSVNDQ1BDVEwsIG1pc2NjcGN0bCk7CiB9CiAKLXN0YXRpYyB2b2lkIGthYnlsYWtl X2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBr YWJ5bGFrZV9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJp dmF0ZTsKLQotCWdlbjlfaW5pdF9jbG9ja19nYXRpbmcoZGV2KTsKKwlnZW45X2luaXRfY2xvY2tf Z2F0aW5nKGRldl9wcml2KTsKIAogCS8qIFdhRGlzYWJsZVNERVVuaXRDbG9ja0dhdGluZzprYmwg Ki8KIAlpZiAoSVNfS0JMX1JFVklEKGRldl9wcml2LCAwLCBLQkxfUkVWSURfQjApKQpAQCAtNzIy NiwxMSArNzIwOSw5IEBAIHN0YXRpYyB2b2lkIGthYnlsYWtlX2luaXRfY2xvY2tfZ2F0aW5nKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCSAgIElMS19EUEZDX05VS0VfT05fQU5ZX01PRElGSUNB VElPTik7CiB9CiAKLXN0YXRpYyB2b2lkIHNreWxha2VfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIHNreWxha2VfaW5pdF9jbG9ja19nYXRpbmco c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewotCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Ci0KLQlnZW45X2luaXRfY2xvY2tf Z2F0aW5nKGRldik7CisJZ2VuOV9pbml0X2Nsb2NrX2dhdGluZyhkZXZfcHJpdik7CiAKIAkvKiBX QUM2ZW50cnlsYXRlbmN5OnNrbCAqLwogCUk5MTVfV1JJVEUoRkJDX0xMQ19SRUFEX0NUUkwsIEk5 MTVfUkVBRChGQkNfTExDX1JFQURfQ1RSTCkgfApAQCAtNzI0MSwxMiArNzIyMiwxMSBAQCBzdGF0 aWMgdm9pZCBza3lsYWtlX2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYp CiAJCSAgIElMS19EUEZDX05VS0VfT05fQU5ZX01PRElGSUNBVElPTik7CiB9CiAKLXN0YXRpYyB2 b2lkIGJyb2Fkd2VsbF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQor c3RhdGljIHZvaWQgYnJvYWR3ZWxsX2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdikKIHsKLQlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSB0b19pOTE1KGRldik7CiAJZW51bSBwaXBlIHBpcGU7CiAKLQlpbGtfaW5pdF9scF93YXRlcm1h cmtzKGRldik7CisJaWxrX2luaXRfbHBfd2F0ZXJtYXJrcyhkZXZfcHJpdik7CiAKIAkvKiBXYVN3 aXRjaFNvbFZmRkFyYml0cmF0aW9uUHJpb3JpdHk6YmR3ICovCiAJSTkxNV9XUklURShHQU1fRUNP Q0hLLCBJOTE1X1JFQUQoR0FNX0VDT0NISykgfCBIU1dfRUNPQ0hLX0FSQl9QUklPX1NPTCk7CkBA IC03Mjg5LDE0ICs3MjY5LDEyIEBAIHN0YXRpYyB2b2lkIGJyb2Fkd2VsbF9pbml0X2Nsb2NrX2dh dGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCUk5MTVfV1JJVEUoQ0hJQ0tFTl9QQVIyXzEs IEk5MTVfUkVBRChDSElDS0VOX1BBUjJfMSkKIAkJICAgfCBLVk1fQ09ORklHX0NIQU5HRV9OT1RJ RklDQVRJT05fU0VMRUNUKTsKIAotCWxwdF9pbml0X2Nsb2NrX2dhdGluZyhkZXYpOworCWxwdF9p bml0X2Nsb2NrX2dhdGluZyhkZXZfcHJpdik7CiB9CiAKLXN0YXRpYyB2b2lkIGhhc3dlbGxfaW5p dF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKK3N0YXRpYyB2b2lkIGhhc3dl bGxfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQog ewotCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKLQot CWlsa19pbml0X2xwX3dhdGVybWFya3MoZGV2KTsKKwlpbGtfaW5pdF9scF93YXRlcm1hcmtzKGRl dl9wcml2KTsKIAogCS8qIEwzIGNhY2hpbmcgb2YgZGF0YSBhdG9taWNzIGRvZXNuJ3Qgd29yayAt LSBkaXNhYmxlIGl0LiAqLwogCUk5MTVfV1JJVEUoSFNXX1NDUkFUQ0gxLCBIU1dfU0NSQVRDSDFf TDNfREFUQV9BVE9NSUNTX0RJU0FCTEUpOwpAQCAtNzM0NSwxNSArNzMyMywxNCBAQCBzdGF0aWMg dm9pZCBoYXN3ZWxsX2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJ STkxNV9XUklURShDSElDS0VOX1BBUjFfMSwKIAkJICAgSTkxNV9SRUFEKENISUNLRU5fUEFSMV8x KSB8IEZPUkNFX0FSQl9JRExFX1BMQU5FUyk7CiAKLQlscHRfaW5pdF9jbG9ja19nYXRpbmcoZGV2 KTsKKwlscHRfaW5pdF9jbG9ja19nYXRpbmcoZGV2X3ByaXYpOwogfQogCi1zdGF0aWMgdm9pZCBp dnlicmlkZ2VfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKK3N0YXRp YyB2b2lkIGl2eWJyaWRnZV9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9f aTkxNShkZXYpOwogCXVpbnQzMl90IHNucGNyOwogCi0JaWxrX2luaXRfbHBfd2F0ZXJtYXJrcyhk ZXYpOworCWlsa19pbml0X2xwX3dhdGVybWFya3MoZGV2X3ByaXYpOwogCiAJSTkxNV9XUklURShJ TEtfRFNQQ0xLX0dBVEVfRCwgSUxLX1ZSSFVOSVRfQ0xPQ0tfR0FURV9ESVNBQkxFKTsKIApAQCAt NzQxMCw3ICs3Mzg3LDcgQEAgc3RhdGljIHZvaWQgaXZ5YnJpZGdlX2luaXRfY2xvY2tfZ2F0aW5n KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCQlJOTE1X1JFQUQoR0VON19TUV9DSElDS0VOX01C Q1VOSVRfQ09ORklHKSB8CiAJCQlHRU43X1NRX0NISUNLRU5fTUJDVU5JVF9TUUlOVE1PQik7CiAK LQlnNHhfZGlzYWJsZV90cmlja2xlX2ZlZWQoZGV2KTsKKwlnNHhfZGlzYWJsZV90cmlja2xlX2Zl ZWQoZGV2X3ByaXYpOwogCiAJZ2VuN19zZXR1cF9maXhlZF9mdW5jX3NjaGVkdWxlcihkZXZfcHJp dik7CiAKQEAgLTc0NDEsMTUgKzc0MTgsMTMgQEAgc3RhdGljIHZvaWQgaXZ5YnJpZGdlX2luaXRf Y2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJSTkxNV9XUklURShHRU42X01C Q1VOSVRfU05QQ1IsIHNucGNyKTsKIAogCWlmICghSEFTX1BDSF9OT1AoZGV2X3ByaXYpKQotCQlj cHRfaW5pdF9jbG9ja19nYXRpbmcoZGV2KTsKKwkJY3B0X2luaXRfY2xvY2tfZ2F0aW5nKGRldl9w cml2KTsKIAotCWdlbjZfY2hlY2tfbWNoX3NldHVwKGRldik7CisJZ2VuNl9jaGVja19tY2hfc2V0 dXAoZGV2X3ByaXYpOwogfQogCi1zdGF0aWMgdm9pZCB2YWxsZXl2aWV3X2luaXRfY2xvY2tfZ2F0 aW5nKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCB2YWxsZXl2aWV3X2luaXRf Y2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKLQlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Ci0KIAkvKiBXYURp c2FibGVFYXJseUN1bGw6dmx2ICovCiAJSTkxNV9XUklURShfM0RfQ0hJQ0tFTjMsCiAJCSAgIF9N QVNLRURfQklUX0VOQUJMRShfM0RfQ0hJQ0tFTl9TRl9ESVNBQkxFX09CSkVORF9DVUxMKSk7CkBA IC03NTI4LDEwICs3NTAzLDggQEAgc3RhdGljIHZvaWQgdmFsbGV5dmlld19pbml0X2Nsb2NrX2dh dGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCUk5MTVfV1JJVEUoVkxWX0dVTklUX0NMT0NL X0dBVEUsIEdDRkdfRElTKTsKIH0KIAotc3RhdGljIHZvaWQgY2hlcnJ5dmlld19pbml0X2Nsb2Nr X2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3RhdGljIHZvaWQgY2hlcnJ5dmlld19p bml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7Ci0J c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwotCiAJLyog V2FWU1JlZkNvdW50RnVsbGZvcmNlTWlzc0Rpc2FibGU6Y2h2ICovCiAJLyogV2FEU1JlZkNvdW50 RnVsbGZvcmNlTWlzc0Rpc2FibGU6Y2h2ICovCiAJSTkxNV9XUklURShHRU43X0ZGX1RIUkVBRF9N T0RFLApAQCAtNzU2NCw5ICs3NTM3LDggQEAgc3RhdGljIHZvaWQgY2hlcnJ5dmlld19pbml0X2Ns b2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCUk5MTVfV1JJVEUoSFNXX0dUVF9D QUNIRV9FTiwgR1RUX0NBQ0hFX0VOX0FMTCk7CiB9CiAKLXN0YXRpYyB2b2lkIGc0eF9pbml0X2Ns b2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3RhdGljIHZvaWQgZzR4X2luaXRf Y2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKLQlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CiAJdWludDMyX3Qg ZHNwY2xrX2dhdGU7CiAKIAlJOTE1X1dSSVRFKFJFTkNMS19HQVRFX0QxLCAwKTsKQEAgLTc1ODgs MTMgKzc1NjAsMTEgQEAgc3RhdGljIHZvaWQgZzR4X2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpCiAJLyogV2FEaXNhYmxlX1JlbmRlckNhY2hlX09wZXJhdGlvbmFsRmx1 c2g6ZzR4ICovCiAJSTkxNV9XUklURShDQUNIRV9NT0RFXzAsIF9NQVNLRURfQklUX0RJU0FCTEUo UkNfT1BfRkxVU0hfRU5BQkxFKSk7CiAKLQlnNHhfZGlzYWJsZV90cmlja2xlX2ZlZWQoZGV2KTsK KwlnNHhfZGlzYWJsZV90cmlja2xlX2ZlZWQoZGV2X3ByaXYpOwogfQogCi1zdGF0aWMgdm9pZCBj cmVzdGxpbmVfaW5pdF9jbG9ja19nYXRpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKK3N0YXRp YyB2b2lkIGNyZXN0bGluZV9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9f aTkxNShkZXYpOwotCiAJSTkxNV9XUklURShSRU5DTEtfR0FURV9EMSwgSTk2NV9SQ0NfQ0xPQ0tf R0FURV9ESVNBQkxFKTsKIAlJOTE1X1dSSVRFKFJFTkNMS19HQVRFX0QyLCAwKTsKIAlJOTE1X1dS SVRFKERTUENMS19HQVRFX0QsIDApOwpAQCAtNzYwNywxMCArNzU3Nyw4IEBAIHN0YXRpYyB2b2lk IGNyZXN0bGluZV9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCUk5 MTVfV1JJVEUoQ0FDSEVfTU9ERV8wLCBfTUFTS0VEX0JJVF9ESVNBQkxFKFJDX09QX0ZMVVNIX0VO QUJMRSkpOwogfQogCi1zdGF0aWMgdm9pZCBicm9hZHdhdGVyX2luaXRfY2xvY2tfZ2F0aW5nKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCitzdGF0aWMgdm9pZCBicm9hZHdhdGVyX2luaXRfY2xvY2tf Z2F0aW5nKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIHsKLQlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7Ci0KIAlJOTE1X1dSSVRFKFJF TkNMS19HQVRFX0QxLCBJOTY1X1JDWl9DTE9DS19HQVRFX0RJU0FCTEUgfAogCQkgICBJOTY1X1JD Q19DTE9DS19HQVRFX0RJU0FCTEUgfAogCQkgICBJOTY1X1JDUEJfQ0xPQ0tfR0FURV9ESVNBQkxF IHwKQEAgLTc2MjQsOSArNzU5Miw4IEBAIHN0YXRpYyB2b2lkIGJyb2Fkd2F0ZXJfaW5pdF9jbG9j a19nYXRpbmcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAlJOTE1X1dSSVRFKENBQ0hFX01PREVf MCwgX01BU0tFRF9CSVRfRElTQUJMRShSQ19PUF9GTFVTSF9FTkFCTEUpKTsKIH0KIAotc3RhdGlj IHZvaWQgZ2VuM19pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3Rh dGljIHZvaWQgZ2VuM19pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkx NShkZXYpOwogCXUzMiBkc3RhdGUgPSBJOTE1X1JFQUQoRF9TVEFURSk7CiAKIAlkc3RhdGUgfD0g RFNUQVRFX1BMTF9EM19PRkYgfCBEU1RBVEVfR0ZYX0NMT0NLX0dBVElORyB8CkBAIC03NjQ5LDEw ICs3NjE2LDggQEAgc3RhdGljIHZvaWQgZ2VuM19pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KQogCQkgICBfTUFTS0VEX0JJVF9FTkFCTEUoTUlfQVJCX0RJU1BMQVlfVFJJ Q0tMRV9GRUVEX0RJU0FCTEUpKTsKIH0KIAotc3RhdGljIHZvaWQgaTg1eF9pbml0X2Nsb2NrX2dh dGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3RhdGljIHZvaWQgaTg1eF9pbml0X2Nsb2Nr X2dhdGluZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwotCiAJSTkxNV9XUklURShS RU5DTEtfR0FURV9EMSwgU1ZfQ0xPQ0tfR0FURV9ESVNBQkxFKTsKIAogCS8qIGludGVycnVwdHMg c2hvdWxkIGNhdXNlIGEgd2FrZSB1cCBmcm9tIEMzICovCkBAIC03NjYzLDEwICs3NjI4LDggQEAg c3RhdGljIHZvaWQgaTg1eF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 KQogCQkgICBfTUFTS0VEX0JJVF9FTkFCTEUoTUVNX0RJU1BMQVlfVFJJQ0tMRV9GRUVEX0RJU0FC TEUpKTsKIH0KIAotc3RhdGljIHZvaWQgaTgzMF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJt X2RldmljZSAqZGV2KQorc3RhdGljIHZvaWQgaTgzMF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShkZXYpOwotCiAJSTkxNV9XUklURShEU1BDTEtfR0FURV9ELCBP VlJVTklUX0NMT0NLX0dBVEVfRElTQUJMRSk7CiAKIAlJOTE1X1dSSVRFKE1FTV9NT0RFLApAQCAt NzY3NCwxMSArNzYzNyw5IEBAIHN0YXRpYyB2b2lkIGk4MzBfaW5pdF9jbG9ja19nYXRpbmcoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIAkJICAgX01BU0tFRF9CSVRfRU5BQkxFKE1FTV9ESVNQTEFZ X0JfVFJJQ0tMRV9GRUVEX0RJU0FCTEUpKTsKIH0KIAotdm9pZCBpbnRlbF9pbml0X2Nsb2NrX2dh dGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQordm9pZCBpbnRlbF9pbml0X2Nsb2NrX2dhdGlu ZyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiB7Ci0Jc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShkZXYpOwotCi0JZGV2X3ByaXYtPmRpc3BsYXku aW5pdF9jbG9ja19nYXRpbmcoZGV2KTsKKwlkZXZfcHJpdi0+ZGlzcGxheS5pbml0X2Nsb2NrX2dh dGluZyhkZXZfcHJpdik7CiB9CiAKIHZvaWQgaW50ZWxfc3VzcGVuZF9odyhzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQpAQCAtNzY4Nyw3ICs3NjQ4LDcgQEAgdm9pZCBpbnRlbF9zdXNwZW5kX2h3KHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCWxwdF9zdXNwZW5kX2h3KGRldik7CiB9CiAKLXN0YXRp YyB2b2lkIG5vcF9pbml0X2Nsb2NrX2dhdGluZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQorc3Rh dGljIHZvaWQgbm9wX2luaXRfY2xvY2tfZ2F0aW5nKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdikKIHsKIAlEUk1fREVCVUdfS01TKCJObyBjbG9jayBnYXRpbmcgc2V0dGluZ3Mgb3Ig d29ya2Fyb3VuZHMgYXBwbGllZC5cbiIpOwogfQotLSAKMi43LjQKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50 ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=