From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomasz Lis Subject: [PATCH v1] drm/i915: Add IOCTL Param to control data port coherency. Date: Wed, 20 Jun 2018 17:03:07 +0200 Message-ID: <1529506987-16108-2-git-send-email-tomasz.lis@intel.com> References: <1521463055-5325-2-git-send-email-tomasz.lis@intel.com> <1529506987-16108-1-git-send-email-tomasz.lis@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9CE6F6E142 for ; Wed, 20 Jun 2018 15:03:11 +0000 (UTC) In-Reply-To: <1529506987-16108-1-git-send-email-tomasz.lis@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: bartosz.dunajski@intel.com List-Id: intel-gfx@lists.freedesktop.org VGhlIHBhdGNoIGFkZHMgYSBwYXJhbWV0ZXIgdG8gY29udHJvbCB0aGUgZGF0YSBwb3J0IGNvaGVy ZW5jeSBmdW5jdGlvbmFsaXR5Cm9uIGEgcGVyLWNvbnRleHQgbGV2ZWwuIFdoZW4gdGhlIElPQ1RM IGlzIGNhbGxlZCwgYSBjb21tYW5kIHRvIHN3aXRjaCBkYXRhCnBvcnQgY29oZXJlbmN5IHN0YXRl IGlzIGFkZGVkIHRvIHRoZSBvcmRlcmVkIGxpc3QuIEFsbCBwcmlvciByZXF1ZXN0cyBhcmUKZXhl Y3V0ZWQgb24gb2xkIGNvaGVyZW5jeSBzZXR0aW5ncywgYW5kIGFsbCBleGVjIHJlcXVlc3RzIGFm dGVyIHRoZSBJT0NUTAp3aWxsIHVzZSBuZXcgc2V0dGluZ3MuCgpSYXRpb25hbGU6CgpUaGUgT3Bl bkNMIGRyaXZlciBkZXZlbHBlcnMgcmVxdWVzdGVkIGEgZnVuY3Rpb25hbGl0eSB0byBjb250cm9s IGNhY2hlCmNvaGVyZW5jeSBhdCBkYXRhIHBvcnQgbGV2ZWwuIEtlZXBpbmcgdGhlIGNvaGVyZW5j eSBhdCB0aGF0IGxldmVsIGlzIGRpc2FibGVkCmJ5IGRlZmF1bHQgZHVlIHRvIGl0cyBwZXJmb3Jt YW5jZSBjb3N0cy4gT3BlbkNMIGRyaXZlciBpcyBwbGFubmluZyB0bwplbmFibGUgaXQgZm9yIGEg c21hbGwgc3Vic2V0IG9mIHN1Ym1pc3Npb25zLCB3aGVuIHN1Y2ggZnVuY3Rpb25hbGl0eSBpcwpy ZXF1aXJlZC4gQmVsb3cgYXJlIGFuc3dlcnMgdG8gYmFzaWMgcXVlc3Rpb24gZXhwbGFpbmluZyBi YWNrZ3JvdW5kCm9mIHRoZSBmdW5jdGlvbmFsaXR5IGFuZCByZWFzb25pbmcgZm9yIHRoZSBwcm9w b3NlZCBpbXBsZW1lbnRhdGlvbjoKCjEuIFdoeSBkbyB3ZSBuZWVkIGEgY29oZXJlbmN5IGVuYWJs ZS9kaXNhYmxlIHN3aXRjaCBmb3IgbWVtb3J5IHRoYXQgaXMgc2hhcmVkCmJldHdlZW4gQ1BVIGFu ZCBHRU4gKEdQVSk/CgpNZW1vcnkgY29oZXJlbmN5IGJldHdlZW4gQ1BVIGFuZCBHRU4sIHdoaWxl IGJlaW5nIGEgZ3JlYXQgZmVhdHVyZSB0aGF0IGVuYWJsZXMKQ0xfTUVNX1NWTV9GSU5FX0dSQUlO X0JVRkZFUiBPQ0wgY2FwYWJpbGl0eSBvbiBJbnRlbCBHRU4gYXJjaGl0ZWN0dXJlLCBhZGRzCm92 ZXJoZWFkIHJlbGF0ZWQgdG8gdHJhY2tpbmcgKHNub29waW5nKSBtZW1vcnkgaW5zaWRlIGRpZmZl cmVudCBjYWNoZSB1bml0cwooTDEkLCBMMiQsIEwzJCwgTExDJCwgZXRjLikuIEF0IHRoZSBzYW1l IHRpbWUsIG1pbm9yaXR5IG9mIG1vZGVybiBPQ0wKYXBwbGljYXRpb25zIGFjdHVhbGx5IHVzZSBD TF9NRU1fU1ZNX0ZJTkVfR1JBSU5fQlVGRkVSIChhbmQgaGVuY2UgcmVxdWlyZQptZW1vcnkgY29o ZXJlbmN5IGJldHdlZW4gQ1BVIGFuZCBHUFUpLiBUaGUgZ29hbCBvZiBjb2hlcmVuY3kgZW5hYmxl L2Rpc2FibGUKc3dpdGNoIGlzIHRvIHJlbW92ZSBvdmVyaGVhZCBvZiBtZW1vcnkgY29oZXJlbmN5 IHdoZW4gbWVtb3J5IGNvaGVyZW5jeSBpcyBub3QKbmVlZGVkLgoKMi4gV2h5IGRvIHdlIG5lZWQg YSBnbG9iYWwgY29oZXJlbmN5IHN3aXRjaD8KCkluIG9yZGVyIHRvIHN1cHBvcnQgSS9PIGNvbW1h bmRzIGZyb20gd2l0aGluIEVVcyAoRXhlY3V0aW9uIFVuaXRzKSwgSW50ZWwgR0VOCklTQSAoR0VO IEluc3RydWN0aW9uIFNldCBBc3NlbWJseSkgY29udGFpbnMgZGVkaWNhdGVkICJzZW5kIiBpbnN0 cnVjdGlvbnMuClRoZXNlIHNlbmQgaW5zdHJ1Y3Rpb25zIHByb3ZpZGUgc2V2ZXJhbCBhZGRyZXNz aW5nIG1vZGVscy4gT25lIG9mIHRoZXNlCmFkZHJlc3NpbmcgbW9kZWxzIChuYW1lZCAic3RhdGVs ZXNzIikgcHJvdmlkZXMgbW9zdCBmbGV4aWJsZSBJL08gdXNpbmcgcGxhaW4KdmlydHVhbCBhZGRy ZXNzZXMgKGFzIG9wcG9zZWQgdG8gYnVmZmVyX2hhbmRsZStvZmZzZXQgbW9kZWxzKS4gVGhpcyAi c3RhdGVsZXNzIgptb2RlbCBpcyBzaW1pbGFyIHRvIHJlZ3VsYXIgbWVtb3J5IGxvYWQvc3RvcmUg b3BlcmF0aW9ucyBhdmFpbGFibGUgb24gdHlwaWNhbApDUFVzLiBTaW5jZSB0aGlzIG1vZGVsIHBy b3ZpZGVzIEkvTyB1c2luZyBhcmJpdHJhcnkgdmlydHVhbCBhZGRyZXNzZXMsIGl0CmVuYWJsZXMg YWxnb3JpdGhtaWMgZGVzaWducyB0aGF0IGFyZSBiYXNlZCBvbiBwb2ludGVyLXRvLXBvaW50ZXIg KGUuZy4gYnVmZmVyCm9mIHBvaW50ZXJzKSBjb25jZXB0cy4gRm9yIGluc3RhbmNlLCBpdCBhbGxv d3MgY3JlYXRpbmcgdHJlZS1saWtlIGRhdGEKc3RydWN0dXJlcyBzdWNoIGFzOgogICAgICAgICAg ICAgICAgICAgX19fX19fX19fX19fX19fXwogICAgICAgICAgICAgICAgICB8ICAgICAgTk9ERTEg ICAgIHwKICAgICAgICAgICAgICAgICAgfCB1aW50NjRfdCBkYXRhICB8CiAgICAgICAgICAgICAg ICAgICstLS0tLS0tLS0tLS0tLS0tfAogICAgICAgICAgICAgICAgICB8IE5PREUqICB8ICBOT0RF KnwKICAgICAgICAgICAgICAgICAgKy0tLS0tLS0tKy0tLS0tLS0rCiAgICAgICAgICAgICAgICAg ICAgLyAgICAgICAgICAgICAgXAogICBfX19fX19fX19fX19fX19fLyAgICAgICAgICAgICAgICBc X19fX19fX19fX19fX19fXwogIHwgICAgICBOT0RFMiAgICAgfCAgICAgICAgICAgICAgICB8ICAg ICAgTk9ERTMgICAgIHwKICB8IHVpbnQ2NF90IGRhdGEgIHwgICAgICAgICAgICAgICAgfCB1aW50 NjRfdCBkYXRhICB8CiAgKy0tLS0tLS0tLS0tLS0tLS18ICAgICAgICAgICAgICAgICstLS0tLS0t LS0tLS0tLS0tfAogIHwgTk9ERSogIHwgIE5PREUqfCAgICAgICAgICAgICAgICB8IE5PREUqICB8 ICBOT0RFKnwKICArLS0tLS0tLS0rLS0tLS0tLSsgICAgICAgICAgICAgICAgKy0tLS0tLS0tKy0t LS0tLS0rCgpQbGVhc2Ugbm90ZSB0aGF0IHBvaW50ZXJzIGluc2lkZSBzdWNoIHN0cnVjdHVyZXMg Y2FuIHBvaW50IHRvIG1lbW9yeSBsb2NhdGlvbnMKaW4gZGlmZmVyZW50IE9DTCBhbGxvY2F0aW9u cyAgLSBlLmcuIE5PREUxIGFuZCBOT0RFMiBjYW4gcmVzaWRlIGluIG9uZSBPQ0wKYWxsb2NhdGlv biB3aGlsZSBOT0RFMyByZXNpZGVzIGluIGEgY29tcGxldGVseSBzZXBhcmF0ZSBPQ0wgYWxsb2Nh dGlvbi4KQWRkaXRpb25hbGx5LCBzdWNoIHBvaW50ZXJzIGNhbiBiZSBzaGFyZWQgd2l0aCBDUFUg KGkuZS4gdXNpbmcgU1ZNIC0gU2hhcmVkClZpcnR1YWwgTWVtb3J5IGZlYXR1cmUpLiBVc2luZyBw b2ludGVycyBmcm9tIGRpZmZlcmVudCBhbGxvY2F0aW9ucyBkb2Vzbid0CmFmZmVjdCB0aGUgc3Rh dGVsZXNzIGFkZHJlc3NpbmcgbW9kZWwgd2hpY2ggZXZlbiBhbGxvd3Mgc2NhdHRlcmVkIHJlYWRp bmcgZnJvbQpkaWZmZXJlbnQgYWxsb2NhdGlvbnMgYXQgdGhlIHNhbWUgdGltZSAoaS5lLiBieSB1 dGlsaXppbmcgU0lNRC1uYXR1cmUgb2Ygc2VuZAppbnN0cnVjdGlvbnMpLgoKV2hlbiBpdCBjb21l cyB0byBjb2hlcmVuY3kgcHJvZ3JhbW1pbmcsIHNlbmQgaW5zdHJ1Y3Rpb25zIGluIHN0YXRlbGVz cyBtb2RlbApjYW4gYmUgZW5jb2RlZCAoYXQgSVNBIGxldmVsKSB0byBlaXRoZXIgdXNlIG9yIGRp c2FibGUgY29oZXJlbmN5LiBIb3dldmVyLCBmb3IKZ2VuZXJpYyBPQ0wgYXBwbGljYXRpb25zIChz dWNoIGFzIGV4YW1wbGUgd2l0aCB0cmVlLWxpa2UgZGF0YSBzdHJ1Y3R1cmUpLCBPQ0wKY29tcGls ZXIgaXMgbm90IGFibGUgdG8gZGV0ZXJtaW5lIG9yaWdpbiBvZiBtZW1vcnkgcG9pbnRlZCB0byBi eSBhbiBhcmJpdHJhcnkKcG9pbnRlciAtIGkuZS4gaXMgbm90IGFibGUgdG8gdHJhY2sgZ2l2ZW4g cG9pbnRlciBiYWNrIHRvIGEgc3BlY2lmaWMKYWxsb2NhdGlvbi4gQXMgc3VjaCwgaXQncyBub3Qg YWJsZSB0byBkZWNpZGUgd2hldGhlciBjb2hlcmVuY3kgaXMgbmVlZGVkIG9yIG5vdApmb3Igc3Bl Y2lmaWMgcG9pbnRlciAob3IgZm9yIHNwZWNpZmljIEkvTyBpbnN0cnVjdGlvbikuIEFzIGEgcmVz dWx0LCBjb21waWxlcgplbmNvZGVzIGFsbCBzdGF0ZWxlc3Mgc2VuZHMgYXMgY29oZXJlbnQgKGRv aW5nIG90aGVyd2lzZSB3b3VsZCBsZWFkIHRvCmZ1bmN0aW9uYWwgaXNzdWVzIHJlc3VsdGluZyBm cm9tIGRhdGEgY29ycnVwdGlvbikuIFBsZWFzZSBub3RlIHRoYXQgaXQgd291bGQgYmUKcG9zc2li bGUgdG8gd29ya2Fyb3VuZCB0aGlzIChlLmcuIGJhc2VkIG9uIGFsbG9jYXRpb25zIG1hcCBhbmQg cG9pbnRlciBib3VuZHMKY2hlY2tpbmcgcHJpb3IgdG8gZWFjaCBJL08gaW5zdHJ1Y3Rpb24pIGJ1 dCB0aGUgcGVyZm9ybWFuY2UgY29zdCBvZiBzdWNoCndvcmthcm91bmQgd291bGQgYmUgbWFueSB0 aW1lcyBncmVhdGVyIHRoYW4gdGhlIGNvc3Qgb2Yga2VlcGluZyBjb2hlcmVuY3kKYWx3YXlzIGVu YWJsZWQuIEFzIHN1Y2gsIGVuYWJsaW5nL2Rpc2FibGluZyBtZW1vcnkgY29oZXJlbmN5IGF0IEdF TiBJU0EgbGV2ZWwKaXMgbm90IGZlYXNpYmxlIGFuZCBhbHRlcm5hdGl2ZSBtZXRob2QgaXMgbmVl ZGVkLgoKU3VjaCBhbHRlcm5hdGl2ZSBzb2x1dGlvbiBpcyB0byBoYXZlIGEgZ2xvYmFsIGNvaGVy ZW5jeSBzd2l0Y2ggdGhhdCBhbGxvd3MKZGlzYWJsaW5nIGNvaGVyZW5jeSBmb3Igc2luZ2xlICh0 aG91Z2ggZW50aXJlKSBHUFUgc3VibWlzc2lvbi4gVGhpcyBpcwpiZW5lZmljaWFsIGJlY2F1c2Ug dGhpcyB3YXkgd2U6CiogY2FuIGVuYWJsZSAoYW5kIHBheSBmb3IpIGNvaGVyZW5jeSBvbmx5IGlu IHN1Ym1pc3Npb25zIHRoYXQgYWN0dWFsbHkgbmVlZApjb2hlcmVuY3kgKHN1Ym1pc3Npb25zIHRo YXQgdXNlIENMX01FTV9TVk1fRklORV9HUkFJTl9CVUZGRVIgcmVzb3VyY2VzKQoqIGRvbid0IGNh cmUgYWJvdXQgY29oZXJlbmN5IGF0IEdFTiBJU0EgZ3JhbnVsYXJpdHkgKG5vIHBlcmZvcm1hbmNl IGltcGFjdCkKCjMuIFdpbGwgY29oZXJlbmN5IHN3aXRjaCBiZSB1c2VkIGZyZXF1ZW50bHk/CgpU aGVyZSBhcmUgc2NlbmFyaW9zIHRoYXQgd2lsbCByZXF1aXJlIGZyZXF1ZW50IHRvZ2dsaW5nIG9m IHRoZSBjb2hlcmVuY3kKc3dpdGNoLgpFLmcuIGFuIGFwcGxpY2F0aW9uIGhhcyB0d28gT0NMIGNv bXB1dGUga2VybmVsczoga2Vybl9tYXN0ZXIgYW5kIGtlcm5fd29ya2VyLgprZXJuX21hc3RlciB1 c2VzLCBjb25jdXJyZW50bHkgd2l0aCBDUFUsIHNvbWUgZmluZSBncmFpbiBTVk0gcmVzb3VyY2Vz CihDTF9NRU1fU1ZNX0ZJTkVfR1JBSU5fQlVGRkVSKS4gVGhlc2UgcmVzb3VyY2VzIGNvbnRhaW4g ZGVzY3JpcHRvcnMgb2YKY29tcHV0YXRpb25hbCB3b3JrIHRoYXQgbmVlZHMgdG8gYmUgZXhlY3V0 ZWQuIGtlcm5fbWFzdGVyIGFuYWx5emVzIGluY29taW5nCndvcmsgZGVzY3JpcHRvcnMgYW5kIHBv cHVsYXRlcyBhIHBsYWluIE9DTCBidWZmZXIgKG5vbi1maW5lLWdyYWluKSB3aXRoIHBheWxvYWQK Zm9yIGtlcm5fd29ya2VyLiBPbmNlIGtlcm5fbWFzdGVyIGlzIGRvbmUsIGtlcm5fd29ya2VyIGtp Y2tzLWluIGFuZCBwcm9jZXNzZXMKdGhlIHBheWxvYWQgdGhhdCBrZXJuX21hc3RlciBwcm9kdWNl ZC4gVGhlc2UgdHdvIGtlcm5lbHMgd29yayBpbiBhIGxvb3AsIG9uZQphZnRlciBhbm90aGVyLiBT aW5jZSBvbmx5IGtlcm5fbWFzdGVyIHJlcXVpcmVzIGNvaGVyZW5jeSwga2Vybl93b3JrZXIgc2hv dWxkCm5vdCBiZSBmb3JjZWQgdG8gcGF5IGZvciBpdC4gVGhpcyBtZWFucyB0aGF0IHdlIG5lZWQg dG8gaGF2ZSB0aGUgYWJpbGl0eSB0bwp0b2dnbGUgY29oZXJlbmN5IHN3aXRjaCBvbiBvciBvZmYg cGVyIGVhY2ggR1BVIHN1Ym1pc3Npb246CihFTkFCTEUgQ09IRVJFTkNZKSBrZXJuX21hc3RlciAt PiAoRElTQUJMRSBDT0hFUkVOQ1kpa2Vybl93b3JrZXIgLT4gKEVOQUJMRQpDT0hFUkVOQ1kpIGtl cm5fbWFzdGVyIC0+IChESVNBQkxFIENPSEVSRU5DWSlrZXJuX3dvcmtlciAtPiAuLi4KCkNjOiBK b29uYXMgTGFodGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+CkNjOiBDaHJp cyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KQ2M6IE1pY2hhbCBXaW5pYXJza2kg PG1pY2hhbC53aW5pYXJza2lAaW50ZWwuY29tPgoKQnNwZWM6IDExNDE5ClNpZ25lZC1vZmYtYnk6 IFRvbWFzeiBMaXMgPHRvbWFzei5saXNAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX2NvbnRleHQuYyB8IDQxICsrKysrKysrKysrKysrKysrKysrKysrKysrCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmggfCAgNiArKysrCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAgICAgfCA1MSArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oICAgICAgICB8 ICA0ICsrKwogaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oICAgICAgICAgICAgIHwgIDEgKwog NSBmaWxlcyBjaGFuZ2VkLCAxMDMgaW5zZXJ0aW9ucygrKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX2NvbnRleHQuYwppbmRleCBjY2Y0NjNhLi5lYTY1YWU2IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCkBAIC03MTEsNiArNzExLDI0IEBAIHN0YXRpYyBib29s IGNsaWVudF9pc19iYW5uZWQoc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSAqZmlsZV9wcml2 KQogCXJldHVybiBhdG9taWNfcmVhZCgmZmlsZV9wcml2LT5iYW5fc2NvcmUpID49IEk5MTVfQ0xJ RU5UX1NDT1JFX0JBTk5FRDsKIH0KIAorc3RhdGljIGludCBpOTE1X2dlbV9jb250ZXh0X3NldF9k YXRhX3BvcnRfY29oZXJlbnQoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCkKK3sKKwlpbnQg cmV0OworCXJldCA9IGludGVsX2xyX2NvbnRleHRfbW9kaWZ5X2RhdGFfcG9ydF9jb2hlcmVuY3ko Y3R4LCB0cnVlKTsKKwlpZiAoIUdFTV9XQVJOX09OKHJldCkpCisJCV9fc2V0X2JpdChDT05URVhU X0RBVEFfUE9SVF9DT0hFUkVOVCwgJmN0eC0+ZmxhZ3MpOworCXJldHVybiByZXQ7Cit9CisKK3N0 YXRpYyBpbnQgaTkxNV9nZW1fY29udGV4dF9jbGVhcl9kYXRhX3BvcnRfY29oZXJlbnQoc3RydWN0 IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCkKK3sKKwlpbnQgcmV0OworCXJldCA9IGludGVsX2xyX2Nv bnRleHRfbW9kaWZ5X2RhdGFfcG9ydF9jb2hlcmVuY3koY3R4LCBmYWxzZSk7CisJaWYgKCFHRU1f V0FSTl9PTihyZXQpKQorCQlfX2NsZWFyX2JpdChDT05URVhUX0RBVEFfUE9SVF9DT0hFUkVOVCwg JmN0eC0+ZmxhZ3MpOworCXJldHVybiByZXQ7Cit9CisKIGludCBpOTE1X2dlbV9jb250ZXh0X2Ny ZWF0ZV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQkJCSAgc3Ry dWN0IGRybV9maWxlICpmaWxlKQogewpAQCAtNzg0LDYgKzgwMiw3IEBAIGludCBpOTE1X2dlbV9j b250ZXh0X2Rlc3Ryb3lfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwK IGludCBpOTE1X2dlbV9jb250ZXh0X2dldHBhcmFtX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHZvaWQgKmRhdGEsCiAJCQkJICAgIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKIHsKKwlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGRldik7CiAJc3RydWN0IGRy bV9pOTE1X2ZpbGVfcHJpdmF0ZSAqZmlsZV9wcml2ID0gZmlsZS0+ZHJpdmVyX3ByaXY7CiAJc3Ry dWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X3BhcmFtICphcmdzID0gZGF0YTsKIAlzdHJ1Y3QgaTkx NV9nZW1fY29udGV4dCAqY3R4OwpAQCAtODE4LDYgKzgzNywxNiBAQCBpbnQgaTkxNV9nZW1fY29u dGV4dF9nZXRwYXJhbV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAog CWNhc2UgSTkxNV9DT05URVhUX1BBUkFNX1BSSU9SSVRZOgogCQlhcmdzLT52YWx1ZSA9IGN0eC0+ c2NoZWQucHJpb3JpdHk7CiAJCWJyZWFrOworCWNhc2UgSTkxNV9DT05URVhUX1BBUkFNX0NPSEVS RU5DWToKKwkJLyoKKwkJICogRU5PREVWIGlmIHRoZSBmZWF0dXJlIGlzIG5vdCBzdXBwb3J0ZWQu IFRoaXMgcmVtb3ZlcyB0aGUgbmVlZAorCQkgKiBvZiBzZXBhcmF0ZSBJU19TVVBQT1JURUQgcGFy YW1ldGVyLgorCQkgKi8KKwkJaWYgKElOVEVMX0dFTihkZXZfcHJpdikgPCA5KQorCQkJcmV0ID0g LUVOT0RFVjsKKwkJZWxzZQorCQkJYXJncy0+dmFsdWUgPSBpOTE1X2dlbV9jb250ZXh0X2lzX2Rh dGFfcG9ydF9jb2hlcmVudChjdHgpOworCQlicmVhazsKIAlkZWZhdWx0OgogCQlyZXQgPSAtRUlO VkFMOwogCQlicmVhazsKQEAgLTgzMCw2ICs4NTksNyBAQCBpbnQgaTkxNV9nZW1fY29udGV4dF9n ZXRwYXJhbV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogaW50IGk5 MTVfZ2VtX2NvbnRleHRfc2V0cGFyYW1faW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9p ZCAqZGF0YSwKIAkJCQkgICAgc3RydWN0IGRybV9maWxlICpmaWxlKQogeworCXN0cnVjdCBkcm1f aTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZGV2KTsKIAlzdHJ1Y3QgZHJtX2k5MTVf ZmlsZV9wcml2YXRlICpmaWxlX3ByaXYgPSBmaWxlLT5kcml2ZXJfcHJpdjsKIAlzdHJ1Y3QgZHJt X2k5MTVfZ2VtX2NvbnRleHRfcGFyYW0gKmFyZ3MgPSBkYXRhOwogCXN0cnVjdCBpOTE1X2dlbV9j b250ZXh0ICpjdHg7CkBAIC04OTMsNiArOTIzLDE3IEBAIGludCBpOTE1X2dlbV9jb250ZXh0X3Nl dHBhcmFtX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCX0KIAkJ YnJlYWs7CiAKKwljYXNlIEk5MTVfQ09OVEVYVF9QQVJBTV9DT0hFUkVOQ1k6CisJCWlmIChhcmdz LT5zaXplKQorCQkJcmV0ID0gLUVJTlZBTDsKKwkJZWxzZSBpZiAoSU5URUxfR0VOKGRldl9wcml2 KSA8IDkpCisJCQlyZXQgPSAtRU5PREVWOworCQllbHNlIGlmIChhcmdzLT52YWx1ZSkKKwkJCXJl dCA9IGk5MTVfZ2VtX2NvbnRleHRfc2V0X2RhdGFfcG9ydF9jb2hlcmVudChjdHgpOworCQllbHNl CisJCQlyZXQgPSBpOTE1X2dlbV9jb250ZXh0X2NsZWFyX2RhdGFfcG9ydF9jb2hlcmVudChjdHgp OworCQlicmVhazsKKwogCWRlZmF1bHQ6CiAJCXJldCA9IC1FSU5WQUw7CiAJCWJyZWFrOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5oIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5oCmluZGV4IGIxMTZlNDkuLmU4Y2NiNzAg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuaAorKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmgKQEAgLTEyNiw2ICsxMjYs NyBAQCBzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCB7CiAjZGVmaW5lIENPTlRFWFRfQkFOTkFCTEUJ CTMKICNkZWZpbmUgQ09OVEVYVF9CQU5ORUQJCQk0CiAjZGVmaW5lIENPTlRFWFRfRk9SQ0VfU0lO R0xFX1NVQk1JU1NJT04JNQorI2RlZmluZSBDT05URVhUX0RBVEFfUE9SVF9DT0hFUkVOVAk2CiAK IAkvKioKIAkgKiBAaHdfaWQ6IC0gdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBjb250ZXh0CkBA IC0yNTcsNiArMjU4LDExIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBpOTE1X2dlbV9jb250ZXh0X3Nl dF9mb3JjZV9zaW5nbGVfc3VibWlzc2lvbihzdHJ1Y3QgaTkxNV9nZW1fCiAJX19zZXRfYml0KENP TlRFWFRfRk9SQ0VfU0lOR0xFX1NVQk1JU1NJT04sICZjdHgtPmZsYWdzKTsKIH0KIAorc3RhdGlj IGlubGluZSBib29sIGk5MTVfZ2VtX2NvbnRleHRfaXNfZGF0YV9wb3J0X2NvaGVyZW50KHN0cnVj dCBpOTE1X2dlbV9jb250ZXh0ICpjdHgpCit7CisJcmV0dXJuIHRlc3RfYml0KENPTlRFWFRfREFU QV9QT1JUX0NPSEVSRU5ULCAmY3R4LT5mbGFncyk7Cit9CisKIHN0YXRpYyBpbmxpbmUgYm9vbCBp OTE1X2dlbV9jb250ZXh0X2lzX2RlZmF1bHQoY29uc3Qgc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQg KmMpCiB7CiAJcmV0dXJuIGMtPnVzZXJfaGFuZGxlID09IERFRkFVTFRfQ09OVEVYVF9IQU5ETEU7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IDMzYmM5MTQuLmM2OWRjMjYgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2xyYy5jCkBAIC0yNTgsNiArMjU4LDU3IEBAIGludGVsX2xyX2NvbnRleHRf ZGVzY3JpcHRvcl91cGRhdGUoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwKIAljZS0+bHJj X2Rlc2MgPSBkZXNjOwogfQogCitzdGF0aWMgaW50IGVtaXRfc2V0X2RhdGFfcG9ydF9jb2hlcmVu Y3koc3RydWN0IGk5MTVfcmVxdWVzdCAqcmVxLCBib29sIGVuYWJsZSkKK3sKKwl1MzIgKmNzOwor CWk5MTVfcmVnX3QgcmVnOworCisJR0VNX0JVR19PTihyZXEtPmVuZ2luZS0+Y2xhc3MgIT0gUkVO REVSX0NMQVNTKTsKKwlHRU1fQlVHX09OKElOVEVMX0dFTihyZXEtPmk5MTUpIDwgOSk7CisKKwlj cyA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCA0KTsKKwlpZiAoSVNfRVJSKGNzKSkKKwkJcmV0dXJu IFBUUl9FUlIoY3MpOworCisJaWYgKElOVEVMX0dFTihyZXEtPmk5MTUpID49IDEwKQorCQlyZWcg PSBDTkxfSERDX0NISUNLRU4wOworCWVsc2UKKwkJcmVnID0gSERDX0NISUNLRU4wOworCisJLyog RklYTUU6IHRoaXMgZmVhdHVyZSBtYXkgYmUgdW51c2VhYmxlIG9uIENOTDsgSWYgdGhpcyBjaGVj a3MgdG8gYmUKKwkgKiAgdHJ1ZSwgd2Ugc2hvdWxkIGVub2RldiBmb3IgQ05MLiAqLworCSpjcysr ID0gTUlfTE9BRF9SRUdJU1RFUl9JTU0oMSk7CisJKmNzKysgPSBpOTE1X21taW9fcmVnX29mZnNl dChyZWcpOworCS8qIEVuYWJsaW5nIGNvaGVyZW5jeSBtZWFucyBkaXNhYmxpbmcgdGhlIGJpdCB3 aGljaCBmb3JjZXMgaXQgb2ZmICovCisJaWYgKGVuYWJsZSkKKwkJKmNzKysgPSBfTUFTS0VEX0JJ VF9ESVNBQkxFKEhEQ19GT1JDRV9OT05fQ09IRVJFTlQpOworCWVsc2UKKwkJKmNzKysgPSBfTUFT S0VEX0JJVF9FTkFCTEUoSERDX0ZPUkNFX05PTl9DT0hFUkVOVCk7CisJKmNzKysgPSBNSV9OT09Q OworCisJaW50ZWxfcmluZ19hZHZhbmNlKHJlcSwgY3MpOworCisJcmV0dXJuIDA7Cit9CisKK2lu dAoraW50ZWxfbHJfY29udGV4dF9tb2RpZnlfZGF0YV9wb3J0X2NvaGVyZW5jeShzdHJ1Y3QgaTkx NV9nZW1fY29udGV4dCAqY3R4LAorCQlib29sIGVuYWJsZSkKK3sKKwlzdHJ1Y3QgaTkxNV9yZXF1 ZXN0ICpyZXE7CisJaW50IHJldDsKKworCXJlcSA9IGk5MTVfcmVxdWVzdF9hbGxvYyhjdHgtPmk5 MTUtPmVuZ2luZVtSQ1NdLCBjdHgpOworCWlmIChJU19FUlIocmVxKSkKKwkJcmV0dXJuIFBUUl9F UlIocmVxKTsKKworCXJldCA9IGVtaXRfc2V0X2RhdGFfcG9ydF9jb2hlcmVuY3kocmVxLCBlbmFi bGUpOworCisJaTkxNV9yZXF1ZXN0X2FkZChyZXEpOworCisJcmV0dXJuIHJldDsKK30KKwogc3Rh dGljIHN0cnVjdCBpOTE1X3ByaW9saXN0ICoKIGxvb2t1cF9wcmlvbGlzdChzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICplbmdpbmUsIGludCBwcmlvKQogewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfbHJjLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaApp bmRleCAxNTkzMTk0Li4yMTRlMjkxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9scmMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaApAQCAtMTA0 LDQgKzEwNCw4IEBAIHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0OwogCiB2b2lkIGludGVsX2xyX2Nv bnRleHRfcmVzdW1lKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdik7CiAKK2ludAor aW50ZWxfbHJfY29udGV4dF9tb2RpZnlfZGF0YV9wb3J0X2NvaGVyZW5jeShzdHJ1Y3QgaTkxNV9n ZW1fY29udGV4dCAqY3R4LAorCQkJCQkgICAgIGJvb2wgZW5hYmxlKTsKKwogI2VuZGlmIC8qIF9J TlRFTF9MUkNfSF8gKi8KZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaCBi L2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAppbmRleCA3ZjU2MzRjLi5mYWIwNzJmIDEwMDY0 NAotLS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2Ry bS9pOTE1X2RybS5oCkBAIC0xNDUzLDYgKzE0NTMsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2Nv bnRleHRfcGFyYW0gewogI2RlZmluZSBJOTE1X0NPTlRFWFRfUEFSQU1fTk9fRVJST1JfQ0FQVFVS RQkweDQKICNkZWZpbmUgSTkxNV9DT05URVhUX1BBUkFNX0JBTk5BQkxFCTB4NQogI2RlZmluZSBJ OTE1X0NPTlRFWFRfUEFSQU1fUFJJT1JJVFkJMHg2CisjZGVmaW5lIEk5MTVfQ09OVEVYVF9QQVJB TV9DT0hFUkVOQ1kJMHg3CiAjZGVmaW5lICAgSTkxNV9DT05URVhUX01BWF9VU0VSX1BSSU9SSVRZ CTEwMjMgLyogaW5jbHVzaXZlICovCiAjZGVmaW5lICAgSTkxNV9DT05URVhUX0RFRkFVTFRfUFJJ T1JJVFkJCTAKICNkZWZpbmUgICBJOTE1X0NPTlRFWFRfTUlOX1VTRVJfUFJJT1JJVFkJLTEwMjMg LyogaW5jbHVzaXZlICovCi0tIAoyLjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlz dGluZm8vaW50ZWwtZ2Z4Cg==