From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomasz Lis Subject: [PATCH v5] drm/i915: Add IOCTL Param to control data port coherency. Date: Thu, 12 Jul 2018 17:10:03 +0200 Message-ID: <1531408203-3888-1-git-send-email-tomasz.lis@intel.com> References: <1521463055-5325-2-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 mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id B5C1A6E01F for ; Thu, 12 Jul 2018 15:10:14 +0000 (UTC) In-Reply-To: <1521463055-5325-2-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+IChESVNBQkxFIENPSEVSRU5DWSlrZXJuX3dvcmtlciAtPiAuLi4KCnYyOiBG aXhlZCBjb21waWxhdGlvbiB3YXJuaW5nLgp2MzogUmVmYWN0b3JlZCB0aGUgcGF0Y2ggdG8gYWRk IElPQ1RMIGluc3RlYWQgb2YgZXhlYyBmbGFnLgp2NDogUmVuYW1lZCBhbmQgZG9jdW1lbnRlZCB0 aGUgQVBJIGZsYWcuIFVzZWQgc3RyaWN0IHZhbHVlcy4KICAgIFJlbW92ZWQgcmVkdW5kYW50IEdF TV9XQVJOX09OKClzLiBJbXByb3ZlZCB0byBjb2Rpbmcgc3RhbmRhcmQuCiAgICBJbnRyb2R1Y2Vk IGEgbWFjcm8gZm9yIGNoZWNraW5nIHdoZXRoZXIgaGFyZHdhcmUgc3VwcG9ydHMgdGhlIGZlYXR1 cmUuCnY1OiBSZW5hbWVkIHNvbWUgbG9jYWxzLiBNYWRlIHRoZSBmbGFnIHdyaXRlIHRvIGJlIGxh enkuCiAgICBVcGRhdGVkIGNvbW1lbnRzIHRvIHJlbW92ZSBtaXNjb25jZXB0aW9ucy4gQWRkZWQg Z2VuMTEgc3VwcG9ydC4KCkNjOiBKb29uYXMgTGFodGluZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51 eC5pbnRlbC5jb20+CkNjOiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29t PgpDYzogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBNaWNoYWwg V2luaWFyc2tpIDxtaWNoYWwud2luaWFyc2tpQGludGVsLmNvbT4KCkJzcGVjOiAxMTQxOQpCc3Bl YzogMTkxNzUKU2lnbmVkLW9mZi1ieTogVG9tYXN6IExpcyA8dG9tYXN6Lmxpc0BpbnRlbC5jb20+ Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgICAgIHwgIDEgKwog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jICAgIHwgMjkgKysrKysrKysr KysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5oICAgIHwgMTcg KysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgfCAg NiArKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAgICAgICAgfCA1NSAr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2xyYy5oICAgICAgICAgICB8ICA0ICsrKwogaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oICAg ICAgICAgICAgICAgIHwgIDcgKysrKwogNyBmaWxlcyBjaGFuZ2VkLCAxMTUgaW5zZXJ0aW9ucygr KSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCAwMWRkMjk4Li43 MzE5MmUxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTI1MjQsNiArMjUyNCw3IEBAIGlu dGVsX2luZm8oY29uc3Qgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogI2RlZmlu ZSBIQVNfRURSQU0oZGV2X3ByaXYpCSghISgoZGV2X3ByaXYpLT5lZHJhbV9jYXAgJiBFRFJBTV9F TkFCTEVEKSkKICNkZWZpbmUgSEFTX1dUKGRldl9wcml2KQkoKElTX0hBU1dFTEwoZGV2X3ByaXYp IHx8IFwKIAkJCQkgSVNfQlJPQURXRUxMKGRldl9wcml2KSkgJiYgSEFTX0VEUkFNKGRldl9wcml2 KSkKKyNkZWZpbmUgSEFTX0RBVEFfUE9SVF9DT0hFUkVOQ1koZGV2X3ByaXYpCShJTlRFTF9HRU4o ZGV2X3ByaXYpID49IDkpCiAKICNkZWZpbmUgSFdTX05FRURTX1BIWVNJQ0FMKGRldl9wcml2KQko KGRldl9wcml2KS0+aW5mby5od3NfbmVlZHNfcGh5c2ljYWwpCiAKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX2NvbnRleHQuYwppbmRleCBiMTA3NzBjLi5iNWI2M2FjIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCkBAIC03ODQsNiArNzg0LDcgQEAgaW50IGk5MTVf Z2VtX2NvbnRleHRfZGVzdHJveV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpk YXRhLAogaW50IGk5MTVfZ2VtX2NvbnRleHRfZ2V0cGFyYW1faW9jdGwoc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgdm9pZCAqZGF0YSwKIAkJCQkgICAgc3RydWN0IGRybV9maWxlICpmaWxlKQogewor CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gdG9faTkxNShkZXYpOwogCXN0cnVjdCBk cm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdiA9IGZpbGUtPmRyaXZlcl9wcml2OwogCXN0 cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9wYXJhbSAqYXJncyA9IGRhdGE7CiAJc3RydWN0IGk5 MTVfZ2VtX2NvbnRleHQgKmN0eDsKQEAgLTgwNCwxMCArODA1LDEwIEBAIGludCBpOTE1X2dlbV9j b250ZXh0X2dldHBhcmFtX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEs CiAJY2FzZSBJOTE1X0NPTlRFWFRfUEFSQU1fR1RUX1NJWkU6CiAJCWlmIChjdHgtPnBwZ3R0KQog CQkJYXJncy0+dmFsdWUgPSBjdHgtPnBwZ3R0LT52bS50b3RhbDsKLQkJZWxzZSBpZiAodG9faTkx NShkZXYpLT5tbS5hbGlhc2luZ19wcGd0dCkKLQkJCWFyZ3MtPnZhbHVlID0gdG9faTkxNShkZXYp LT5tbS5hbGlhc2luZ19wcGd0dC0+dm0udG90YWw7CisJCWVsc2UgaWYgKGk5MTUtPm1tLmFsaWFz aW5nX3BwZ3R0KQorCQkJYXJncy0+dmFsdWUgPSBpOTE1LT5tbS5hbGlhc2luZ19wcGd0dC0+dm0u dG90YWw7CiAJCWVsc2UKLQkJCWFyZ3MtPnZhbHVlID0gdG9faTkxNShkZXYpLT5nZ3R0LnZtLnRv dGFsOworCQkJYXJncy0+dmFsdWUgPSBpOTE1LT5nZ3R0LnZtLnRvdGFsOwogCQlicmVhazsKIAlj YXNlIEk5MTVfQ09OVEVYVF9QQVJBTV9OT19FUlJPUl9DQVBUVVJFOgogCQlhcmdzLT52YWx1ZSA9 IGk5MTVfZ2VtX2NvbnRleHRfbm9fZXJyb3JfY2FwdHVyZShjdHgpOwpAQCAtODE4LDYgKzgxOSwx MiBAQCBpbnQgaTkxNV9nZW1fY29udGV4dF9nZXRwYXJhbV9pb2N0bChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCB2b2lkICpkYXRhLAogCWNhc2UgSTkxNV9DT05URVhUX1BBUkFNX1BSSU9SSVRZOgog CQlhcmdzLT52YWx1ZSA9IGN0eC0+c2NoZWQucHJpb3JpdHk7CiAJCWJyZWFrOworCWNhc2UgSTkx NV9DT05URVhUX1BBUkFNX0RBVEFfUE9SVF9DT0hFUkVOQ1k6CisJCWlmICghSEFTX0RBVEFfUE9S VF9DT0hFUkVOQ1koaTkxNSkpCisJCQlyZXQgPSAtRU5PREVWOworCQllbHNlCisJCQlhcmdzLT52 YWx1ZSA9IGk5MTVfZ2VtX2NvbnRleHRfaXNfZGF0YV9wb3J0X2NvaGVyZW50X3JlcXVlc3RlZChj dHgpOworCQlicmVhazsKIAlkZWZhdWx0OgogCQlyZXQgPSAtRUlOVkFMOwogCQlicmVhazsKQEAg LTgzMCw2ICs4MzcsNyBAQCBpbnQgaTkxNV9nZW1fY29udGV4dF9nZXRwYXJhbV9pb2N0bChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogaW50IGk5MTVfZ2VtX2NvbnRleHRfc2V0 cGFyYW1faW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAkJCQkgICAg c3RydWN0IGRybV9maWxlICpmaWxlKQogeworCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1 ID0gdG9faTkxNShkZXYpOwogCXN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJp diA9IGZpbGUtPmRyaXZlcl9wcml2OwogCXN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9wYXJh bSAqYXJncyA9IGRhdGE7CiAJc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eDsKQEAgLTg4MCw3 ICs4ODgsNyBAQCBpbnQgaTkxNV9nZW1fY29udGV4dF9zZXRwYXJhbV9pb2N0bChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCiAJCQlpZiAoYXJncy0+c2l6ZSkKIAkJCQlyZXQg PSAtRUlOVkFMOwotCQkJZWxzZSBpZiAoISh0b19pOTE1KGRldiktPmNhcHMuc2NoZWR1bGVyICYg STkxNV9TQ0hFRFVMRVJfQ0FQX1BSSU9SSVRZKSkKKwkJCWVsc2UgaWYgKCEoaTkxNS0+Y2Fwcy5z Y2hlZHVsZXIgJiBJOTE1X1NDSEVEVUxFUl9DQVBfUFJJT1JJVFkpKQogCQkJCXJldCA9IC1FTk9E RVY7CiAJCQllbHNlIGlmIChwcmlvcml0eSA+IEk5MTVfQ09OVEVYVF9NQVhfVVNFUl9QUklPUklU WSB8fAogCQkJCSBwcmlvcml0eSA8IEk5MTVfQ09OVEVYVF9NSU5fVVNFUl9QUklPUklUWSkKQEAg LTg5Myw2ICs5MDEsMTkgQEAgaW50IGk5MTVfZ2VtX2NvbnRleHRfc2V0cGFyYW1faW9jdGwoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAkJfQogCQlicmVhazsKIAorCWNhc2Ug STkxNV9DT05URVhUX1BBUkFNX0RBVEFfUE9SVF9DT0hFUkVOQ1k6CisJCWlmIChhcmdzLT5zaXpl KQorCQkJcmV0ID0gLUVJTlZBTDsKKwkJZWxzZSBpZiAoIUhBU19EQVRBX1BPUlRfQ09IRVJFTkNZ KGk5MTUpKQorCQkJcmV0ID0gLUVOT0RFVjsKKwkJZWxzZSBpZiAoYXJncy0+dmFsdWUgPT0gMSkK KwkJCWk5MTVfZ2VtX2NvbnRleHRfc2V0X2RhdGFfcG9ydF9jb2hlcmVudF9yZXF1ZXN0ZWQoY3R4 KTsKKwkJZWxzZSBpZiAoYXJncy0+dmFsdWUgPT0gMCkKKwkJCWk5MTVfZ2VtX2NvbnRleHRfY2xl YXJfZGF0YV9wb3J0X2NvaGVyZW50X3JlcXVlc3RlZChjdHgpOworCQllbHNlCisJCQlyZXQgPSAt RUlOVkFMOworCQlicmVhazsKKwogCWRlZmF1bHQ6CiAJCXJldCA9IC1FSU5WQUw7CiAJCWJyZWFr OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5oCmluZGV4IGIxMTZlNDkuLjgy NmFmODQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmgKQEAgLTEyNiw2 ICsxMjYsOCBAQCBzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCB7CiAjZGVmaW5lIENPTlRFWFRfQkFO TkFCTEUJCTMKICNkZWZpbmUgQ09OVEVYVF9CQU5ORUQJCQk0CiAjZGVmaW5lIENPTlRFWFRfRk9S Q0VfU0lOR0xFX1NVQk1JU1NJT04JNQorI2RlZmluZSBDT05URVhUX0RBVEFfUE9SVF9DT0hFUkVO VF9SRVFVRVNURUQJNgorI2RlZmluZSBDT05URVhUX0RBVEFfUE9SVF9DT0hFUkVOVF9BQ1RJVkUJ NwogCiAJLyoqCiAJICogQGh3X2lkOiAtIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29udGV4 dApAQCAtMjU3LDYgKzI1OSwyMSBAQCBzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV9nZW1fY29udGV4 dF9zZXRfZm9yY2Vfc2luZ2xlX3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZ2VtXwogCV9fc2V0X2Jp dChDT05URVhUX0ZPUkNFX1NJTkdMRV9TVUJNSVNTSU9OLCAmY3R4LT5mbGFncyk7CiB9CiAKK3N0 YXRpYyBpbmxpbmUgYm9vbCBpOTE1X2dlbV9jb250ZXh0X2lzX2RhdGFfcG9ydF9jb2hlcmVudF9y ZXF1ZXN0ZWQoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCkKK3sKKwlyZXR1cm4gdGVzdF9i aXQoQ09OVEVYVF9EQVRBX1BPUlRfQ09IRVJFTlRfUkVRVUVTVEVELCAmY3R4LT5mbGFncyk7Cit9 CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBpOTE1X2dlbV9jb250ZXh0X3NldF9kYXRhX3BvcnRfY29o ZXJlbnRfcmVxdWVzdGVkKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgpCit7CisJX19zZXRf Yml0KENPTlRFWFRfREFUQV9QT1JUX0NPSEVSRU5UX1JFUVVFU1RFRCwgJmN0eC0+ZmxhZ3MpOwor fQorCitzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV9nZW1fY29udGV4dF9jbGVhcl9kYXRhX3BvcnRf Y29oZXJlbnRfcmVxdWVzdGVkKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgpCit7CisJX19j bGVhcl9iaXQoQ09OVEVYVF9EQVRBX1BPUlRfQ09IRVJFTlRfUkVRVUVTVEVELCAmY3R4LT5mbGFn cyk7Cit9CisKIHN0YXRpYyBpbmxpbmUgYm9vbCBpOTE1X2dlbV9jb250ZXh0X2lzX2RlZmF1bHQo Y29uc3Qgc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmMpCiB7CiAJcmV0dXJuIGMtPnVzZXJfaGFu ZGxlID09IERFRkFVTFRfQ09OVEVYVF9IQU5ETEU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9leGVjYnVmZmVyLmMKaW5kZXggM2YwYzYxMi4uNjRhN2NkNCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwpAQCAtMjM2MSw2ICsyMzYxLDEyIEBAIGk5 MTVfZ2VtX2RvX2V4ZWNidWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJZ290byBlcnJf YmF0Y2hfdW5waW47CiAJfQogCisJLyogRW1pdCB0aGUgc3dpdGNoIG9mIGRhdGEgcG9ydCBjb2hl cmVuY3kgc3RhdGUgaWYgbmVlZGVkICovCisJZXJyID0gaW50ZWxfbHJfY29udGV4dF9tb2RpZnlf ZGF0YV9wb3J0X2NvaGVyZW5jeShlYi5yZXF1ZXN0LAorCQkgICAgIGk5MTVfZ2VtX2NvbnRleHRf aXNfZGF0YV9wb3J0X2NvaGVyZW50X3JlcXVlc3RlZChlYi5jdHgpKTsKKwlpZiAoR0VNX1dBUk5f T04oZXJyKSkKKwkJRFJNX0RFQlVHKCJEYXRhIFBvcnQgQ29oZXJlbmN5IHRvZ2dsZSBmYWlsZWQs IGtlZXBpbmcgb2xkIHNldHRpbmcuXG4iKTsKKwogCWlmIChpbl9mZW5jZSkgewogCQllcnIgPSBp OTE1X3JlcXVlc3RfYXdhaXRfZG1hX2ZlbmNlKGViLnJlcXVlc3QsIGluX2ZlbmNlKTsKIAkJaWYg KGVyciA8IDApCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCmluZGV4IDM1ZDM3YWYuLmZjZWUwM2Qg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jCkBAIC0yNTksNiArMjU5LDYxIEBAIGludGVsX2xy X2NvbnRleHRfZGVzY3JpcHRvcl91cGRhdGUoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwK IAljZS0+bHJjX2Rlc2MgPSBkZXNjOwogfQogCitzdGF0aWMgaW50IGVtaXRfc2V0X2RhdGFfcG9y dF9jb2hlcmVuY3koc3RydWN0IGk5MTVfcmVxdWVzdCAqcnEsIGJvb2wgZW5hYmxlKQoreworCXUz MiAqY3M7CisJaTkxNV9yZWdfdCByZWc7CisKKwlHRU1fQlVHX09OKHJxLT5lbmdpbmUtPmNsYXNz ICE9IFJFTkRFUl9DTEFTUyk7CisJR0VNX0JVR19PTihJTlRFTF9HRU4ocnEtPmk5MTUpIDwgOSk7 CisKKwljcyA9IGludGVsX3JpbmdfYmVnaW4ocnEsIDQpOworCWlmIChJU19FUlIoY3MpKQorCQly ZXR1cm4gUFRSX0VSUihjcyk7CisKKwlpZiAoSU5URUxfR0VOKHJxLT5pOTE1KSA+PSAxMSkKKwkJ cmVnID0gSUNMX0hEQ19NT0RFOworCWVsc2UgaWYgKElOVEVMX0dFTihycS0+aTkxNSkgPj0gMTAp CisJCXJlZyA9IENOTF9IRENfQ0hJQ0tFTjA7CisJZWxzZQorCQlyZWcgPSBIRENfQ0hJQ0tFTjA7 CisKKwkqY3MrKyA9IE1JX0xPQURfUkVHSVNURVJfSU1NKDEpOworCSpjcysrID0gaTkxNV9tbWlv X3JlZ19vZmZzZXQocmVnKTsKKwkvKiBFbmFibGluZyBjb2hlcmVuY3kgbWVhbnMgZGlzYWJsaW5n IHRoZSBiaXQgd2hpY2ggZm9yY2VzIGl0IG9mZiAqLworCWlmIChlbmFibGUpCisJCSpjcysrID0g X01BU0tFRF9CSVRfRElTQUJMRShIRENfRk9SQ0VfTk9OX0NPSEVSRU5UKTsKKwllbHNlCisJCSpj cysrID0gX01BU0tFRF9CSVRfRU5BQkxFKEhEQ19GT1JDRV9OT05fQ09IRVJFTlQpOworCSpjcysr ID0gTUlfTk9PUDsKKworCWludGVsX3JpbmdfYWR2YW5jZShycSwgY3MpOworCisJcmV0dXJuIDA7 Cit9CisKK2ludAoraW50ZWxfbHJfY29udGV4dF9tb2RpZnlfZGF0YV9wb3J0X2NvaGVyZW5jeShz dHJ1Y3QgaTkxNV9yZXF1ZXN0ICpycSwKKwkJCQkJICAgIGJvb2wgZW5hYmxlKQoreworCXN0cnVj dCBpOTE1X2dlbV9jb250ZXh0ICpjdHggPSBycS0+Z2VtX2NvbnRleHQ7CisJaW50IHJldDsKKwor CWlmICh0ZXN0X2JpdChDT05URVhUX0RBVEFfUE9SVF9DT0hFUkVOVF9BQ1RJVkUsICZjdHgtPmZs YWdzKSA9PSBlbmFibGUpCisJCXJldHVybiAwOworCisJcmV0ID0gZW1pdF9zZXRfZGF0YV9wb3J0 X2NvaGVyZW5jeShycSwgZW5hYmxlKTsKKworCWlmICghcmV0KSB7CisJCWlmIChlbmFibGUpCisJ CQlfX3NldF9iaXQoQ09OVEVYVF9EQVRBX1BPUlRfQ09IRVJFTlRfQUNUSVZFLCAmY3R4LT5mbGFn cyk7CisJCWVsc2UKKwkJCV9fY2xlYXJfYml0KENPTlRFWFRfREFUQV9QT1JUX0NPSEVSRU5UX0FD VElWRSwgJmN0eC0+ZmxhZ3MpOworCX0KKworICAgICAgIHJldHVybiByZXQ7Cit9CisKIHN0YXRp YyBzdHJ1Y3QgaTkxNV9wcmlvbGlzdCAqCiBsb29rdXBfcHJpb2xpc3Qoc3RydWN0IGludGVsX2Vu Z2luZV9jcyAqZW5naW5lLCBpbnQgcHJpbykKIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2xyYy5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmgKaW5k ZXggMTU5MzE5NC4uMjBlODY2NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHJjLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmgKQEAgLTEwNCw0 ICsxMDQsOCBAQCBzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dDsKIAogdm9pZCBpbnRlbF9scl9jb250 ZXh0X3Jlc3VtZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpOwogCitpbnQKK2lu dGVsX2xyX2NvbnRleHRfbW9kaWZ5X2RhdGFfcG9ydF9jb2hlcmVuY3koc3RydWN0IGk5MTVfcmVx dWVzdCAqcnEsCisJCQkJCSAgICBib29sIGVuYWJsZSk7CisKICNlbmRpZiAvKiBfSU5URUxfTFJD X0hfICovCmRpZmYgLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggYi9pbmNsdWRl L3VhcGkvZHJtL2k5MTVfZHJtLmgKaW5kZXggN2Y1NjM0Yy4uMGE0ZTMxZiAxMDA2NDQKLS0tIGEv aW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oCisrKyBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9k cm0uaApAQCAtMTQ1Niw2ICsxNDU2LDEzIEBAIHN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9w YXJhbSB7CiAjZGVmaW5lICAgSTkxNV9DT05URVhUX01BWF9VU0VSX1BSSU9SSVRZCTEwMjMgLyog aW5jbHVzaXZlICovCiAjZGVmaW5lICAgSTkxNV9DT05URVhUX0RFRkFVTFRfUFJJT1JJVFkJCTAK ICNkZWZpbmUgICBJOTE1X0NPTlRFWFRfTUlOX1VTRVJfUFJJT1JJVFkJLTEwMjMgLyogaW5jbHVz aXZlICovCisvKgorICogV2hlbiBkYXRhIHBvcnQgbGV2ZWwgY29oZXJlbmN5IGlzIGVuYWJsZWQs IHRoZSBHUFUgd2lsbCB1cGRhdGUgbWVtb3J5CisgKiBidWZmZXJzIHNoYXJlZCB3aXRoIENQVSwg YnkgZm9yY2luZyBpbnRlcm5hbCBjYWNoZSB1bml0cyB0byBzZW5kIG1lbW9yeQorICogd3JpdGVz IHRvIGhpZ2hlciBsZXZlbCBjYWNoZXMgZmFzdGVyLiBFbmFibGluZyBkYXRhIHBvcnQgY29oZXJl bmN5IGhhcworICogcGVyZm9ybWFuY2UgY29zdC4KKyAqLworI2RlZmluZSBJOTE1X0NPTlRFWFRf UEFSQU1fREFUQV9QT1JUX0NPSEVSRU5DWQkweDcKIAlfX3U2NCB2YWx1ZTsKIH07CiAKLS0gCjIu Ny40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRl bC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK