From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH v9 7/7] drm/i915: add a sysfs entry to let users set sseu configs Date: Mon, 11 Jun 2018 13:10:29 +0100 Message-ID: <5d5d95b8-c8a1-6339-e587-9c4d20607dbe@linux.intel.com> References: <20180530143355.6611-1-lionel.g.landwerlin@intel.com> <20180530143355.6611-8-lionel.g.landwerlin@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by gabe.freedesktop.org (Postfix) with ESMTPS id 32FF06E2EF for ; Mon, 11 Jun 2018 12:10:35 +0000 (UTC) In-Reply-To: <20180530143355.6611-8-lionel.g.landwerlin@intel.com> Content-Language: en-GB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Lionel Landwerlin , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDMwLzA1LzIwMTggMTU6MzMsIExpb25lbCBMYW5kd2VybGluIHdyb3RlOgo+IFRoZXJlIGFy ZSBjb25jZXJucyBhYm91dCBkZW5pYWwgb2Ygc2VydmljZSBhcm91bmQgdGhlIHBlciBjb250ZXh0 IHNzZXUKPiBjb25maWd1cmF0aW9uIGNhcGFiaWxpdHkuIEluIGEgcHJldmlvdXMgY29tbWl0IGlu dHJvZHVjaW5nIHRoZQo+IGNhcGFiaWxpdHkgd2UgYWxsb3dlZCBpdCBvbmx5IGZvciBjYXBhYmxl IHVzZXJzLiBUaGlzIGNoYW5nZXMgYWRkcyBhCj4gbmV3IGRlYnVnZnMgZW50cnkgdG8gbGV0IGFu eSB1c2VyIGNvbmZpZ3VyZSBpdHMgb3duIGNvbnRleHQKPiBwb3dlcmdhdGluZyBzZXR1cC4KCkFz IGZhciBhcyBJIHVuZGVyc3Rvb2QgaXQsIEpvb25hcycgY29uY2VybnMgaGVyZSBhcmU6CgoxKSBU aGF0IGluIHRoZSBjb250YWluZXJzIHVzZSBjYXNlIGluZGl2aWR1YWwgY29udGFpbmVycyB3b3Vs ZG4ndCBiZSAKYWJsZSB0byB0dXJuIG9uIHRoZSBzeXNmcyB0b2dnbGUgZm9yIHRoZW0uCgoyKSBU aGF0IGFsc28gaW4gdGhlIGNvbnRhaW5lcnMgdXNlIGNhc2UgaWYgYm94IGFkbWluIHR1cm5zIG9u IHRoZSAKZmVhdHVyZSwgc29tZSBjb250YWluZXJzIHdvdWxkIHBvdGVudGlhbGx5IHN0YXJ0IG5l Z2F0aXZlbHkgYWZmZWN0aW5nIAp0aGUgb3RoZXJzICh2aWEgdGhlIGFjY3VtdWxhdGVkIGNvc3Qg b2Ygc2xpY2UgcmUtY29uZmlndXJhdGlvbiBvbiAKY29udGV4dCBzd2l0Y2hpbmcpLgoKSSBhbSBu b3QgZmFtaWxpYXIgd2l0aCB0eXBpY2FsIGNvbnRhaW5lciBzZXR1cHMgdG8gYmUgYXV0aG9yaXRh dGl2ZSAKaGVyZSwgYnV0IGludHVpdGl2ZWx5IEkgZmluZCBpdCByZWFzb25hYmxlIHRoYXQgYSBs b3ctbGV2ZWwgaGFyZHdhcmUgCnN3aXRjaCBsaWtlIHRoaXMgd291bGQgYmUgdW5kZXIgdGhlIGNv bnRyb2wgb2YgYSBtYXN0ZXIgZG9tYWluIAphZG1pbmlzdHJhdG9yLiAoIklmIHlvdSBhcmUgaW5z dGFsbGluZyBvdXIgcHJvZHVjdCBpbiB0aGUgY29udGFpbmVyIAplbnZpcm9ubWVudCwgbWFrZSBz dXJlIHlvdXIgc3lzdGVtIGFkbWluaXN0cmF0b3IgZW5hYmxlcyB0aGlzIGhhcmR3YXJlIApmZWF0 dXJlLiIsICJOb3RlIHRvIHN5c3RlbSBhZG1pbmlzdHJhdG9yczogRW5hYmxpbmcgdGhpcyBmZWF0 dXJlcyBtYXkgCm5lZ2F0aXZlbHkgYWZmZWN0IHRoZSBwZXJmb3JtYW5jZSBvZiBvdGhlciBjb250 YWluZXJzLiIpCgpBbHRlcm5hdGl2ZSBwcm9wb3NhbCBpcyBmb3IgdGhlIGk5MTUgdG8gYXBwbHkg YW4gIm9yIiBmaWx0ZXIgb24gYWxsIApyZXF1ZXN0ZWQgbWFza3MgYW5kIGluIHRoYXQgd2F5IGVu c3VyZSBkeW5hbWljIHJlLWNvbmZpZ3VyYXRpb24gZG9lc24ndCAKaGFwcGVuIG9uIGNvbnRleHQg c3dpdGNoZXMsIGJ1dCBkcml2ZW4gZnJvbSB1c2Vyc3BhY2UgdmlhIGlvY3Rscy4KCkluIG90aGVy IHdvcmRzLCBzaG91bGQgX2FsbF8gdXNlcnNwYWNlIGFncmVlIGJldHdlZW4gdGhlbXNlbHZlcyB0 aGF0IAp0aGV5IHdhbnQgdG8gdHVybiBvZmYgYSBzbGljZSwgdGhleSB3b3VsZCB0aGVuIG5lZWQg dG8gc2VuZCBvdXQgYSAKY29uY2VydGVkIGlvY3RsIHN0b3JtLCB3aGVyZSBudW1iZXIgb2YgbmVl ZGVkIGlvY3RscyBlcXVhbHMgdGhlIG51bWJlciAKb2YgY3VycmVudGx5IGFjdGl2ZSBjb250ZXh0 cy4gKFRoaXMgbWF5IGhhdmUgaXRzIG93biBwZXJmb3JtYW5jZSAKY29uc2VxdWVuY2VzIGNhdXNl ZCBieSB0aGUgYmFycmllcnMgbmVlZGVkIHRvIG1vZGlmeSBhbGwgY29udGV4dCBpbWFnZXMuKQoK VGhpcyB3YXMgZGVlbWVkIGFjY2VwdGFibGUgdGhlIHRoZSBtZWRpYSB1c2UgY2FzZSwgYnV0IG15 IGNvbmNlcm4gaXMgdGhlIAphcHByb2FjaCBpcyBub3QgZWxlZ2FudCBhbmQgd2lsbCB0aWUgdXMg d2l0aCB0aGUgIm9yIiBwb2xpY3kgaW4gdGhlIEFCSS4gCihQZXJmb3JtYW5jZSBjb25jZXJucyBJ IGhhdmVuJ3QgZXZhbHVhdGVkIHlldCwgYnV0IHRoZXkgYWxzbyBtYXkgYmUgCnNpZ25pZmljYW50 LikKCklmIHdlIGdvIGJhY2sgdGhpbmtpbmcgYWJvdXQgdGhlIGNvbnRhaW5lcnMgdXNlIGNhc2Us IHRoZW4gaXQgdHJhbnNwaXJlcyAKdGhhdCBldmVuIHRob3VnaCB0aGUgIm9yIiBwb2xpY3kgZG9l cyBwcmV2ZW50IG9uZSBjb250YWluZXIgZnJvbSAKYWZmZWN0aW5nIHRoZSBvdGhlciBmcm9tIG9u ZSBhbmdsZSwgaXQgYWxzbyBwcmV2ZW50cyBvbmUgY29udGFpbmVyIGZyb20gCmV4ZXJjaXNpbmcg dGhlIGZlYXR1cmUgdW5sZXNzIGFsbCBjb250YWluZXJzIGNvLW9wZXJhdGUuCgpBcyBzdWNoLCB3 ZSBjYW4gdmlldyB0aGUgb3JpZ2luYWwgcHJvYmxlbSBzdGF0ZW1lbnQgd2hlcmUgd2UgaGF2ZSBh biAKaXNzdWUgaWYgbm90IGV2ZXJ5b25lIGNvLW9wZXJhdGVzLCBhcyBjb25jZXB0dWFsbHkgdGhl IHNhbWUganVzdCBmcm9tIGFuIApvcHBvc2l0ZSBhbmdsZS4gKFJhdGhlciB0aGFuIG9uZSBjb250 YWluZXIgaW5jdXJyaW5nIHRoZSBpbmNyZWFzZWQgY29zdCAKb2YgY29udGV4dCBzd2l0Y2hlcyB0 byB0aGUgcmVzdCwgd2Ugd291bGQgaGF2ZSBvbmUgY29udGFpbmVyIHByZXZlbnRpbmcgCnRoZSBv cHRpbWl6ZWQgc2xpY2UgY29uZmlndXJhdGlvbiB0byB0aGUgb3RoZXIuKQoKIEZyb20gdGhpcyBm b2xsb3dzIHRoYXQgYm90aCBwcm9wb3NhbHMgcmVxdWlyZSBjb21wbGV0ZSBjby1vcGVyYXRpb24g CmZyb20gYWxsIHJ1bm5pbmcgdXNlcnNwYWNlIHRvIGF2b2lkIGNvbXBsZXRlIGNvbnRyb2wgb2Yg dGhlIGZlYXR1cmUuCgpTaW5jZSB0aGUgYmFsYW5jZSBiZXR3ZWVuIHRoZSBiZW5lZml0IG9mIG9w dGltaXplZCBzbGljZSBjb25maWd1cmF0aW9uIAoob3IgcGVuYWx0eSBvZiBzdWJvcHRpbWFsIG9u ZSksIHZlcnN1cyB0aGUgcGVuYWx0eSBvZiBpbmNyZWFzZWQgY29udGV4dCAKc3dpdGNoIHRpbWVz LCBjYW5ub3QgYmUga25vdyBieSB0aGUgZHJpdmVyIChiYXJyaW5nIHZlbnR1cmluZyBpbnRvIHRo ZSAKaGV1cmlzdGljcyB0ZXJyaXRvcnkpLCB0aGF0IGlzIGFub3RoZXIgcmVhc29uIHdoeSBJIGZp bmQgdGhlICJvciIgcG9saWN5IAppbiB0aGUgZHJpdmVyIHF1ZXN0aW9uYWJsZS4KCldlIGNhbiBh bHNvIGFzayBhIHF1ZXN0aW9uIG9mIC0gSWYgd2UgZ28gd2l0aCB0aGUgIm9yIiBwb2xpY3ksIHdo eSAKcmVxdWlyZSBOIHBlci1jb250ZXh0IGlvY3RscyB0byBtb2RpZnkgdGhlIGdsb2JhbCBHUFUg Y29uZmlndXJhdGlvbiBhbmQgCm5vdCBpbnN0ZWFkIGFkZCBhIGdsb2JhbCBkcml2ZXIgaW9jdGwg dG8gbW9kaWZ5IHRoZSBzdGF0ZT8KCklmIGEgZnV0dXJlIGhhcmR3YXJlIHJlcXVpcmVzLCBvciBl bmFibGVzLCB0aGUgcGVyLWNvbnRleHQgYmVoYXZpb3VyIGluIAphIG1vcmUgZWZmaWNpZW50IHdh eSwgd2UgY291bGQgdGhlbiByZXZpc2l0IHRoZSBwcm9ibGVtIHNwYWNlLgoKSW4gdGhlIG1lYW4g dGltZSBJIHNlZSB0aGUgIm9yIiBwb2xpY3kgc29sdXRpb24gYXMgYWRkaW5nIHNvbWUgQUJJIHdo aWNoIApkb2Vzbid0IGRvIGFueXRoaW5nIGZvciBtYW55IHVzZSBjYXNlcyB3aXRob3V0IGFueSB3 YXkgZm9yIHRoZSBzeXNhZG1pbiAKdG8gZW5hYmxlIGl0LiBBdCB0aGUgc2FtZSB0aW1lIG1hc3Rl ciBzeXNmcyBrbm9iIGF0IGxlYXN0IGVuYWJsZXMgdGhlIApzeXNhZG1pbiB0byBtYWtlIGEgZGVj aXNpb24uIEhlcmUgSSBhbSB0aGlua2luZyBhYm91dCBhIHJhbmRvbSBjbGllbnQgCmVudmlyb25t ZW50IHdoZXJlIG5vdCBhbGwgdXNlcnNwYWNlIGNvLW9wZXJhdGVzLCBidXQgZm9yIGluc3RhbmNl IHVzZXIgCmlzIHJ1bm5pbmcgdGhlIGZlYXR1cmUgYXdhcmUgbWVkaWEgc3RhY2ssIGFuZCBub24t ZmVhdHVyZSBhd2FyZSAKT3BlbkNMLzNkIHN0YWNrLgoKSSBndWVzcyB0aGUgY29tcGxldGUgc3Rv cnkgYm9pbHMgZG93biB0byAtIGlzIHRoZSBtYXN0ZXIgc3lzZnMga25vYiAKcmVhbGx5IGEgcHJv YmxlbSBpbiBjb250YWluZXIgdXNlIGNhc2VzLgoKUmVnYXJkcywKClR2cnRrbwoKPiAKPiB2Mjog UmVuYW1lIHN5c2ZzIGVudHJ5IChUdnJ0a28pCj4gICAgICBMb2NrIGludGVycnVwdGlibGUgdGhl IGRldmljZSBpbiBzeXNmcyAoVHZydGtvKQo+ICAgICAgRml4IGRyb3BwZWQgZXJyb3IgY29kZSBp biBnZXR0aW5nIGR5bmFtaWMgc3NldSB2YWx1ZSAoVHZydGtvKQo+ICAgICAgcy9kZXZfcHJpdi9p OTE1LyAoVHZydGtvKQo+IAo+IHYzOiBEcm9wIGxvY2tlZCBmdW5jdGlvbiBzdWZmaXggKFR2cnRr bykKPiAKPiBTaWduZWQtb2ZmLWJ5OiBMaW9uZWwgTGFuZHdlcmxpbiA8bGlvbmVsLmcubGFuZHdl cmxpbkBpbnRlbC5jb20+Cj4gLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o ICAgICAgICAgfCAxNiArKysrKysrLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9jb250ZXh0LmMgfCAzOCArKysrKysrKysrKysrKysrKysrKysrKwo+ICAgZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9zeXNmcy5jICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysrKysrKysr Kwo+ICAgMyBmaWxlcyBjaGFuZ2VkLCA5MCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQo+ IAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IGluZGV4IGIyMzg2YzM3NDM3ZC4uNWFhOTZhNjY1 MGI0IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gQEAgLTE4NDIsNiArMTg0Miw4IEBA IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlIHsKPiAgIAkJc3RydWN0IGlkYSBod19pZGE7Cj4gICAj ZGVmaW5lIE1BWF9DT05URVhUX0hXX0lEICgxPDwyMSkgLyogZXhjbHVzaXZlICovCj4gICAjZGVm aW5lIEdFTjExX01BWF9DT05URVhUX0hXX0lEICgxPDwxMSkgLyogZXhjbHVzaXZlICovCj4gKwo+ ICsJCWJvb2wgZHluYW1pY19zc2V1Owo+ICAgCX0gY29udGV4dHM7Cj4gICAKPiAgIAl1MzIgZmRp X3J4X2NvbmZpZzsKPiBAQCAtMzI1OSw2ICszMjYxLDEwIEBAIGk5MTVfZ2VtX2NvbnRleHRfbG9v a3VwKHN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdiwgdTMyIGlkKQo+ICAg CXJldHVybiBjdHg7Cj4gICB9Cj4gICAKPiAraW50IGk5MTVfZ2VtX2NvbnRleHRzX3NldF9keW5h bWljX3NzZXUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCj4gKwkJCQkgICAgICAgYm9v bCBhbGxvd2VkKTsKPiArYm9vbCBpOTE1X2dlbV9jb250ZXh0c19nZXRfZHluYW1pY19zc2V1KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1KTsKPiArCj4gICBpbnQgaTkxNV9wZXJmX29wZW5f aW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgIAkJCSBzdHJ1Y3Qg ZHJtX2ZpbGUgKmZpbGUpOwo+ICAgaW50IGk5MTVfcGVyZl9hZGRfY29uZmlnX2lvY3RsKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gQEAgLTM4NTksMTEgKzM4NjUsMTMgQEAg aW50ZWxfZW5naW5lX3ByZXBhcmVfc3NldShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUs Cj4gICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUgPSBlbmdpbmUtPmk5MTU7Cj4gICAK PiAgIAkvKgo+IC0JICogSWYgaTkxNS9wZXJmIGlzIGFjdGl2ZSwgd2Ugd2FudCBhIHN0YWJsZSBw b3dlcmdhdGluZyBjb25maWd1cmF0aW9uCj4gLQkgKiBvbiB0aGUgc3lzdGVtLiBUaGUgbW9zdCBu YXR1cmFsIGNvbmZpZ3VyYXRpb24gdG8gdGFrZSBpbiB0aGF0IGNhc2UKPiAtCSAqIGlzIHRoZSBk ZWZhdWx0IChpLmUgbWF4aW11bSB0aGUgaGFyZHdhcmUgY2FuIGRvKS4KPiArCSAqIElmIGk5MTUv cGVyZiBpcyBhY3RpdmUgb3IgZHluYW1pYyBzc2V1IGNvbmZpZ3VyYXRpb24gaXMgbm90IGFsbG93 ZWQKPiArCSAqICh0aHJvdWdoIHN5c2ZzKSwgd2Ugd2FudCBhIHN0YWJsZSBwb3dlcmdhdGluZyBj b25maWd1cmF0aW9uIG9uIHRoZQo+ICsJICogc3lzdGVtLiBUaGUgbW9zdCBuYXR1cmFsIGNvbmZp Z3VyYXRpb24gdG8gdGFrZSBpbiB0aGF0IGNhc2UgaXMgdGhlCj4gKwkgKiBkZWZhdWx0IChpLmUg bWF4aW11bSB0aGUgaGFyZHdhcmUgY2FuIGRvKS4KPiAgIAkgKi8KPiAtCXJldHVybiBpOTE1LT5w ZXJmLm9hLmV4Y2x1c2l2ZV9zdHJlYW0gPwo+ICsJcmV0dXJuIChpOTE1LT5wZXJmLm9hLmV4Y2x1 c2l2ZV9zdHJlYW0gfHwKPiArCQkhaTkxNS0+Y29udGV4dHMuZHluYW1pY19zc2V1KSA/Cj4gICAJ CWludGVsX2RldmljZV9kZWZhdWx0X3NzZXUoaTkxNSkgOiBzc2V1Owo+ICAgfQo+ICAgCj4gZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwo+IGluZGV4IDc5MDI5ODE1YzIxZi4u NDUzYmRjOTc2YmUzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2NvbnRleHQuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQu Ywo+IEBAIC0xMTE4LDYgKzExMTgsNDQgQEAgaW50IGk5MTVfZ2VtX2NvbnRleHRfcmVzZXRfc3Rh dHNfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgIAlyZXR1cm4gcmV0Owo+ICAgfQo+ ICAgCj4gK2ludCBpOTE1X2dlbV9jb250ZXh0c19zZXRfZHluYW1pY19zc2V1KHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICppOTE1LAo+ICsJCQkJICAgICAgIGJvb2wgYWxsb3dlZCkKPiArewo+ICsJ c3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lID0gaTkxNS0+ZW5naW5lW1JDU107Cj4gKwlz dHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4Owo+ICsJaW50IHJldCA9IDA7Cj4gKwo+ICsJbG9j a2RlcF9hc3NlcnRfaGVsZCgmaTkxNS0+ZHJtLnN0cnVjdF9tdXRleCk7Cj4gKwo+ICsJaWYgKCFl bmdpbmUtPmVtaXRfcnBjc19jb25maWcpCj4gKwkJcmV0dXJuIC1FTk9ERVY7Cj4gKwo+ICsJaWYg KGFsbG93ZWQgPT0gaTkxNS0+Y29udGV4dHMuZHluYW1pY19zc2V1KQo+ICsJCXJldHVybiAwOwo+ ICsKPiArCWk5MTUtPmNvbnRleHRzLmR5bmFtaWNfc3NldSA9IGFsbG93ZWQ7Cj4gKwo+ICsJbGlz dF9mb3JfZWFjaF9lbnRyeShjdHgsICZpOTE1LT5jb250ZXh0cy5saXN0LCBsaW5rKSB7Cj4gKwkJ c3RydWN0IGludGVsX2NvbnRleHQgKmNlID0gdG9faW50ZWxfY29udGV4dChjdHgsIGVuZ2luZSk7 Cj4gKwo+ICsJCXJldCA9IGk5MTVfZ2VtX2NvbnRleHRfcmVjb25maWd1cmVfc3NldShjdHgsIGVu Z2luZSwgY2UtPnNzZXUpOwo+ICsJCWlmIChyZXQpCj4gKwkJCWJyZWFrOwo+ICsJfQo+ICsKPiAr CXJldHVybiByZXQ7Cj4gK30KPiArCj4gK2Jvb2wgaTkxNV9nZW1fY29udGV4dHNfZ2V0X2R5bmFt aWNfc3NldShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSkKPiArewo+ICsJc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqZW5naW5lID0gaTkxNS0+ZW5naW5lW1JDU107Cj4gKwo+ICsJaWYgKCFl bmdpbmUtPmVtaXRfcnBjc19jb25maWcpCj4gKwkJcmV0dXJuIGZhbHNlOwo+ICsKPiArCXJldHVy biBpOTE1LT5jb250ZXh0cy5keW5hbWljX3NzZXU7Cj4gK30KPiArCj4gICAjaWYgSVNfRU5BQkxF RChDT05GSUdfRFJNX0k5MTVfU0VMRlRFU1QpCj4gICAjaW5jbHVkZSAic2VsZnRlc3RzL21vY2tf Y29udGV4dC5jIgo+ICAgI2luY2x1ZGUgInNlbGZ0ZXN0cy9pOTE1X2dlbV9jb250ZXh0LmMiCj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc3lzZnMuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfc3lzZnMuYwo+IGluZGV4IGU1ZTZmNmJiMmIwNS4uZDg5NTA1NGQy NDVlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc3lzZnMuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc3lzZnMuYwo+IEBAIC00ODMsNiArNDgzLDQ0 IEBAIHN0YXRpYyBzc2l6ZV90IGd0X3JwX21oel9zaG93KHN0cnVjdCBkZXZpY2UgKmtkZXYsIHN0 cnVjdCBkZXZpY2VfYXR0cmlidXRlICphdHRyCj4gICAJcmV0dXJuIHNucHJpbnRmKGJ1ZiwgUEFH RV9TSVpFLCAiJWRcbiIsIHZhbCk7Cj4gICB9Cj4gICAKPiArc3RhdGljIHNzaXplX3QgYWxsb3df ZHluYW1pY19zc2V1X3Nob3coc3RydWN0IGRldmljZSAqa2RldiwKPiArCQkJCSAgICAgICBzdHJ1 Y3QgZGV2aWNlX2F0dHJpYnV0ZSAqYXR0ciwKPiArCQkJCSAgICAgICBjaGFyICpidWYpCj4gK3sK PiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0ga2Rldl9taW5vcl90b19pOTE1KGtk ZXYpOwo+ICsJYm9vbCB2YWx1ZSA9IGk5MTVfZ2VtX2NvbnRleHRzX2dldF9keW5hbWljX3NzZXUo aTkxNSk7Cj4gKwo+ICsJcmV0dXJuIHNucHJpbnRmKGJ1ZiwgUEFHRV9TSVpFLCAiJWRcbiIsIHZh bHVlKTsKPiArfQo+ICsKPiArc3RhdGljIHNzaXplX3QgYWxsb3dfZHluYW1pY19zc2V1X3N0b3Jl KHN0cnVjdCBkZXZpY2UgKmtkZXYsCj4gKwkJCQkJc3RydWN0IGRldmljZV9hdHRyaWJ1dGUgKmF0 dHIsCj4gKwkJCQkJY29uc3QgY2hhciAqYnVmLCBzaXplX3QgY291bnQpCj4gK3sKPiArCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0ga2Rldl9taW5vcl90b19pOTE1KGtkZXYpOwo+ICsJ c3NpemVfdCByZXQ7Cj4gKwl1MzIgdmFsOwo+ICsKPiArCXJldCA9IGtzdHJ0b3UzMihidWYsIDAs ICZ2YWwpOwo+ICsJaWYgKHJldCkKPiArCQlyZXR1cm4gcmV0Owo+ICsKPiArCWlmICh2YWwgIT0g MCAmJiB2YWwgIT0gMSkKPiArCQlyZXR1cm4gLUVJTlZBTDsKPiArCj4gKwlyZXQgPSBtdXRleF9s b2NrX2ludGVycnVwdGlibGUoJmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgpOwo+ICsJaWYgKHJldCkK PiArCQlyZXR1cm4gcmV0Owo+ICsKPiArCXJldCA9IGk5MTVfZ2VtX2NvbnRleHRzX3NldF9keW5h bWljX3NzZXUoaTkxNSwgdmFsICE9IDApOwo+ICsKPiArCW11dGV4X3VubG9jaygmaTkxNS0+ZHJt LnN0cnVjdF9tdXRleCk7Cj4gKwo+ICsJcmV0dXJuIHJldCA/OiBjb3VudDsKPiArfQo+ICsKPiAr c3RhdGljIERFVklDRV9BVFRSX1JXKGFsbG93X2R5bmFtaWNfc3NldSk7Cj4gKwo+ICAgc3RhdGlj IGNvbnN0IHN0cnVjdCBhdHRyaWJ1dGUgKmdlbjZfYXR0cnNbXSA9IHsKPiAgIAkmZGV2X2F0dHJf Z3RfYWN0X2ZyZXFfbWh6LmF0dHIsCj4gICAJJmRldl9hdHRyX2d0X2N1cl9mcmVxX21oei5hdHRy LAo+IEBAIC00OTIsNiArNTMwLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhdHRyaWJ1dGUgKmdl bjZfYXR0cnNbXSA9IHsKPiAgIAkmZGV2X2F0dHJfZ3RfUlAwX2ZyZXFfbWh6LmF0dHIsCj4gICAJ JmRldl9hdHRyX2d0X1JQMV9mcmVxX21oei5hdHRyLAo+ICAgCSZkZXZfYXR0cl9ndF9SUG5fZnJl cV9taHouYXR0ciwKPiArCSZkZXZfYXR0cl9hbGxvd19keW5hbWljX3NzZXUuYXR0ciwKPiAgIAlO VUxMLAo+ICAgfTsKPiAgIAo+IEBAIC01MDUsNiArNTQ0LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBhdHRyaWJ1dGUgKnZsdl9hdHRyc1tdID0gewo+ICAgCSZkZXZfYXR0cl9ndF9SUDFfZnJlcV9t aHouYXR0ciwKPiAgIAkmZGV2X2F0dHJfZ3RfUlBuX2ZyZXFfbWh6LmF0dHIsCj4gICAJJmRldl9h dHRyX3Zsdl9ycGVfZnJlcV9taHouYXR0ciwKPiArCSZkZXZfYXR0cl9hbGxvd19keW5hbWljX3Nz ZXUuYXR0ciwKPiAgIAlOVUxMLAo+ICAgfTsKPiAgIAo+IApfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9pbnRlbC1nZngK