From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alexandra Yates Subject: [PATCH 3/5] drm/i915: Add sys RC6 toggle interface Date: Tue, 12 Apr 2016 12:18:46 -0700 Message-ID: <1460488728-23319-4-git-send-email-alexandra.yates@linux.intel.com> References: <1460488728-23319-1-git-send-email-alexandra.yates@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id B6FAC6E770 for ; Tue, 12 Apr 2016 19:14:14 +0000 (UTC) In-Reply-To: <1460488728-23319-1-git-send-email-alexandra.yates@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, rodrigo.vivi@intel.com, nivedita.swaminathan@intel.com, joe.konno@intel.com Cc: Alexandra Yates List-Id: intel-gfx@lists.freedesktop.org VGhpcyBpbnRlcmZhY2UgYWxsb3dzIGVuYWJsaW5nL2Rpc2FibGluZyBvZiBSQzYgZmVhdHVyZS4g IEl0IGFsbG93cwp0byBzZWUgaW1tZWRpYXRlbHkgdGhlIFJDNiBwb3dlciBtYW5hZ2VtZW50IHNh dmluZ3MgYW5kIHdpbGwgYWxsb3cKdG8gZXhwb3NlIHRoaXMgdGhyb3VnaCBzeXNmcyBpbnRlcmZh Y2UgZm9yIHBvd2VydG9wIHRvIGxldmVyYWdlIGl0cwpmdW5jdGlvbmFsaXR5LgoKU2lnbmVkLW9m Zi1ieTogQWxleGFuZHJhIFlhdGVzIDxhbGV4YW5kcmEueWF0ZXNAbGludXguaW50ZWwuY29tPgot LS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmMgICAgICB8ICA1ICsrLS0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfc3lzZnMuYyAgICB8IDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8ICAzICstCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgNSArKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9wbS5jICAgICAgfCA1MyArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0K IDYgZmlsZXMgY2hhbmdlZCwgOTkgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZHJ2LmMKaW5kZXggMjliNGU3OS4uNmZmYmRmYiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5jCkBAIC05NTAsNyArOTUwLDcgQEAgaW50IGk5MTVfcmVzZXQoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKIAkgKiBvZiByZS1pbml0IGFmdGVyIHJlc2V0LgogCSAqLwogCWlmIChJTlRF TF9JTkZPKGRldiktPmdlbiA+IDUpCi0JCWludGVsX2VuYWJsZV9ndF9wb3dlcnNhdmUoZGV2KTsK KwkJaW50ZWxfZW5hYmxlX2d0X3Bvd2Vyc2F2ZShkZXYsIGZhbHNlKTsKIAogCXJldHVybiAwOwog fQpAQCAtMTYwMCw3ICsxNjAwLDggQEAgc3RhdGljIGludCBpbnRlbF9ydW50aW1lX3Jlc3VtZShz dHJ1Y3QgZGV2aWNlICpkZXZpY2UpCiAJaWYgKCFJU19WQUxMRVlWSUVXKGRldl9wcml2KSAmJiAh SVNfQ0hFUlJZVklFVyhkZXZfcHJpdikpCiAJCWludGVsX2hwZF9pbml0KGRldl9wcml2KTsKIAot CWludGVsX2VuYWJsZV9ndF9wb3dlcnNhdmUoZGV2KTsKKwlpZiAoZGV2X3ByaXYtPnJwcy5zeXNm c19zZXQgIT0gdHJ1ZSkKKwkJaW50ZWxfZW5hYmxlX2d0X3Bvd2Vyc2F2ZShkZXYsIGRldl9wcml2 LT5ycHMuc3lzZnNfc2V0KTsKIAogCWVuYWJsZV9ycG1fd2FrZXJlZl9hc3NlcnRzKGRldl9wcml2 KTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggMGYzYTM3Zi4uYmJlMTg5ZiAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0xMTU4LDYgKzExNTgsNyBAQCBzdHJ1Y3QgaW50ZWxfZ2Vu Nl9wb3dlcl9tZ210IHsKIAkgKiB0YWxraW5nIHRvIGh3IC0gc28gb25seSB0YWtlIGl0IHdoZW4g dGFsa2luZyB0byBodyEKIAkgKi8KIAlzdHJ1Y3QgbXV0ZXggaHdfbG9jazsKKwlib29sIHN5c2Zz X3NldDsKIH07CiAKIC8qIGRlZmluZWQgaW50ZWxfcG0uYyAqLwpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9zeXNmcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9z eXNmcy5jCmluZGV4IDUwZDQ1ZWYuLjgxYWE1MzQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfc3lzZnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3N5c2Zz LmMKQEAgLTcxLDcgKzcxLDQ1IEBAIHN0YXRpYyBzc2l6ZV90CiBzaG93X3JjNl9tYXNrKHN0cnVj dCBkZXZpY2UgKmtkZXYsIHN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRyLCBjaGFyICpidWYp CiB7CiAJc3RydWN0IGRybV9taW5vciAqZG1pbm9yID0gZGV2X3RvX2RybV9taW5vcihrZGV2KTsK LQlyZXR1cm4gc25wcmludGYoYnVmLCBQQUdFX1NJWkUsICIleFxuIiwgaW50ZWxfZW5hYmxlX3Jj NihkbWlub3ItPmRldikpOworCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBkbWlub3ItPmRldjsK KwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwor CWludCBlbmFibGVfcmM2OworCisJZW5hYmxlX3JjNiA9IHNhbml0aXplX3JjNl9vcHRpb24oZGV2 LCBpbnRlbF9lbmFibGVfcmM2KGRtaW5vci0+ZGV2KSk7CisJcmV0dXJuIHNucHJpbnRmKGJ1Ziwg UEFHRV9TSVpFLCAiJXhcbiIsCisJCQkJKGRldl9wcml2LT5ycHMuZW5hYmxlZCAmJiBlbmFibGVf cmM2KSk7Cit9CisKK3N0YXRpYyBzc2l6ZV90Cit0b2dnbGVfcmM2KHN0cnVjdCBkZXZpY2UgKmtk ZXYsIHN0cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRyLAorCWNvbnN0IGNoYXIgKmJ1Ziwgc2l6 ZV90IGNvdW50KQoreworCXN0cnVjdCBkcm1fbWlub3IgKmRtaW5vciA9IGRldl90b19kcm1fbWlu b3Ioa2Rldik7CisJc3RydWN0IGRybV9kZXZpY2UgKmRldiA9IGRtaW5vci0+ZGV2OworCXUzMiB2 YWw7CisJc3NpemVfdCByZXQ7CisJYm9vbCBzeXNmc19zZXQgPSB0cnVlOworCisJcmV0ID0ga3N0 cnRvdTMyKGJ1ZiwgMCwgJnZhbCk7CisJaWYgKHJldCkKKwkJcmV0dXJuIHJldDsKKworCXN3aXRj aCAodmFsKSB7CisJY2FzZSAwOgorCQlyZXQgPSBpbnRlbF9kaXNhYmxlX3JjX3Bvd2Vyc2F2ZShk ZXYsIHN5c2ZzX3NldCk7CisJCWlmIChyZXQpCisJCQlyZXR1cm4gcmV0OworCQlicmVhazsKKwlj YXNlIDE6CisJCXJldCA9IGludGVsX2VuYWJsZV9ndF9wb3dlcnNhdmUoZGV2LCBzeXNmc19zZXQp OworCQlpZiAocmV0KQorCQkJcmV0dXJuIHJldDsKKwkJYnJlYWs7CisJZGVmYXVsdDoKKwkJcmV0 dXJuIC1FSU5WQUw7CisKKwl9CisJcmV0dXJuIGNvdW50OwogfQogCiBzdGF0aWMgc3NpemVfdApA QCAtMjI4LDcgKzI2Niw3IEBAIHRvZ2dsZV9wc3Ioc3RydWN0IGRldmljZSAqa2Rldiwgc3RydWN0 IGRldmljZV9hdHRyaWJ1dGUgKmF0dHIsCiAKIHN0YXRpYyBERVZJQ0VfQVRUUihmYmNfZW5hYmxl LCBTX0lSVUdPIHwgU19JV1VTUiwgc2hvd19mYmMsIHRvZ2dsZV9mYmMpOwogc3RhdGljIERFVklD RV9BVFRSKHBzcl9lbmFibGUsIFNfSVJVR08gfCBTX0lXVVNSLCBzaG93X3BzciwgdG9nZ2xlX3Bz cik7Ci1zdGF0aWMgREVWSUNFX0FUVFIocmM2X2VuYWJsZSwgU19JUlVHTywgc2hvd19yYzZfbWFz aywgTlVMTCk7CitzdGF0aWMgREVWSUNFX0FUVFIocmM2X2VuYWJsZSwgU19JUlVHTyB8IFNfSVdV U1IsIHNob3dfcmM2X21hc2ssIHRvZ2dsZV9yYzYpOwogc3RhdGljIERFVklDRV9BVFRSKHJjNl9y ZXNpZGVuY3lfbXMsIFNfSVJVR08sIHNob3dfcmM2X21zLCBOVUxMKTsKIHN0YXRpYyBERVZJQ0Vf QVRUUihyYzZwX3Jlc2lkZW5jeV9tcywgU19JUlVHTywgc2hvd19yYzZwX21zLCBOVUxMKTsKIHN0 YXRpYyBERVZJQ0VfQVRUUihyYzZwcF9yZXNpZGVuY3lfbXMsIFNfSVJVR08sIHNob3dfcmM2cHBf bXMsIE5VTEwpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCmluZGV4IDNkMjUyYjku LjRhNjcxZTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKQEAgLTE1MjU2LDcg KzE1MjU2LDggQEAgdm9pZCBpbnRlbF9tb2Rlc2V0X2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKIAlkZXZfcHJpdi0+YXRvbWljX2NkY2xrX2ZyZXEgPSBkZXZfcHJpdi0+Y2RjbGtfZnJl cTsKIAogCWludGVsX2luaXRfY2xvY2tfZ2F0aW5nKGRldik7Ci0JaW50ZWxfZW5hYmxlX2d0X3Bv d2Vyc2F2ZShkZXYpOworCWlmIChkZXZfcHJpdi0+cnBzLnN5c2ZzX3NldCAhPSB0cnVlKQorCQlp bnRlbF9lbmFibGVfZ3RfcG93ZXJzYXZlKGRldiwgZGV2X3ByaXYtPnJwcy5zeXNmc19zZXQpOwog fQogCiAvKgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAppbmRleCA5M2QwOWNjLi5kMjgwODQ3IDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaAorKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaApAQCAtMTU4Niw4ICsxNTg2LDkgQEAgdm9pZCBpbnRl bF9ncHVfaXBzX2luaXQoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KTsKIHZvaWQg aW50ZWxfZ3B1X2lwc190ZWFyZG93bih2b2lkKTsKIHZvaWQgaW50ZWxfaW5pdF9ndF9wb3dlcnNh dmUoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiB2b2lkIGludGVsX2NsZWFudXBfZ3RfcG93ZXJz YXZlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwotdm9pZCBpbnRlbF9lbmFibGVfZ3RfcG93ZXJz YXZlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwotdm9pZCBpbnRlbF9kaXNhYmxlX2d0X3Bvd2Vy c2F2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKK2ludCBpbnRlbF9lbmFibGVfZ3RfcG93ZXJz YXZlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGJvb2wgc3lzZnNfc2V0KTsKK2ludCBpbnRlbF9k aXNhYmxlX2d0X3Bvd2Vyc2F2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKK2ludCBpbnRlbF9k aXNhYmxlX3JjX3Bvd2Vyc2F2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBib29sIHN5c2ZzX3Nl dCk7CiB2b2lkIGludGVsX3N1c3BlbmRfZ3RfcG93ZXJzYXZlKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpOwogdm9pZCBpbnRlbF9yZXNldF9ndF9wb3dlcnNhdmUoc3RydWN0IGRybV9kZXZpY2UgKmRl dik7CiB2b2lkIGdlbjZfdXBkYXRlX3JpbmdfZnJlcShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9wbS5jCmluZGV4IGI4ZTM5NWEuLjljZTljZGEgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcG0uYwpAQCAtNDU4Nyw2ICs0NTg3LDEzIEBAIHZvaWQgaW50ZWxfc2V0X3Jwcyhz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB1OCB2YWwpCiAJCWdlbjZfc2V0X3JwcyhkZXYsIHZhbCk7 CiB9CiAKK3N0YXRpYyB2b2lkIGdlbjlfZGlzYWJsZV9yYyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 KQoreworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZh dGU7CisKKwlJOTE1X1dSSVRFKEdFTjZfUkNfQ09OVFJPTCwgMCk7Cit9CisKIHN0YXRpYyB2b2lk IGdlbjlfZGlzYWJsZV9ycHMoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwpAQCAtNDU5NSw2ICs0 NjAyLDEzIEBAIHN0YXRpYyB2b2lkIGdlbjlfZGlzYWJsZV9ycHMoc3RydWN0IGRybV9kZXZpY2Ug KmRldikKIAlJOTE1X1dSSVRFKEdFTjlfUEdfRU5BQkxFLCAwKTsKIH0KIAorc3RhdGljIHZvaWQg Z2VuNl9kaXNhYmxlX3JjKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCit7CisJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKworCUk5MTVfV1JJVEUo R0VONl9SQ19DT05UUk9MLCAwKTsKK30KKwogc3RhdGljIHZvaWQgZ2VuNl9kaXNhYmxlX3Jwcyhz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7CkBAIC02MjU1LDcgKzYyNjksMzMgQEAgdm9pZCBpbnRl bF9zdXNwZW5kX2d0X3Bvd2Vyc2F2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWdlbjZfcnBz X2lkbGUoZGV2X3ByaXYpOwogfQogCi12b2lkIGludGVsX2Rpc2FibGVfZ3RfcG93ZXJzYXZlKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCitpbnQgaW50ZWxfZGlzYWJsZV9yY19wb3dlcnNhdmUoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgYm9vbCBzeXNmc19zZXQpCit7CisJc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKKworCWlmIChJU19JUk9OTEFL RV9NKGRldikpIHsKKwkJaXJvbmxha2VfZGlzYWJsZV9kcnBzKGRldik7CisJfSBlbHNlIGlmIChJ TlRFTF9JTkZPKGRldiktPmdlbiA+PSA2KSB7CisJCWludGVsX3N1c3BlbmRfZ3RfcG93ZXJzYXZl KGRldik7CisKKwkJbXV0ZXhfbG9jaygmZGV2X3ByaXYtPnJwcy5od19sb2NrKTsKKwkJaWYgKElO VEVMX0lORk8oZGV2KS0+Z2VuID49IDkpCisJCQlnZW45X2Rpc2FibGVfcmMoZGV2KTsKKwkJZWxz ZSBpZiAoSVNfQ0hFUlJZVklFVyhkZXYpKQorCQkJY2hlcnJ5dmlld19kaXNhYmxlX3JwcyhkZXYp OworCQllbHNlIGlmIChJU19WQUxMRVlWSUVXKGRldikpCisJCQl2YWxsZXl2aWV3X2Rpc2FibGVf cnBzKGRldik7CisJCWVsc2UKKwkJCWdlbjZfZGlzYWJsZV9yYyhkZXYpOworCisJCWRldl9wcml2 LT5ycHMuZW5hYmxlZCA9IGZhbHNlOworCQlkZXZfcHJpdi0+cnBzLnN5c2ZzX3NldCA9IHN5c2Zz X3NldDsKKwkJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+cnBzLmh3X2xvY2spOworCX0KKwlyZXR1 cm4gMDsKK30KKworaW50IGludGVsX2Rpc2FibGVfZ3RfcG93ZXJzYXZlKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpCiB7CiAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5k ZXZfcHJpdmF0ZTsKIApAQCAtNjI3Nyw2ICs2MzE3LDcgQEAgdm9pZCBpbnRlbF9kaXNhYmxlX2d0 X3Bvd2Vyc2F2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQlkZXZfcHJpdi0+cnBzLmVuYWJs ZWQgPSBmYWxzZTsKIAkJbXV0ZXhfdW5sb2NrKCZkZXZfcHJpdi0+cnBzLmh3X2xvY2spOwogCX0K KwlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgaW50ZWxfZ2VuNl9wb3dlcnNhdmVfd29yayhz dHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCkBAIC02MzIyLDEzICs2MzYzLDE0IEBAIHN0YXRpYyB2 b2lkIGludGVsX2dlbjZfcG93ZXJzYXZlX3dvcmsoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQog CWludGVsX3J1bnRpbWVfcG1fcHV0KGRldl9wcml2KTsKIH0KIAotdm9pZCBpbnRlbF9lbmFibGVf Z3RfcG93ZXJzYXZlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCitpbnQgaW50ZWxfZW5hYmxlX2d0 X3Bvd2Vyc2F2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBib29sIHN5c2ZzX3NldCkKIHsKIAlz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOworCWlu dCByZXQgPSAwOwogCiAJLyogUG93ZXJzYXZpbmcgaXMgY29udHJvbGxlZCBieSB0aGUgaG9zdCB3 aGVuIGluc2lkZSBhIFZNICovCiAJaWYgKGludGVsX3ZncHVfYWN0aXZlKGRldikpCi0JCXJldHVy bjsKKwkJcmV0dXJuIC1FTk9UVFk7CiAKIAlpZiAoSVNfSVJPTkxBS0VfTShkZXYpKSB7CiAJCWly b25sYWtlX2VuYWJsZV9kcnBzKGRldik7CkBAIC02MzUyLDYgKzYzOTQsMTEgQEAgdm9pZCBpbnRl bF9lbmFibGVfZ3RfcG93ZXJzYXZlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJCQkJCSAgIHJv dW5kX2ppZmZpZXNfdXBfcmVsYXRpdmUoSFopKSkKIAkJCWludGVsX3J1bnRpbWVfcG1fZ2V0X25v cmVzdW1lKGRldl9wcml2KTsKIAl9CisKKwltdXRleF9sb2NrKCZkZXZfcHJpdi0+cnBzLmh3X2xv Y2spOworCWRldl9wcml2LT5ycHMuc3lzZnNfc2V0ID0gc3lzZnNfc2V0OworCW11dGV4X3VubG9j aygmZGV2X3ByaXYtPnJwcy5od19sb2NrKTsKKwlyZXR1cm4gcmV0OwogfQogCiB2b2lkIGludGVs X3Jlc2V0X2d0X3Bvd2Vyc2F2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQotLSAKMi41LjAKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBt YWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=