From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yu Zhang Subject: [PATCH v4 1/8] drm/i915: Introduce a PV INFO page structure for Intel GVT-g. Date: Tue, 10 Feb 2015 19:05:47 +0800 Message-ID: <1423566354-5532-2-git-send-email-yu.c.zhang@linux.intel.com> References: <1423566354-5532-1-git-send-email-yu.c.zhang@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 30CB189D77 for ; Tue, 10 Feb 2015 03:39:05 -0800 (PST) In-Reply-To: <1423566354-5532-1-git-send-email-yu.c.zhang@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 Cc: daniel.vetter@ffwll.ch List-Id: intel-gfx@lists.freedesktop.org SW50cm9kdWNlIGEgUFYgSU5GTyBzdHJ1Y3R1cmUsIHRvIGZhY2lsaXRhdGUgdGhlIEludGVsIEdW VC1nCnRlY2hub2xvZ3ksIHdoaWNoIGlzIGEgR1BVIHZpcnR1YWxpemF0aW9uIHNvbHV0aW9uIHdp dGggbWVkaWF0ZWQKcGFzcy10aHJvdWdoLiBUaGlzIHBhZ2UgY29udGFpbnMgdGhlIHNoYXJlZCBp bmZvcm1hdGlvbiBiZXR3ZWVuCmk5MTUgZHJpdmVyIGFuZCB0aGUgaG9zdCBlbXVsYXRvci4gRm9y IG5vdywgdGhpcyBzdHJ1Y3R1cmUgdXRpbGl6ZXMKYW4gYXJlYSBvZiA0SyBieXRlcyBvbiBIU1cg R1BVJ3MgdW51c2VkIE1NSU8gc3BhY2UuIEZ1dHVyZSBoYXJkd2FyZQp3aWxsIGhhdmUgdGhlIHJl c2VydmVkIHdpbmRvdyBhcmNoaXRlY3R1cmFsbHkgZGVmaW5lZCwgYW5kIGxheW91dApvZiB0aGUg cGFnZSB3aWxsIGJlIGFkZGVkIGluIGZ1dHVyZSBCU3BlYy4KClRoZSBpOTE1IGRyaXZlciBsb2Fk IHJvdXRpbmUgZGV0ZWN0cyBpZiBpdCBpcyBydW5uaW5nIGluIGEgVk0gYnkKcmVhZGluZyB0aGUg Y29udGVudHMgb2YgdGhpcyBQViBJTkZPIHBhZ2UuIFRoZXJlYWZ0ZXIgYSBmbGFnLAp2Z3B1LmFj dGl2ZSBpcyBzZXQsIGFuZCBpbnRlbF92Z3B1X2FjdGl2ZSgpIGlzIHVzZWQgYnkgY2hlY2tpbmcK dGhpcyBmbGFnIHRvIGNvbmNsdWRlIGlmIEdQVSBpcyB2aXJ0dWFsaXplZCB3aXRoIEludGVsIEdW VC1nLiBCeQpub3csIGludGVsX3ZncHVfYWN0aXZlKCkgd2lsbCByZXR1cm4gdHJ1ZSwgb25seSB3 aGVuIHRoZSBkcml2ZXIKaXMgcnVubmluZyBhcyBhIGd1ZXN0IGluIHRoZSBJbnRlbCBHVlQtZyBl bmhhbmNlZCBlbnZpcm9ubWVudCBvbgpIU1cgcGxhdGZvcm0uCgp2MjoKdGFrZSBDaHJpcycgY29t bWVudHM6CiAgICAgICAgLSBjYWxsIHRoZSBpOTE1X2NoZWNrX3ZncHUoKSBpbiBpbnRlbF91bmNv cmVfaW5pdCgpCiAgICAgICAgLSBzYW5pdGl6ZSBpOTE1X2NoZWNrX3ZncHUoKSBieSBhZGRpbmcg QlVJTERfQlVHX09OKCkgYW5kIGRlYnVnIGluZm8KdGFrZSBEYW5pZWwncyBjb21tZW50czoKICAg ICAgICAtIHB1dCB0aGUgZGVmaW5pdGlvbiBvZiBQViBJTkZPIGludG8gYSBuZXcgaGVhZGVyIC0g aTkxNV92Z3RfaWYuaApvdGhlciBjaGFuZ2VzOgogICAgICAgIC0gYWNjZXNzIG1taW8gcmVncyBi eSByZWFkcS9yZWFkdyBpbiBpOTE1X2NoZWNrX3ZncHUoKQoKdjM6CnRha2UgRGFuaWVsJ3MgY29t bWVudHM6CiAgICAgICAgLSBtb3ZlIHRoZSBpOTE1L3ZndCBpbnRlcmZhY2VzIGludG8gYSBuZXcg aTkxNV92Z3B1LmMKICAgICAgICAtIHVwZGF0ZSBtYWtlZmlsZQogICAgICAgIC0gYWRkIGtlcm5l bGRvYyB0byBmdW5jdGlvbnMgd2hpY2ggYXJlIG5vbi1zdGF0aWMKICAgICAgICAtIGFkZCBhIERP Qzogc2VjdGlvbiBkZXNjcmliaW5nIHNvbWUgb2YgdGhlIGhpZ2gtbGV2ZWwgZGVzaWduCiAgICAg ICAgLSB1cGRhdGUgZHJtIGRvY2Jvb2sKb3RoZXIgY2hhbmdlczoKICAgICAgICAtIHJlbmFtZSBp OTE1X3ZndF9pZi5oIHRvIGk5MTVfdmdwdS5oCgp2NDoKdGFrZSBUdnJ0a28ncyBjb21tZW50czoK ICAgICAgICAtIGZpeCBhIHR5cG8gaW4gY29tbWl0IG1lc3NhZ2UKICAgICAgICAtIGFkZCBkZWJ1 ZyBtZXNzYWdlIHdoZW4gdmd0IHZlcnNpb24gbWlzbWF0Y2hlcwogICAgICAgIC0gcmVuYW1lIGxv d19nbWFkci9oaWdoX2dtYWRyIHRvIG1hcHBhYmxlL25vbi1tYXBwYWJsZSBpbiBQViBJTkZPCiAg ICAgICAgICBzdHJ1Y3R1cmUKClNpZ25lZC1vZmYtYnk6IFl1IFpoYW5nIDx5dS5jLnpoYW5nQGxp bnV4LmludGVsLmNvbT4KU2lnbmVkLW9mZi1ieTogSmlrZSBTb25nIDxqaWtlLnNvbmdAaW50ZWwu Y29tPgpTaWduZWQtb2ZmLWJ5OiBFZGRpZSBEb25nIDxlZGRpZS5kb25nQGludGVsLmNvbT4KLS0t CiBEb2N1bWVudGF0aW9uL0RvY0Jvb2svZHJtLnRtcGwgICAgICB8ICA1ICsrKwogZHJpdmVycy9n cHUvZHJtL2k5MTUvTWFrZWZpbGUgICAgICAgfCAgMyArKwogZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaCAgICAgfCAxMCArKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1 LmMgICAgfCA4NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X3ZncHUuaCAgICB8IDg1ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMgfCAgMyAr KwogNiBmaWxlcyBjaGFuZ2VkLCAxOTIgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfdmdwdS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmgKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9u L0RvY0Jvb2svZHJtLnRtcGwgYi9Eb2N1bWVudGF0aW9uL0RvY0Jvb2svZHJtLnRtcGwKaW5kZXgg MDNmMTk4NS4uMjQ5ZjBjOSAxMDA2NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9Eb2NCb29rL2RybS50 bXBsCisrKyBiL0RvY3VtZW50YXRpb24vRG9jQm9vay9kcm0udG1wbApAQCAtMzk3OSw2ICszOTc5 LDExIEBAIGludCBudW1faW9jdGxzOzwvc3lub3BzaXM+CiAhRmRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfaXJxLmMgaW50ZWxfcnVudGltZV9wbV9kaXNhYmxlX2ludGVycnVwdHMKICFGZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9pcnEuYyBpbnRlbF9ydW50aW1lX3BtX2VuYWJsZV9pbnRlcnJ1 cHRzCiAgICAgICA8L3NlY3QyPgorICAgICAgPHNlY3QyPgorICAgICAgICA8dGl0bGU+SW50ZWwg R1ZULWcgR3Vlc3QgU3VwcG9ydCh2R1BVKTwvdGl0bGU+CishUGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfdmdwdS5jIEludGVsIEdWVC1nIGd1ZXN0IHN1cHBvcnQKKyFJZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV92Z3B1LmMKKyAgICAgIDwvc2VjdDI+CiAgICAgPC9zZWN0MT4KICAgICA8c2Vj dDE+CiAgICAgICA8dGl0bGU+RGlzcGxheSBIYXJkd2FyZSBIYW5kbGluZzwvdGl0bGU+CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9NYWtlZmlsZSBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L01ha2VmaWxlCmluZGV4IGYwMTkyMjUuLmYwMjVlN2YgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L01ha2VmaWxlCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L01ha2VmaWxl CkBAIC04Myw2ICs4Myw5IEBAIGk5MTUteSArPSBkdm9fY2g3MDE3Lm8gXAogCSAgaW50ZWxfc2R2 by5vIFwKIAkgIGludGVsX3R2Lm8KIAorIyB2aXJ0dWFsIGdwdSBjb2RlCitpOTE1LXkgKz0gaTkx NV92Z3B1Lm8KKwogIyBsZWdhY3kgaG9ycm9ycwogaTkxNS15ICs9IGk5MTVfZG1hLm8gXAogCSAg aTkxNV91bXMubwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggYzBiODY0NC4uOWJjMGM5ZSAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0xNjQwLDYgKzE2NDAsMTAgQEAgc3RydWN0IGk5 MTVfd29ya2Fyb3VuZHMgewogCXUzMiBjb3VudDsKIH07CiAKK3N0cnVjdCBpOTE1X3ZpcnR1YWxf Z3B1IHsKKwlib29sIGFjdGl2ZTsKK307CisKIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlIHsKIAlz dHJ1Y3QgZHJtX2RldmljZSAqZGV2OwogCXN0cnVjdCBrbWVtX2NhY2hlICpzbGFiOwpAQCAtMTY1 Miw2ICsxNjU2LDggQEAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgewogCiAJc3RydWN0IGludGVs X3VuY29yZSB1bmNvcmU7CiAKKwlzdHJ1Y3QgaTkxNV92aXJ0dWFsX2dwdSB2Z3B1OworCiAJc3Ry dWN0IGludGVsX2dtYnVzIGdtYnVzW0dNQlVTX05VTV9QT1JUU107CiAKIApAQCAtMjU4Myw2ICsy NTg5LDEwIEBAIHZvaWQgaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9nZXQoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAogdm9pZCBpbnRlbF91bmNvcmVfZm9yY2V3YWtlX3B1dChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJZW51bSBmb3JjZXdha2VfZG9tYWlu cyBkb21haW5zKTsKIHZvaWQgYXNzZXJ0X2ZvcmNld2FrZXNfaW5hY3RpdmUoc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmRldl9wcml2KTsKK3N0YXRpYyBpbmxpbmUgYm9vbCBpbnRlbF92Z3B1X2Fj dGl2ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQoreworCXJldHVybiB0b19pOTE1KGRldiktPnZn cHUuYWN0aXZlOworfQogCiB2b2lkCiBpOTE1X2VuYWJsZV9waXBlc3RhdChzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcGlwZSBwaXBlLApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3Zn cHUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OTVhNjAwCi0tLSAvZGV2 L251bGwKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92Z3B1LmMKQEAgLTAsMCArMSw4 NiBAQAorLyoKKyAqIENvcHlyaWdodChjKSAyMDExLTIwMTUgSW50ZWwgQ29ycG9yYXRpb24uIEFs bCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwg ZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEKKyAqIGNvcHkgb2YgdGhp cyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3 YXJlIiksCisgKiB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBp bmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uCisgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwg bW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwKKyAqIGFuZC9v ciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3 aG9tIHRoZQorICogU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRo ZSBmb2xsb3dpbmcgY29uZGl0aW9uczoKKyAqCisgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGlj ZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSAoaW5jbHVkaW5nIHRoZSBuZXh0CisgKiBwYXJh Z3JhcGgpIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9y dGlvbnMgb2YgdGhlCisgKiBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklE RUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgorICog SU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBN RVJDSEFOVEFCSUxJVFksCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQg Tk9OSU5GUklOR0VNRU5ULiAgSU4gTk8gRVZFTlQgU0hBTEwKKyAqIFRIRSBBVVRIT1JTIE9SIENP UFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVS CisgKiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9S IE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLAorICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lU SCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKKyAqIFNP RlRXQVJFLgorICovCisKKyNpbmNsdWRlICJpbnRlbF9kcnYuaCIKKyNpbmNsdWRlICJpOTE1X3Zn cHUuaCIKKworLyoqCisgKiBET0M6IEludGVsIEdWVC1nIGd1ZXN0IHN1cHBvcnQKKyAqCisgKiBJ bnRlbCBHVlQtZyBpcyBhIGdyYXBoaWNzIHZpcnR1YWxpemF0aW9uIHRlY2hub2xvZ3kgd2hpY2gg c2hhcmVzIHRoZQorICogR1BVIGFtb25nIG11bHRpcGxlIHZpcnR1YWwgbWFjaGluZXMgb24gYSB0 aW1lLXNoYXJpbmcgYmFzaXMuIEVhY2gKKyAqIHZpcnR1YWwgbWFjaGluZSBpcyBwcmVzZW50ZWQg YSB2aXJ0dWFsIEdQVSAodkdQVSksIHdoaWNoIGhhcyBlcXVpdmFsZW50CisgKiBmZWF0dXJlcyBh cyB0aGUgdW5kZXJseWluZyBwaHlzaWNhbCBHUFUgKHBHUFUpLCBzbyBpOTE1IGRyaXZlciBjYW4g cnVuCisgKiBzZWFtbGVzc2x5IGluIGEgdmlydHVhbCBtYWNoaW5lLiBUaGlzIGZpbGUgcHJvdmlk ZXMgdkdQVSBzcGVjaWZpYworICogb3B0aW1pemF0aW9ucyB3aGVuIHJ1bm5pbmcgaW4gYSB2aXJ0 dWFsIG1hY2hpbmUsIHRvIHJlZHVjZSB0aGUgY29tcGxleGl0eQorICogb2YgdkdQVSBlbXVsYXRp b24gYW5kIHRvIGltcHJvdmUgdGhlIG92ZXJhbGwgcGVyZm9ybWFuY2UuCisgKgorICogQSBwcmlt YXJ5IGZ1bmN0aW9uIGludHJvZHVjZWQgaGVyZSBpcyBzby1jYWxsZWQgImFkZHJlc3Mgc3BhY2Ug YmFsbG9vbmluZyIKKyAqIHRlY2huaXF1ZS4gSW50ZWwgR1ZULWcgcGFydGl0aW9ucyBnbG9iYWwg Z3JhcGhpY3MgbWVtb3J5IGFtb25nIG11bHRpcGxlIFZNcywKKyAqIHNvIGVhY2ggVk0gY2FuIGRp cmVjdGx5IGFjY2VzcyBhIHBvcnRpb24gb2YgdGhlIG1lbW9yeSB3aXRob3V0IGh5cGVydmlzb3In cworICogaW50ZXJ2ZW50aW9uLCBlLmcuIGZpbGxpbmcgdGV4dHVyZXMgb3IgcXVldWluZyBjb21t YW5kcy4gSG93ZXZlciB3aXRoIHRoZQorICogcGFydGl0aW9uaW5nIGFuIHVubW9kaWZpZWQgaTkx NSBkcml2ZXIgd291bGQgYXNzdW1lIGEgc21hbGxlciBncmFwaGljcworICogbWVtb3J5IHN0YXJ0 aW5nIGZyb20gYWRkcmVzcyBaRVJPLCB0aGVuIHJlcXVpcmVzIHZHUFUgZW11bGF0aW9uIG1vZHVs ZSB0bworICogdHJhbnNsYXRlIHRoZSBncmFwaGljcyBhZGRyZXNzIGJldHdlZW4gJ2d1ZXN0IHZp ZXcnIGFuZCAnaG9zdCB2aWV3JywgZm9yCisgKiBhbGwgcmVnaXN0ZXJzIGFuZCBjb21tYW5kIG9w Y29kZXMgd2hpY2ggY29udGFpbiBhIGdyYXBoaWNzIG1lbW9yeSBhZGRyZXNzLgorICogVG8gcmVk dWNlIHRoZSBjb21wbGV4aXR5LCBJbnRlbCBHVlQtZyBpbnRyb2R1Y2VzICJhZGRyZXNzIHNwYWNl IGJhbGxvb25pbmciLAorICogYnkgdGVsbGluZyB0aGUgZXhhY3QgcGFydGl0aW9uaW5nIGtub3ds ZWRnZSB0byBlYWNoIGd1ZXN0IGk5MTUgZHJpdmVyLCB3aGljaAorICogdGhlbiByZXNlcnZlcyBh bmQgcHJldmVudHMgbm9uLWFsbG9jYXRlZCBwb3J0aW9ucyBmcm9tIGFsbG9jYXRpb24uIFRodXMg dkdQVQorICogZW11bGF0aW9uIG1vZHVsZSBvbmx5IG5lZWRzIHRvIHNjYW4gYW5kIHZhbGlkYXRl IGdyYXBoaWNzIGFkZHJlc3NlcyB3aXRob3V0CisgKiBjb21wbGV4aXR5IG9mIGFkZHJlc3MgdHJh bnNsYXRpb24uCisgKgorICovCisKKy8qKgorICogaTkxNV9jaGVja192Z3B1IC0gZGV0ZWN0IHZp cnR1YWwgR1BVCisgKiBAZGV2OiBkcm0gZGV2aWNlICoKKyAqCisgKiBUaGlzIGZ1bmN0aW9uIGlz IGNhbGxlZCBhdCB0aGUgaW5pdGlhbGl6YXRpb24gc3RhZ2UsIHRvIGRldGVjdCB3aGV0aGVyCisg KiBydW5uaW5nIG9uIGEgdkdQVS4KKyAqLwordm9pZCBpOTE1X2NoZWNrX3ZncHUoc3RydWN0IGRy bV9kZXZpY2UgKmRldikKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0 b19pOTE1KGRldik7CisJdWludDY0X3QgbWFnaWM7CisJdWludDMyX3QgdmVyc2lvbjsKKworCUJV SUxEX0JVR19PTihzaXplb2Yoc3RydWN0IHZndF9pZikgIT0gVkdUX1BWSU5GT19TSVpFKTsKKwor CWlmICghSVNfSEFTV0VMTChkZXYpKQorCQlyZXR1cm47CisKKwltYWdpYyA9IHJlYWRxKGRldl9w cml2LT5yZWdzICsgdmd0aWZfcmVnKG1hZ2ljKSk7CisJaWYgKG1hZ2ljICE9IFZHVF9NQUdJQykK KwkJcmV0dXJuOworCisJdmVyc2lvbiA9IElOVEVMX1ZHVF9JRl9WRVJTSU9OX0VOQ09ERSgKKwkJ cmVhZHcoZGV2X3ByaXYtPnJlZ3MgKyB2Z3RpZl9yZWcodmVyc2lvbl9tYWpvcikpLAorCQlyZWFk dyhkZXZfcHJpdi0+cmVncyArIHZndGlmX3JlZyh2ZXJzaW9uX21pbm9yKSkpOworCWlmICh2ZXJz aW9uICE9IElOVEVMX1ZHVF9JRl9WRVJTSU9OKSB7CisJCURSTV9JTkZPKCJWR1QgaW50ZXJmYWNl IHZlcnNpb24gbWlzbWF0Y2ghXG4iKTsKKwkJcmV0dXJuOworCX0KKworCWRldl9wcml2LT52Z3B1 LmFjdGl2ZSA9IHRydWU7CisJRFJNX0lORk8oIlZpcnR1YWwgR1BVIGZvciBJbnRlbCBHVlQtZyBk ZXRlY3RlZC5cbiIpOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV92 Z3B1LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3ZncHUuaApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi5hYTcyZTE0Ci0tLSAvZGV2L251bGwKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV92Z3B1LmgKQEAgLTAsMCArMSw4NSBAQAorLyoKKyAqIENvcHlyaWdo dChjKSAyMDExLTIwMTUgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg KgorICogUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFu eSBwZXJzb24gb2J0YWluaW5nIGEKKyAqIGNvcHkgb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2Np YXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgIlNvZnR3YXJlIiksCisgKiB0byBkZWFsIGlu IHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1p dGF0aW9uCisgKiB0aGUgcmlnaHRzIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlz aCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwKKyAqIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUg U29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZQorICogU29mdHdhcmUg aXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u czoKKyAqCisgKiBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9u IG5vdGljZSAoaW5jbHVkaW5nIHRoZSBuZXh0CisgKiBwYXJhZ3JhcGgpIHNoYWxsIGJlIGluY2x1 ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlCisgKiBTb2Z0 d2FyZS4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBX QVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVESU5HIEJV VCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCisgKiBG SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiAgSU4g Tk8gRVZFTlQgU0hBTEwKKyAqIFRIRSBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJ QUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSCisgKiBMSUFCSUxJVFksIFdIRVRI RVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBG Uk9NLAorICogT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhF IFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUKKyAqIFNPRlRXQVJFLgorICovCisKKyNpZm5k ZWYgX0k5MTVfVkdQVV9IXworI2RlZmluZSBfSTkxNV9WR1BVX0hfCisKKy8qIFRoZSBNTUlPIG9m ZnNldCBvZiB0aGUgc2hhcmVkIGluZm8gYmV0d2VlbiBndWVzdCBhbmQgaG9zdCBlbXVsYXRvciAq LworI2RlZmluZSBWR1RfUFZJTkZPX1BBR0UJMHg3ODAwMAorI2RlZmluZSBWR1RfUFZJTkZPX1NJ WkUJMHgxMDAwCisKKy8qCisgKiBUaGUgZm9sbG93aW5nIHN0cnVjdHVyZSBwYWdlcyBhcmUgZGVm aW5lZCBpbiBHRU4gTU1JTyBzcGFjZQorICogZm9yIHZpcnR1YWxpemF0aW9uLiAoT25lIHBhZ2Ug Zm9yIG5vdykKKyAqLworI2RlZmluZSBWR1RfTUFHSUMgICAgICAgICAweDQ3NzY1NDQ3NzY1NDQ3 NzYJLyogJ3ZHVHZHVHZHJyAqLworI2RlZmluZSBWR1RfVkVSU0lPTl9NQUpPUiAxCisjZGVmaW5l IFZHVF9WRVJTSU9OX01JTk9SIDAKKworI2RlZmluZSBJTlRFTF9WR1RfSUZfVkVSU0lPTl9FTkNP REUobWFqb3IsIG1pbm9yKSAoKG1ham9yKSA8PCAxNiB8IChtaW5vcikpCisjZGVmaW5lIElOVEVM X1ZHVF9JRl9WRVJTSU9OIFwKKwlJTlRFTF9WR1RfSUZfVkVSU0lPTl9FTkNPREUoVkdUX1ZFUlNJ T05fTUFKT1IsIFZHVF9WRVJTSU9OX01JTk9SKQorCitzdHJ1Y3Qgdmd0X2lmIHsKKwl1aW50NjRf dCBtYWdpYzsJCS8qIFZHVF9NQUdJQyAqLworCXVpbnQxNl90IHZlcnNpb25fbWFqb3I7CisJdWlu dDE2X3QgdmVyc2lvbl9taW5vcjsKKwl1aW50MzJfdCB2Z3RfaWQ7CS8qIElEIG9mIHZHVCBpbnN0 YW5jZSAqLworCXVpbnQzMl90IHJzdjFbMTJdOwkvKiBwYWQgdG8gb2Zmc2V0IDB4NDAgKi8KKwkv KgorCSAqICBEYXRhIHN0cnVjdHVyZSB0byBkZXNjcmliZSB0aGUgYmFsb29uaW5nIGluZm8gb2Yg cmVzb3VyY2VzLgorCSAqICBFYWNoIFZNIGNhbiBvbmx5IGhhdmUgb25lIHBvcnRpb24gb2YgY29u dGludW91cyBhcmVhIGZvciBub3cuCisJICogIChNYXkgc3VwcG9ydCBzY2F0dGVyZWQgcmVzb3Vy Y2UgaW4gZnV0dXJlKQorCSAqICAoc3RhcnRpbmcgZnJvbSBvZmZzZXQgMHg0MCkKKwkgKi8KKwlz dHJ1Y3QgeworCQkvKiBBcGVydHVyZSByZWdpc3RlciBiYWxvb25pbmcgKi8KKwkJc3RydWN0IHsK KwkJCXVpbnQzMl90IGJhc2U7CisJCQl1aW50MzJfdCBzaXplOworCQl9IG1hcHBhYmxlX2dtYWRy OwkvKiBhcGVydHVyZSAqLworCQkvKiBHTUFEUiByZWdpc3RlciBiYWxvb25pbmcgKi8KKwkJc3Ry dWN0IHsKKwkJCXVpbnQzMl90IGJhc2U7CisJCQl1aW50MzJfdCBzaXplOworCQl9IG5vbm1hcHBh YmxlX2dtYWRyOwkvKiBub24gYXBlcnR1cmUgKi8KKwkJLyogYWxsb3dlZCBmZW5jZSByZWdpc3Rl cnMgKi8KKwkJdWludDMyX3QgZmVuY2VfbnVtOworCQl1aW50MzJfdCByc3YyWzNdOworCX0gYXZh aWxfcnM7CQkvKiBhdmFpbGFibGUvYXNzaWduZWQgcmVzb3VyY2UgKi8KKwl1aW50MzJfdCByc3Yz WzB4MjAwIC0gMjRdOwkvKiBwYWQgdG8gaGFsZiBwYWdlICovCisJLyoKKwkgKiBUaGUgYm90dG9t IGhhbGYgcGFnZSBpcyBmb3IgcmVzcG9uc2UgZnJvbSBHZnggZHJpdmVyIHRvIGh5cGVydmlzb3Iu CisJICogU2V0IHRvIHJlc2VydmVkIGZpZWxkcyB0ZW1wb3JhcmlseSBieSBub3cuCisJICovCisJ dWludDMyX3QgcnN2NDsKKwl1aW50MzJfdCBkaXNwbGF5X3JlYWR5OwkvKiByZWFkeSBmb3IgZGlz cGxheSBvd25lciBzd2l0Y2ggKi8KKwl1aW50MzJfdCByc3Y1WzB4MjAwIC0gMl07CS8qIHBhZCB0 byBvbmUgcGFnZSAqLworfSBfX3BhY2tlZDsKKworI2RlZmluZSB2Z3RpZl9yZWcoeCkgXAorCShW R1RfUFZJTkZPX1BBR0UgKyAobG9uZykmKChzdHJ1Y3Qgdmd0X2lmICopTlVMTCktPngpCisKK2V4 dGVybiB2b2lkIGk5MTVfY2hlY2tfdmdwdShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKKworI2Vu ZGlmIC8qIF9JOTE1X1ZHUFVfSF8gKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3VuY29yZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKaW5k ZXggYzQ3YTNiYS4uZDk1NDE5ZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfdW5jb3JlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdW5jb3JlLmMKQEAg LTIzLDYgKzIzLDcgQEAKIAogI2luY2x1ZGUgImk5MTVfZHJ2LmgiCiAjaW5jbHVkZSAiaW50ZWxf ZHJ2LmgiCisjaW5jbHVkZSAiaTkxNV92Z3B1LmgiCiAKICNpbmNsdWRlIDxsaW51eC9wbV9ydW50 aW1lLmg+CiAKQEAgLTEwODIsNiArMTA4Myw4IEBAIHZvaWQgaW50ZWxfdW5jb3JlX2luaXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYgPSBkZXYtPmRldl9wcml2YXRlOwogCisJaTkxNV9jaGVja192Z3B1KGRldik7CisKIAlpbnRl bF91bmNvcmVfZWxsY19kZXRlY3QoZGV2KTsKIAlpbnRlbF91bmNvcmVfZndfZG9tYWluc19pbml0 KGRldik7CiAJX19pbnRlbF91bmNvcmVfZWFybHlfc2FuaXRpemUoZGV2LCBmYWxzZSk7Ci0tIAox LjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK