From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Paul Subject: [PATCH 2/3] drm/atomic: Add drm_atomic_state->suspend_or_resume Date: Tue, 29 Jan 2019 13:39:26 -0500 Message-ID: <20190129183928.26779-3-lyude@redhat.com> References: <20190129183928.26779-1-lyude@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20190129183928.26779-1-lyude@redhat.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, dri-devel@lists.freedesktop.org Cc: Maxime Ripard , linux-kernel@vger.kernel.org, David Airlie List-Id: intel-gfx@lists.freedesktop.org U2luY2UKCmNvbW1pdCAzOWI1MGM2MDM4NzggKCJkcm0vYXRvbWljX2hlbHBlcjogU3RvcCBtb2Rl c2V0cyBvbiB1bnJlZ2lzdGVyZWQKY29ubmVjdG9ycyBoYXJkZXIiKQoKV2UndmUgYmVlbiBmYWls aW5nIGF0b21pYyBjaGVja3MgaWYgdGhleSB0cnkgdG8gZW5hYmxlIG5ldyBkaXNwbGF5cyBvbgp1 bnJlZ2lzdGVyZWQgY29ubmVjdG9ycy4gVGhpcyBpcyBmaW5lIGV4Y2VwdCBmb3IgdGhlIG9uZSBz aXR1YXRpb24gdGhhdApicmVha3MgYXRvbWljIGFzc3VtcHRpb25zOiBzdXNwZW5kL3Jlc3VtZS4g SWYgYSBjb25uZWN0b3IgaXMKdW5yZWdpc3RlcmVkIGJlZm9yZSB3ZSBhdHRlbXB0IHRvIHJlc3Rv cmUgdGhlIGF0b21pYyBzdGF0ZSwgc29tZXRoaW5nIHdlCmVuZCB1cCBmYWlsaW5nIHRoZSBhdG9t aWMgY2hlY2sgdGhhdCBoYXBwZW5zIHdoZW4gdHJ5aW5nIHRvIHJlc3RvcmUgdGhlCnN0YXRlIGR1 cmluZyByZXN1bWUuCgpOb3JtYWxseSB0aGlzIHdvdWxkIGJlIE9LOiB3ZSB0cnkgb3VyIGJlc3Qg dG8gbWFrZSBzdXJlIHRoYXQgdGhlIGF0b21pYwpzdGF0ZSBwcmUtc3VzcGVuZCBjYW4gYmUgcmVz dG9yZWQgcG9zdC1zdXNwZW5kLCBidXQgZmFpbHVyZXMgYXQgdGhhdApwb2ludCB1c3VhbGx5IGRv bid0IGNhdXNlIHByb2JsZW1zLiBUaGF0IGlzIG9mIGNvdXJzZSwgdW50aWwgd2UKaW50cm9kdWNl ZCB0aGUgbmV3IGF0b21pYyBNU1QgVkNQSSBoZWxwZXJzOgoKW2RybTpkcm1fYXRvbWljX2hlbHBl cl9jaGVja19tb2Rlc2V0IFtkcm1fa21zX2hlbHBlcl1dIFtDUlRDOjY1OnBpcGUgQl0gYWN0aXZl IGNoYW5nZWQKW2RybTpkcm1fYXRvbWljX2hlbHBlcl9jaGVja19tb2Rlc2V0IFtkcm1fa21zX2hl bHBlcl1dIFVwZGF0aW5nIHJvdXRpbmcgZm9yIFtDT05ORUNUT1I6MTIzOkRQLTVdCltkcm06ZHJt X2F0b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldCBbZHJtX2ttc19oZWxwZXJdXSBEaXNhYmxpbmcg W0NPTk5FQ1RPUjoxMjM6RFAtNV0KW2RybTpkcm1fYXRvbWljX2dldF9wcml2YXRlX29ial9zdGF0 ZSBbZHJtXV0gQWRkZWQgbmV3IHByaXZhdGUgb2JqZWN0IDAwMDAwMDAwMjU4NDQ2MzYgc3RhdGUg MDAwMDAwMDA5ZmQyODk5YSB0byAwMDAwMDAwMDNhMTNkN2I4CldBUk5JTkc6IENQVTogNiBQSUQ6 IDEwNzAgYXQgZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYzozMTUzIGRybV9k cF9hdG9taWNfcmVsZWFzZV92Y3BpX3Nsb3RzKzB4YjkvMHgyMDAgW2RybV9rbXNfaGVscGVyXQpN b2R1bGVzIGxpbmtlZCBpbjogZnVzZSB2ZmF0IGZhdCBzbmRfaGRhX2NvZGVjX2hkbWkgc25kX2hk YV9jb2RlY19yZWFsdGVrIHNuZF9oZGFfY29kZWNfZ2VuZXJpYyBqb3lkZXYgaVRDT193ZHQgaTkx NShPKSB3bWlfYm1vZiBpbnRlbF9yYXBsIGJ0dXNiIGJ0cnRsIHg4Nl9wa2dfdGVtcF90aGVybWFs IGJ0YmNtIGJ0aW50ZWwgY29yZXRlbXAgaTJjX2FsZ29fYml0IGRybV9rbXNfaGVscGVyKE8pIGNy YzMyX3BjbG11bCBzbmRfaGRhX2ludGVsIHN5c2NvcHlhcmVhIHN5c2ZpbGxyZWN0IHNuZF9oZGFf Y29kZWMgc3lzaW1nYmx0IHNuZF9oZGFfY29yZSBibHVldG9vdGggZmJfc3lzX2ZvcHMgc25kX3Bj bSBwY3Nwa3IgZHJtKE8pIHBzbW91c2Ugc25kX3RpbWVyIG1laV9tZSBlY2RoX2dlbmVyaWMgaTJj X2k4MDEgbWVpIGkyY19jb3JlIHVjc2lfYWNwaSB0eXBlY191Y3NpIHR5cGVjIHdtaSB0aGlua3Bh ZF9hY3BpIGxlZHRyaWdfYXVkaW8gc25kIHNvdW5kY29yZSB0cG1fdGlzIHJma2lsbCB0cG1fdGlz X2NvcmUgdmlkZW8gdHBtIGFjcGlfcGFkIHBjY19jcHVmcmVxIHVhcyB1c2Jfc3RvcmFnZSBjcmMz MmNfaW50ZWwgbnZtZSBzZXJpb19yYXcgeGhjaV9wY2kgbnZtZV9jb3JlIHhoY2lfaGNkCkNQVTog NiBQSUQ6IDEwNzAgQ29tbTogZ25vbWUtc2hlbGwgVGFpbnRlZDogRyAgICAgICAgVyAgTyAgICAg IDUuMC4wLXJjMkx5dWRlLVRlc3QrICMxCkhhcmR3YXJlIG5hbWU6IExFTk9WTyAyMEw4UzJOODAw LzIwTDhTMk44MDAsIEJJT1MgTjIyRVQzNVcgKDEuMTIgKSAwNC8wOS8yMDE4ClJJUDogMDAxMDpk cm1fZHBfYXRvbWljX3JlbGVhc2VfdmNwaV9zbG90cysweGI5LzB4MjAwIFtkcm1fa21zX2hlbHBl cl0KQ29kZTogMDAgNGMgMzkgNmQgZjAgNzQgNDkgNDggOGQgN2IgMTAgNDggODkgZjkgNDggYzEg ZTkgMDMgNDIgODAgM2MgMjEgMDAgMGYgODUgZDIgMDAgMDAgMDAgNDggOGIgNmIgMTAgNDggOGQg NWQgZjAgNDkgMzkgZWUgNzUgYzUgPDBmPiAwYiA0OCBjNyBjNyBjMCA3OCBiMyBhMCA0OCA4OSBj MiA0YyA4OSBlZSBlOCAwMyA2YyBhYSBmZiBiOCBlYQpSU1A6IDAwMTg6ZmZmZjg4ODQxMjM1ZjI2 OCBFRkxBR1M6IDAwMDEwMjQ2ClJBWDogZmZmZjg4ODQxYmYxMmFiMCBSQlg6IGZmZmY4ODg0MWJm MTJhYTggUkNYOiAxZmZmZjExMDgzN2UyNTU3ClJEWDogZGZmZmZjMDAwMDAwMDAwMCBSU0k6IDAw MDAwMDAwMDAwMDAwMDAgUkRJOiBmZmZmZWQxMDgyNDZiZGUwClJCUDogZmZmZjg4ODQxYmYxMmFi OCBSMDg6IGZmZmZlZDEwODNkYjNjOTMgUjA5OiBmZmZmZWQxMDgzZGIzYzkyClIxMDogZmZmZmVk MTA4M2RiM2M5MiBSMTE6IGZmZmY4ODg0MWVkOWU0OTcgUjEyOiBmZmZmODg4NDE5NTU1ZDgwClIx MzogZmZmZjg4ODNiYzQ5OTEwMCBSMTQ6IGZmZmY4ODg0MWJmMTJhYjggUjE1OiAwMDAwMDAwMDAw MDAwMDAwCkZTOiAgMDAwMDdmMTZmYmQ0Y2QwMCgwMDAwKSBHUzpmZmZmODg4NDFlZDgwMDAwKDAw MDApIGtubEdTOjAwMDAwMDAwMDAwMDAwMDAKQ1M6ICAwMDEwIERTOiAwMDAwIEVTOiAwMDAwIENS MDogMDAwMDAwMDA4MDA1MDAzMwpDUjI6IDAwMDA3ZjE2ODdjOWYwMDAgQ1IzOiAwMDAwMDAwM2Jh M2NjMDAzIENSNDogMDAwMDAwMDAwMDM2MDZlMApEUjA6IDAwMDAwMDAwMDAwMDAwMDAgRFIxOiAw MDAwMDAwMDAwMDAwMDAwIERSMjogMDAwMDAwMDAwMDAwMDAwMApEUjM6IDAwMDAwMDAwMDAwMDAw MDAgRFI2OiAwMDAwMDAwMGZmZmUwZmYwIERSNzogMDAwMDAwMDAwMDAwMDQwMApDYWxsIFRyYWNl OgogZHJtX2F0b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldCsweGYyMS8weDJmNTAgW2RybV9rbXNf aGVscGVyXQogPyBkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNldF9lbmFibGVzKzB4YTkw LzB4YTkwIFtkcm1fa21zX2hlbHBlcl0KID8gX19wcmludGtfc2FmZV9leGl0KzB4MTAvMHgxMAog PyBzYXZlX3N0YWNrKzB4OGMvMHhiMAogPyB2cHJpbnRrX2Z1bmMrMHg5Ni8weDFiZgogPyBfX3By aW50a19zYWZlX2V4aXQrMHgxMC8weDEwCiBpbnRlbF9hdG9taWNfY2hlY2srMHgyMzQvMHg0NzUw IFtpOTE1XQogPyBwcmludGsrMHg5Zi8weGM1CiA/IGttc2dfZHVtcF9yZXdpbmRfbm9sb2NrKzB4 ZDkvMHhkOQogPyBfcmF3X3NwaW5fbG9ja19pcnFzYXZlKzB4YTQvMHgxNDAKID8gZHJtX2F0b21p Y19jaGVja19vbmx5KzB4YjEvMHgyOGIwIFtkcm1dCiA/IGRybV9kYmcrMHgxODYvMHgxYjAgW2Ry bV0KID8gZHJtX2Rldl9kYmcrMHgyMDAvMHgyMDAgW2RybV0KID8gaW50ZWxfbGlua19jb21wdXRl X21fbisweGIwLzB4YjAgW2k5MTVdCiA/IGRybV9tb2RlX3B1dF90aWxlX2dyb3VwKzB4MjAvMHgy MCBbZHJtXQogPyBza2xfcGxhbmVfZm9ybWF0X21vZF9zdXBwb3J0ZWQrMHgxN2YvMHgxYjAgW2k5 MTVdCiA/IGRybV9wbGFuZV9jaGVja19waXhlbF9mb3JtYXQrMHgxNGEvMHgzMTAgW2RybV0KIGRy bV9hdG9taWNfY2hlY2tfb25seSsweDEzYzQvMHgyOGIwIFtkcm1dCiA/IGRybV9zdGF0ZV9pbmZv KzB4MjIwLzB4MjIwIFtkcm1dCiA/IGRybV9hdG9taWNfaGVscGVyX2Rpc2FibGVfcGxhbmUrMHgx ZDAvMHgxZDAgW2RybV9rbXNfaGVscGVyXQogPyBwaWNrX3NpbmdsZV9lbmNvZGVyX2Zvcl9jb25u ZWN0b3IrMHhlMC8weGUwIFtkcm1fa21zX2hlbHBlcl0KID8ga2FzYW5fdW5wb2lzb25fc2hhZG93 KzB4MzUvMHg0MAogZHJtX2F0b21pY19jb21taXQrMHgzYi8weDEwMCBbZHJtXQogZHJtX2F0b21p Y19oZWxwZXJfc2V0X2NvbmZpZysweGQ1LzB4MTAwIFtkcm1fa21zX2hlbHBlcl0KIGRybV9tb2Rl X3NldGNydGMrMHg2MzYvMHgxNjYwIFtkcm1dCiA/IHZwcmludGtfZnVuYysweDk2LzB4MWJmCiA/ IGRybV9kZXZfZGJnKzB4MjAwLzB4MjAwIFtkcm1dCiA/IGRybV9tb2RlX2dldGNydGMrMHg3OTAv MHg3OTAgW2RybV0KID8gcHJpbnRrKzB4OWYvMHhjNQogPyBtdXRleF91bmxvY2srMHgxZC8weDQw CiA/IGRybV9tb2RlX2FkZGZiMisweDJlOS8weDNhMCBbZHJtXQogPyByY3Vfc3luY19kdG9yKzB4 MmUwLzB4MmUwCiA/IGRybV9kYmcrMHgxODYvMHgxYjAgW2RybV0KID8gc2V0X3BhZ2VfZGlydHkr MHgyNzEvMHg0ZDAKIGRybV9pb2N0bF9rZXJuZWwrMHgyMDMvMHgyOTAgW2RybV0KID8gZHJtX21v ZGVfZ2V0Y3J0YysweDc5MC8weDc5MCBbZHJtXQogPyBkcm1fc2V0dmVyc2lvbisweDdmMC8weDdm MCBbZHJtXQogPyBfX3N3aXRjaF90b19hc20rMHgzNC8weDcwCiA/IF9fc3dpdGNoX3RvX2FzbSsw eDM0LzB4NzAKIGRybV9pb2N0bCsweDQ0NS8weDk1MCBbZHJtXQogPyBkcm1fbW9kZV9nZXRjcnRj KzB4NzkwLzB4NzkwIFtkcm1dCiA/IGRybV9nZXR1bmlxdWUrMHgyMjAvMHgyMjAgW2RybV0KID8g ZXhwYW5kX2ZpbGVzLnBhcnQuMTArMHg5MjAvMHg5MjAKIGRvX3Zmc19pb2N0bCsweDFhMS8weDEz ZDAKID8gaW9jdGxfcHJlYWxsb2NhdGUrMHgyYjAvMHgyYjAKID8gX19mZ2V0X2xpZ2h0KzB4MmQ2 LzB4MzkwCiA/IHNjaGVkdWxlKzB4ZDcvMHgyZTAKID8gZmdldF9yYXcrMHgxMC8weDEwCiA/IGFw aWNfdGltZXJfaW50ZXJydXB0KzB4YS8weDIwCiA/IGFwaWNfdGltZXJfaW50ZXJydXB0KzB4YS8w eDIwCiA/IHJjdV9jbGVhbnVwX2RlYWRfcm5wKzB4MmMwLzB4MmMwCiBrc3lzX2lvY3RsKzB4NjAv MHg5MAogX194NjRfc3lzX2lvY3RsKzB4NmYvMHhiMAogZG9fc3lzY2FsbF82NCsweDEzNi8weDQ0 MAogPyBzeXNjYWxsX3JldHVybl9zbG93cGF0aCsweDJkMC8weDJkMAogPyBkb19wYWdlX2ZhdWx0 KzB4ODkvMHgzMzAKID8gX19kb19wYWdlX2ZhdWx0KzB4OWMwLzB4OWMwCiA/IHByZXBhcmVfZXhp dF90b191c2VybW9kZSsweDE4OC8weDIwMAogPyBwZXJmX3RyYWNlX3N5c19lbnRlcisweDEwOTAv MHgxMDkwCiA/IF9feDY0X3N5c19zaWdhbHRzdGFjaysweDI4MC8weDI4MAogPyBfX3B1dF91c2Vy XzQrMHgxYy8weDMwCiBlbnRyeV9TWVNDQUxMXzY0X2FmdGVyX2h3ZnJhbWUrMHg0NC8weGE5ClJJ UDogMDAzMzoweDdmMTZmZjg5YTA5YgpDb2RlOiAwZiAxZSBmYSA0OCA4YiAwNSBlZCBiZCAwYyAw MCA2NCBjNyAwMCAyNiAwMCAwMCAwMCA0OCBjNyBjMCBmZiBmZiBmZiBmZiBjMyA2NiAwZiAxZiA0 NCAwMCAwMCBmMyAwZiAxZSBmYSBiOCAxMCAwMCAwMCAwMCAwZiAwNSA8NDg+IDNkIDAxIGYwIGZm IGZmIDczIDAxIGMzIDQ4IDhiIDBkIGJkIGJkIDBjIDAwIGY3IGQ4IDY0IDg5IDAxIDQ4ClJTUDog MDAyYjowMDAwN2ZmZjAwMTIzMmI4IEVGTEFHUzogMDAwMDAyNDYgT1JJR19SQVg6IDAwMDAwMDAw MDAwMDAwMTAKUkFYOiBmZmZmZmZmZmZmZmZmZmRhIFJCWDogMDAwMDdmZmYwMDEyMzJmMCBSQ1g6 IDAwMDA3ZjE2ZmY4OWEwOWIKUkRYOiAwMDAwN2ZmZjAwMTIzMmYwIFJTSTogMDAwMDAwMDBjMDY4 NjRhMiBSREk6IDAwMDAwMDAwMDAwMDAwMGIKUkJQOiAwMDAwN2ZmZjAwMTIzMmYwIFIwODogMDAw MDAwMDAwMDAwMDAwMCBSMDk6IDAwMDA1NWE3OWQ0ODQ0NjAKUjEwOiAwMDAwNTVhNzlkNDRlNzcw IFIxMTogMDAwMDAwMDAwMDAwMDI0NiBSMTI6IDAwMDAwMDAwYzA2ODY0YTIKUjEzOiAwMDAwMDAw MDAwMDAwMDBiIFIxNDogMDAwMDAwMDAwMDAwMDAwMCBSMTU6IDAwMDA1NWE3OWQ0NGU3NzAKV0FS TklORzogQ1BVOiA2IFBJRDogMTA3MCBhdCBkcml2ZXJzL2dwdS9kcm0vZHJtX2RwX21zdF90b3Bv bG9neS5jOjMxNTMgZHJtX2RwX2F0b21pY19yZWxlYXNlX3ZjcGlfc2xvdHMrMHhiOS8weDIwMCBb ZHJtX2ttc19oZWxwZXJdCi0tLVsgZW5kIHRyYWNlIGQ1MzZjMDVjMTNjODNiZTIgXS0tLQpbZHJt OmRybV9kcF9hdG9taWNfcmVsZWFzZV92Y3BpX3Nsb3RzIFtkcm1fa21zX2hlbHBlcl1dICpFUlJP Uiogbm8gVkNQSSBmb3IgW01TVCBQT1JUOjAwMDAwMDAwZjllMmIxNDNdIGZvdW5kIGluIG1zdCBz dGF0ZSAwMDAwMDAwMDlmZDI4OTlhCgpUaGlzIGFwcGVhcnMgdG8gYmUgaGFwcGVuaW5nIGJlY2F1 c2Ugd2UgZGVzdHJveSB0aGUgVkNQSSBhbGxvY2F0aW9ucwp3aGVuIGRpc2FibGluZyBhbGwgY29u bmVjdGVkIGRpc3BsYXlzIHdoaWxlIHN1c3BlbmRpbmcsIGFuZCB0aG9zZSBWQ1BJCmFsbG9jYXRp b25zIGRvbid0IGdldCByZXN0b3JlZCBvbiByZXN1bWUgZHVlIHRvIGZhaWxpbmcgdG8gcmVzdG9y ZSB0aGUKYXRvbWljIHN0YXRlLgoKU28sIGZpeCB0aGlzIGJ5IGludHJvZHVjaW5nIHRoZSBzdXNw ZW5kaW5nIG9wdGlvbiB0bwpkcm1fYXRvbWljX2hlbHBlcl9kdXBsaWNhdGVfc3RhdGUoKSBhbmQg dXNlIHRoYXQgdG8gaW5kaWNhdGUgaW4gdGhlCmF0b21pYyBzdGF0ZSB0aGF0IGl0J3MgYmVpbmcg dXNlZCBmb3Igc3VzcGVuZGluZyBvciByZXN1bWluZyB0aGUgc3lzdGVtLAphbmQgdGh1cyBuZWVk cyB0byBiZSBmaXhlZCB1cCBieSB0aGUgZHJpdmVyLiBXZSBjYW4gdGhlbiB1c2UgdGhlIG5ldwpz dGF0ZS0+c3VzcGVuZF9vcl9yZXN1bWUgaG9vayB0byBmaXh1cCB0aGUgYXRvbWljIFZDUEkgaGVs cGVycyBzbyB0aGV5Cm1lcmVseSBzYXZlIGFuZCByZXN0b3JlIHRoZSBWQ1BJIGFsbG9jYXRpb25z IGZvciBzdWNoIHN0YXRlcyBpbnN0ZWFkIG9mCnBlcmZvcm1pbmcgZXJyb3IgY2hlY2tpbmcgb24g dGhlbS4gVGhpcyBmaXhlcyB0aGUgd2FybmluZ3MgZHVyaW5nCnN1c3BlbmQvcmVzdW1lIHdoZW4g YSB0b3BvbG9neSBpcyByZW1vdmVkIGZyb20gdGhlIHN5c3RlbSwgYW5kIGFsbG93cwp1cyB0byBv bmNlIGFnYWluIHJlc3RvcmUgdGhlIGF0b21pYyBzdGF0ZSBvbiByZXN1bWUgd2l0aG91dCBhbnkg aXNzdWVzLgoKU2lnbmVkLW9mZi1ieTogTHl1ZGUgUGF1bCA8bHl1ZGVAcmVkaGF0LmNvbT4KRml4 ZXM6IGVjZWFlMTQ3MjQ2NyAoImRybS9kcF9tc3Q6IFN0YXJ0IHRyYWNraW5nIHBlci1wb3J0IFZD UEkgYWxsb2NhdGlvbnMiKQpDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVsQGZmd2xsLmNoPgotLS0K IGRyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jICAgfCAxNiArKysrKysrKystLS0K IGRyaXZlcnMvZ3B1L2RybS9kcm1fZHBfbXN0X3RvcG9sb2d5LmMgfCAzNiArKysrKysrKysrKysr KysrKysrKysrKystLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyAgfCAg NCArLS0KIGluY2x1ZGUvZHJtL2RybV9hdG9taWMuaCAgICAgICAgICAgICAgfCAxMSArKysrKysr KwogaW5jbHVkZS9kcm0vZHJtX2F0b21pY19oZWxwZXIuaCAgICAgICB8ICAzICsrLQogNSBmaWxl cyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9hdG9taWNfaGVscGVyLmMKaW5kZXggNmZlMjMwM2ZjY2Q5Li43ZDIzZGFmZGZmYmMgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCkBAIC0zMzIsOCArMzMyLDE1IEBAIHVwZGF0ZV9j b25uZWN0b3Jfcm91dGluZyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJICogYWJv dXQgaXMgZW5zdXJpbmcgdGhhdCB1c2Vyc3BhY2UgY2FuJ3QgZG8gYW55dGhpbmcgYnV0IHNodXQg b2ZmIHRoZQogCSAqIGRpc3BsYXkgb24gYSBjb25uZWN0b3IgdGhhdCB3YXMgZGVzdHJveWVkIGFm dGVyIGl0cyBiZWVuIG5vdGlmaWVkLAogCSAqIG5vdCBiZWZvcmUuCisJICoKKwkgKiBBZGRpdGlv bmFsbHksIHdlIGFsc28gd2FudCB0byBpZ25vcmUgY29ubmVjdG9yIHJlZ2lzdHJhdGlvbiB3aGVu CisJICogd2UncmUgdHJ5aW5nIHRvIHJlc3RvcmUgYW4gYXRvbWljIHN0YXRlIGR1cmluZyBzeXN0 ZW0gcmVzdW1lIHNpbmNlCisJICogdGhlcmUncyBhIGNoYW5jZSB0aGUgY29ubmVjdG9yIG1heSBo YXZlIGJlZW4gZGVzdHJveWVkIGR1cmluZyB0aGUKKwkgKiBwcm9jZXNzLCBidXQgaXQncyBiZXR0 ZXIgdG8gaWdub3JlIHRoYXQgdGhlbiBjYXVzZQorCSAqIGRybV9hdG9taWNfaGVscGVyX3Jlc3Vt ZSgpIHRvIGZhaWwuCiAJICovCi0JaWYgKGRybV9jb25uZWN0b3JfaXNfdW5yZWdpc3RlcmVkKGNv bm5lY3RvcikgJiYgY3J0Y19zdGF0ZS0+YWN0aXZlKSB7CisJaWYgKCFzdGF0ZS0+c3VzcGVuZF9v cl9yZXN1bWUgJiYKKwkgICAgZHJtX2Nvbm5lY3Rvcl9pc191bnJlZ2lzdGVyZWQoY29ubmVjdG9y KSAmJiBjcnRjX3N0YXRlLT5hY3RpdmUpIHsKIAkJRFJNX0RFQlVHX0FUT01JQygiW0NPTk5FQ1RP UjolZDolc10gaXMgbm90IHJlZ2lzdGVyZWRcbiIsCiAJCQkJIGNvbm5lY3Rvci0+YmFzZS5pZCwg Y29ubmVjdG9yLT5uYW1lKTsKIAkJcmV0dXJuIC1FSU5WQUw7CkBAIC0zMTQ0LDYgKzMxNTEsNyBA QCBFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfaGVscGVyX3NodXRkb3duKTsKICAqIGRybV9hdG9t aWNfaGVscGVyX2R1cGxpY2F0ZV9zdGF0ZSAtIGR1cGxpY2F0ZSBhbiBhdG9taWMgc3RhdGUgb2Jq ZWN0CiAgKiBAZGV2OiBEUk0gZGV2aWNlCiAgKiBAY3R4OiBsb2NrIGFjcXVpc2l0aW9uIGNvbnRl eHQKKyAqIEBzdXNwZW5kaW5nOiBJZiB0aGlzIHN0YXRlIGlzIGJlaW5nIGR1cGxpY2F0ZWQgYXMg cGFydCBvZiBzeXN0ZW0gc3VzcGVuZAogICoKICAqIE1ha2VzIGEgY29weSBvZiB0aGUgY3VycmVu dCBhdG9taWMgc3RhdGUgYnkgbG9vcGluZyBvdmVyIGFsbCBvYmplY3RzIGFuZAogICogZHVwbGlj YXRpbmcgdGhlaXIgcmVzcGVjdGl2ZSBzdGF0ZXMuIFRoaXMgaXMgdXNlZCBmb3IgZXhhbXBsZSBi eSBzdXNwZW5kLwpAQCAtMzE2Niw3ICszMTc0LDggQEAgRVhQT1JUX1NZTUJPTChkcm1fYXRvbWlj X2hlbHBlcl9zaHV0ZG93bik7CiAgKi8KIHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICoKIGRybV9h dG9taWNfaGVscGVyX2R1cGxpY2F0ZV9zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAotCQkJ CSAgc3RydWN0IGRybV9tb2Rlc2V0X2FjcXVpcmVfY3R4ICpjdHgpCisJCQkJICBzdHJ1Y3QgZHJt X21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCwKKwkJCQkgIGJvb2wgc3VzcGVuZGluZykKIHsKIAlz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGU7CiAJc3RydWN0IGRybV9jb25uZWN0b3IgKmNv bm47CkBAIC0zMTgwLDYgKzMxODksNyBAQCBkcm1fYXRvbWljX2hlbHBlcl9kdXBsaWNhdGVfc3Rh dGUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7CiAK IAlzdGF0ZS0+YWNxdWlyZV9jdHggPSBjdHg7CisJc3RhdGUtPnN1c3BlbmRfb3JfcmVzdW1lID0g c3VzcGVuZGluZzsKIAogCWRybV9mb3JfZWFjaF9jcnRjKGNydGMsIGRldikgewogCQlzdHJ1Y3Qg ZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGU7CkBAIC0zMjYzLDcgKzMyNzMsNyBAQCBzdHJ1Y3Qg ZHJtX2F0b21pY19zdGF0ZSAqZHJtX2F0b21pY19oZWxwZXJfc3VzcGVuZChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2KQogCiAJRFJNX01PREVTRVRfTE9DS19BTExfQkVHSU4oZGV2LCBjdHgsIDAsIGVy cik7CiAKLQlzdGF0ZSA9IGRybV9hdG9taWNfaGVscGVyX2R1cGxpY2F0ZV9zdGF0ZShkZXYsICZj dHgpOworCXN0YXRlID0gZHJtX2F0b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRlKGRldiwgJmN0 eCwgdHJ1ZSk7CiAJaWYgKElTX0VSUihzdGF0ZSkpCiAJCWdvdG8gdW5sb2NrOwogCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2RwX21zdF90b3BvbG9neS5jIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYwppbmRleCA4YmEwZTViMzY4ZGEuLjM3MTAxMGY4ZDQy ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcF9tc3RfdG9wb2xvZ3kuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX2RwX21zdF90b3BvbG9neS5jCkBAIC0zMDMyLDYgKzMwMzIs MTAgQEAgc3RhdGljIGludCBkcm1fZHBfaW5pdF92Y3BpKHN0cnVjdCBkcm1fZHBfbXN0X3RvcG9s b2d5X21nciAqbWdyLAogICogQHBvcnQgYXMgbmVlZGVkLiBJdCBpcyBub3QgT0sgaG93ZXZlciwg dG8gY2FsbCB0aGlzIGZ1bmN0aW9uIGFuZAogICogZHJtX2RwX2F0b21pY19yZWxlYXNlX3ZjcGlf c2xvdHMoKSBpbiB0aGUgc2FtZSBhdG9taWMgY2hlY2sgcGhhc2UuCiAgKgorICogV2hlbiAmZHJt X2F0b21pY19zdGF0ZS5zdXNwZW5kX29yX3Jlc3VtZSBpcyBzZXQgdG8gJXRydWUlLCB0aGlzIGZ1 bmN0aW9uCisgKiB3aWxsIG5vdCBwZXJmb3JtIGFueSBlcnJvciBjaGVja2luZyBhbmQgd2lsbCBp bnN0ZWFkIHNpbXBseSByZXRyaWV2ZSB0aGUKKyAqIHByZXZpb3VzbHkgcmVjb3JkZWQgVkNQSSBh bGxvY2F0aW9uIHRoYXQgd2FzIHByZXNlbnQgYmVmb3JlIHN5c3RlbSBzdXNwZW5kLgorICoKICAq IFNlZSBhbHNvOgogICogZHJtX2RwX2F0b21pY19yZWxlYXNlX3ZjcGlfc2xvdHMoKQogICogZHJt X2RwX21zdF9hdG9taWNfY2hlY2soKQpAQCAtMzA1Miw5ICszMDU2LDExIEBAIGludCBkcm1fZHBf YXRvbWljX2ZpbmRfdmNwaV9zbG90cyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJ aWYgKElTX0VSUih0b3BvbG9neV9zdGF0ZSkpCiAJCXJldHVybiBQVFJfRVJSKHRvcG9sb2d5X3N0 YXRlKTsKIAotCXBvcnQgPSBkcm1fZHBfbXN0X3RvcG9sb2d5X2dldF9wb3J0X3ZhbGlkYXRlZCht Z3IsIHBvcnQpOwotCWlmIChwb3J0ID09IE5VTEwpCi0JCXJldHVybiAtRUlOVkFMOworCWlmICgh c3RhdGUtPnN1c3BlbmRfb3JfcmVzdW1lKSB7CisJCXBvcnQgPSBkcm1fZHBfbXN0X3RvcG9sb2d5 X2dldF9wb3J0X3ZhbGlkYXRlZChtZ3IsIHBvcnQpOworCQlpZiAoIXBvcnQpCisJCQlyZXR1cm4g LUVJTlZBTDsKKwl9CiAKIAkvKiBGaW5kIHRoZSBjdXJyZW50IGFsbG9jYXRpb24gZm9yIHRoaXMg cG9ydCwgaWYgYW55ICovCiAJbGlzdF9mb3JfZWFjaF9lbnRyeShwb3MsICZ0b3BvbG9neV9zdGF0 ZS0+dmNwaXMsIG5leHQpIHsKQEAgLTMwNjIsNiArMzA2OCwxOSBAQCBpbnQgZHJtX2RwX2F0b21p Y19maW5kX3ZjcGlfc2xvdHMoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkJdmNw aSA9IHBvczsKIAkJCXByZXZfc2xvdHMgPSB2Y3BpLT52Y3BpOwogCisJCQkvKgorCQkJICogV2hl biByZXN1bWluZywgd2UganVzdCB3YW50IHRvIHJlc3RvcmUgdGhlIHByZXZpb3VzCisJCQkgKiBW Q1BJIHdpdGhvdXQgZG9pbmcgZXJyb3IgY2hlY2tpbmcKKwkJCSAqLworCQkJaWYgKHN0YXRlLT5z dXNwZW5kX29yX3Jlc3VtZSkgeworCQkJCURSTV9ERUJVR19BVE9NSUMoIltDT05ORUNUT1I6JWQ6 JXNdIFtNU1QgUE9SVDolcF0gcmVzdG9yaW5nIFZDUEkgb2YgJWRcbiIsCisJCQkJCQkgcG9ydC0+ Y29ubmVjdG9yLT5iYXNlLmlkLAorCQkJCQkJIHBvcnQtPmNvbm5lY3Rvci0+bmFtZSwKKwkJCQkJ CSBwb3J0LCBwcmV2X3Nsb3RzKTsKKworCQkJCXJldHVybiBwcmV2X3Nsb3RzOworCQkJfQorCiAJ CQkvKgogCQkJICogVGhpcyBzaG91bGQgbmV2ZXIgaGFwcGVuLCB1bmxlc3MgdGhlIGRyaXZlciB0 cmllcwogCQkJICogcmVsZWFzaW5nIGFuZCBhbGxvY2F0aW5nIHRoZSBzYW1lIFZDUEkgYWxsb2Nh dGlvbiwKQEAgLTMxMjQsNiArMzE0MywxMSBAQCBFWFBPUlRfU1lNQk9MKGRybV9kcF9hdG9taWNf ZmluZF92Y3BpX3Nsb3RzKTsKICAqIGRybV9kcF9hdG9taWNfZmluZF92Y3BpX3Nsb3RzKCkgb24g dGhlIHNhbWUgQHBvcnQgaW4gYSBzaW5nbGUgYXRvbWljIGNoZWNrCiAgKiBwaGFzZS4KICAqCisg KiBXaGVuICZkcm1fYXRvbWljX3N0YXRlLnN1c3BlbmRfb3JfcmVzdW1lIGlzIHNldCwgdGhpcyBm dW5jdGlvbiB3aWxsIG5vdAorICogbW9kaWZ5IHRoZSBWQ1BJIGFsbG9jYXRpb25zIGluICZkcm1f ZHBfbXN0X3RvcG9sb2d5X3N0YXRlLnZjcGlzLCBzbyB0aGF0CisgKiB0aG9zZSBWQ1BJIGFsbG9j YXRpb25zIG1heSBiZSByZXN0b3JlZCBhcy1pcyBkdXJpbmcgc3lzdGVtIHJlc3VtZS4gSW4gdGhp cworICogc2NlbmFyaW8sIHRoaXMgZnVuY3Rpb24gd2lsbCBhbHdheXMgcmV0dXJuIDAuCisgKgog ICogU2VlIGFsc286CiAgKiBkcm1fZHBfYXRvbWljX2ZpbmRfdmNwaV9zbG90cygpCiAgKiBkcm1f ZHBfbXN0X2F0b21pY19jaGVjaygpCkBAIC0zMTQwLDYgKzMxNjQsMTIgQEAgaW50IGRybV9kcF9h dG9taWNfcmVsZWFzZV92Y3BpX3Nsb3RzKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwK IAlzdHJ1Y3QgZHJtX2RwX3ZjcGlfYWxsb2NhdGlvbiAqcG9zOwogCWJvb2wgZm91bmQgPSBmYWxz ZTsKIAorCS8qIER1cmluZyBzdXNwZW5kLCBqdXN0IGtlZXAgb3VyIFZDUEkgYWxsb2NhdGlvbnMg YXMtaXMgaW4gdGhlIGF0b21pYworCSAqIHN0YXRlIHNvIHRoZXkgY2FuIGJlIHJlc3RvcmVkIGFz LWlzIGF0IHJlc3VtZQorCSAqLworCWlmIChzdGF0ZS0+c3VzcGVuZF9vcl9yZXN1bWUpCisJCXJl dHVybiAwOworCiAJdG9wb2xvZ3lfc3RhdGUgPSBkcm1fYXRvbWljX2dldF9tc3RfdG9wb2xvZ3lf c3RhdGUoc3RhdGUsIG1ncik7CiAJaWYgKElTX0VSUih0b3BvbG9neV9zdGF0ZSkpCiAJCXJldHVy biBQVFJfRVJSKHRvcG9sb2d5X3N0YXRlKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXku YwppbmRleCA0YTI4MjUzMmFmODEuLjRjNzBmMTUzMTExOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rpc3BsYXkuYwpAQCAtMzgyNCw3ICszODI0LDcgQEAgdm9pZCBpbnRlbF9wcmVwYXJlX3Jl c2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikKIAkgKiBEaXNhYmxpbmcgdGhl IGNydGNzIGdyYWNlZnVsbHkgc2VlbXMgbmljZXIuIEFsc28gdGhlCiAJICogZzMzIGRvY3Mgc2F5 IHdlIHNob3VsZCBhdCBsZWFzdCBkaXNhYmxlIGFsbCB0aGUgcGxhbmVzLgogCSAqLwotCXN0YXRl ID0gZHJtX2F0b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRlKGRldiwgY3R4KTsKKwlzdGF0ZSA9 IGRybV9hdG9taWNfaGVscGVyX2R1cGxpY2F0ZV9zdGF0ZShkZXYsIGN0eCwgZmFsc2UpOwogCWlm IChJU19FUlIoc3RhdGUpKSB7CiAJCXJldCA9IFBUUl9FUlIoc3RhdGUpOwogCQlEUk1fRVJST1Io IkR1cGxpY2F0aW5nIHN0YXRlIGZhaWxlZCB3aXRoICVpXG4iLCByZXQpOwpAQCAtMTUwNDMsNyAr MTUwNDMsNyBAQCBzdGF0aWMgdm9pZCBzYW5pdGl6ZV93YXRlcm1hcmtzKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYpCiAJCWdvdG8gZmFpbDsKIAl9CiAKLQlzdGF0ZSA9IGRybV9hdG9taWNfaGVscGVy X2R1cGxpY2F0ZV9zdGF0ZShkZXYsICZjdHgpOworCXN0YXRlID0gZHJtX2F0b21pY19oZWxwZXJf ZHVwbGljYXRlX3N0YXRlKGRldiwgJmN0eCwgZmFsc2UpOwogCWlmIChXQVJOX09OKElTX0VSUihz dGF0ZSkpKQogCQlnb3RvIGZhaWw7CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9hdG9t aWMuaCBiL2luY2x1ZGUvZHJtL2RybV9hdG9taWMuaAppbmRleCA4MTFiNGE5MjU2OGYuLjA4OTdm NTFkY2Q2MiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2F0b21pYy5oCisrKyBiL2luY2x1 ZGUvZHJtL2RybV9hdG9taWMuaApAQCAtMzI5LDYgKzMyOSwxNyBAQCBzdHJ1Y3QgZHJtX2F0b21p Y19zdGF0ZSB7CiAJYm9vbCBhbGxvd19tb2Rlc2V0IDogMTsKIAlib29sIGxlZ2FjeV9jdXJzb3Jf dXBkYXRlIDogMTsKIAlib29sIGFzeW5jX3VwZGF0ZSA6IDE7CisJLyoqCisJICogQHN1c3BlbmRf b3JfcmVzdW1lOgorCSAqCisJICogSW5kaWNhdGVzIHdoZXRoZXIgb3Igbm90IHRoaXMgYXRvbWlj IHN0YXRlIGlzIGJlaW5nIHNhdmVkIG9yCisJICogY29tbWl0dGVkIGFzIHBhcnQgb2Ygc3VzcGVu ZGluZyBvciByZXN1bWluZyB0aGUgc3lzdGVtCisJICogcmVzcGVjdGl2ZWx5LiBEcml2ZXJzIGFu ZCBhdG9taWMgaGVscGVycyBob3VsZCB1c2UgdGhpcyB0byBmaXh1cAorCSAqIG5vcm1hbCBzdGF0 ZSBpbmNvbnNpc3RlbmNpZXMgdGhhdCBtaWdodCBhcmlzZSBiZXR3ZWVuIHN5c3RlbQorCSAqIHN1 c3BlbmQgYW5kIHJlc3VtZSwgc28gYXMgdG8gZW5zdXJlIHRoYXQgcmVzdG9yaW5nIHRoZSBhdG9t aWMgc3RhdGUKKwkgKiBhdCByZXN1bWUgbmV2ZXIgZmFpbHMuCisJICovCisJYm9vbCBzdXNwZW5k X29yX3Jlc3VtZSA6IDE7CiAJc3RydWN0IF9fZHJtX3BsYW5lc19zdGF0ZSAqcGxhbmVzOwogCXN0 cnVjdCBfX2RybV9jcnRjc19zdGF0ZSAqY3J0Y3M7CiAJaW50IG51bV9jb25uZWN0b3I7CmRpZmYg LS1naXQgYS9pbmNsdWRlL2RybS9kcm1fYXRvbWljX2hlbHBlci5oIGIvaW5jbHVkZS9kcm0vZHJt X2F0b21pY19oZWxwZXIuaAppbmRleCA1ODIxNGJlM2JmM2QuLjM1OWY1NTdiNjg5OCAxMDA2NDQK LS0tIGEvaW5jbHVkZS9kcm0vZHJtX2F0b21pY19oZWxwZXIuaAorKysgYi9pbmNsdWRlL2RybS9k cm1fYXRvbWljX2hlbHBlci5oCkBAIC0xMjksNyArMTI5LDggQEAgaW50IGRybV9hdG9taWNfaGVs cGVyX2Rpc2FibGVfYWxsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiB2b2lkIGRybV9hdG9taWNf aGVscGVyX3NodXRkb3duKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogc3RydWN0IGRybV9hdG9t aWNfc3RhdGUgKgogZHJtX2F0b21pY19oZWxwZXJfZHVwbGljYXRlX3N0YXRlKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCi0JCQkJICBzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCk7 CisJCQkJICBzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCwKKwkJCQkgIGJvb2wg c3VzcGVuZGluZyk7CiBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqZHJtX2F0b21pY19oZWxwZXJf c3VzcGVuZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIGludCBkcm1fYXRvbWljX2hlbHBlcl9j b21taXRfZHVwbGljYXRlZF9zdGF0ZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUsCiAJ CQkJCSAgICAgIHN0cnVjdCBkcm1fbW9kZXNldF9hY3F1aXJlX2N0eCAqY3R4KTsKLS0gCjIuMjAu MQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==