From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lyude Paul Subject: [PATCH 1/2] drm/fb_helper: Add drm_fb_helper_output_poll_changed_with_rpm() Date: Wed, 18 Jul 2018 16:56:39 -0400 Message-ID: <20180718205645.25924-2-lyude@redhat.com> References: <20180718205645.25924-1-lyude@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180718205645.25924-1-lyude-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Cc: David Airlie , Gustavo Padovan , dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Maarten Lankhorst , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, stable-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Sean Paul , Ben Skeggs , =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= List-Id: nouveau.vger.kernel.org V2hlbiBEUCBNU1QgaHVicyBnZXQgY29uZnVzZWQsIHRoZXkgY2FuIG9jY2FzaW9uYWxseSBzdG9w IHJlc3BvbmRpbmcgZm9yCmEgZ29vZCBiaXQgb2YgdGltZSB1cCB1bnRpbCB0aGUgcG9pbnQgd2hl cmUgdGhlIERSTSBkcml2ZXIgbWFuYWdlcyB0bwpkbyB0aGUgcmlnaHQgRFBDRCBhY2Nlc3NlcyB0 byBnZXQgaXQgdG8gc3RhcnQgcmVzcG9uZGluZyBhZ2Fpbi4gSW4gYQp3b3JzdCBjYXNlIHNjZW5h cmlvIGhvd2V2ZXIsIHRoaXMgcHJvY2VzcyBjYW4gdGFrZSB1cHdhcmRzIG9mIDEwKwpzZWNvbmRz LgoKQ3VycmVudGx5IHdlIHVzZSB0aGUgZGVmYXVsdCBvdXRwdXRfcG9sbF9jaGFuZ2VkIGhhbmRs ZXIKZHJtX2ZiX2hlbHBlcl9vdXRwdXRfcG9sbF9jaGFuZ2VkKCkgdG8gaGFuZGxlIG91dHB1dCBw b2xsaW5nLCB3aGljaApkb2Vzbid0IGhhcHBlbiB0byBncmFiIGFueSBwb3dlciByZWZlcmVuY2Vz IG9uIHRoZSBkZXZpY2Ugd2hlbiBwb2xsaW5nLgpJZiB3ZSdyZSB1bmx1Y2t5IGVub3VnaCB0byBo YXZlIGEgaHViIChzdWNoIGFzIExlbm92bydzIGluZmFtb3VzIGxhcHRvcApkb2NrcyBmb3IgdGhl IFA1eC9QN3ggc2VyaWVzKSB0aGF0J3MgZWFzaWx5IHN0YXJ0bGVkIGFuZCBjb25mdXNlZCwgdGhp cwpjYW4gbGVhZCB0byBhIHByZXR0eSBuYXN0eSBkZWFkbG9jayBzaXR1YXRpb24gdGhhdCBsb29r cyBsaWtlIHRoaXM6CgotIEhvdHBsdWcgZXZlbnQgZnJvbSBodWIgaGFwcGVucywgd2UgZW50ZXIK ICBkcm1fZmJfaGVscGVyX291dHB1dF9wb2xsX2NoYW5nZWQoKSBhbmQgc3RhcnQgY29tbXVuaWNh dGluZyB3aXRoIHRoZQogIGh1YgotIFdoaWxlIHdlJ3JlIGluIGRybV9mYl9oZWxwZXJfb3V0cHV0 X3BvbGxfY2hhbmdlZCgpIGFuZCBhdHRlbXB0aW5nIHRvCiAgY29tbXVuaWNhdGUgd2l0aCB0aGUg aHViLCB3ZSBlbmQgdXAgY29uZnVzaW5nIGl0IGFuZCBjYXVzZSBpdCB0byBzdG9wCiAgcmVzcG9u ZGluZyBmb3IgYXQgbGVhc3QgMTAgc2Vjb25kcwotIEFmdGVyIDUgc2Vjb25kcyBvZiBiZWluZyBp biBkcm1fZmJfaGVscGVyX291dHB1dF9wb2xsX2NoYW5nZWQoKSwgdGhlCiAgcG0gY29yZSBhdHRl bXB0cyB0byBwdXQgdGhlIEdQVSBpbnRvIGF1dG9zdXNwZW5kLCB3aGljaCBlbmRzIHVwCiAgY2Fs bGluZyBkcm1fa21zX2hlbHBlcl9wb2xsX2Rpc2FibGUoKQotIFdoaWxlIHRoZSBydW50aW1lIFBN IGNvcmUgaXMgd2FpdGluZyBpbiBkcm1fa21zX2hlbHBlcl9wb2xsX2Rpc2FibGUoKQogIGZvciB0 aGUgb3V0cHV0IHBvbGwgdG8gZmluaXNoLCB3ZSBlbmQgdXAgZmluYWxseSBkZXRlY3RpbmcgYW4g TVNUCiAgZGlzcGxheQotIFdlIG5vdGljZSB0aGUgbmV3IGRpc3BsYXkgYW5kIHRyaWVzIHRvIGVu YWJsZSBpdCwgd2hpY2ggdHJpZ2dlcnMKICBhbiBhdG9taWMgY29tbWl0IHdoaWNoIHRyaWdnZXJz IGEgY2FsbCB0byBwbV9ydW50aW1lX2dldF9zeW5jKCkKLSB0aGUgb3V0cHV0IHBvbGwgdGhyZWFk IGRlYWRsb2NrcyB0aGUgcG0gY29yZSB3YWl0aW5nIGZvciB0aGUgcG0gY29yZQogIHRvIGZpbmlz aCB0aGUgYXV0b3N1c3BlbmQgcmVxdWVzdCB3aGlsZSB0aGUgcG0gY29yZSB3YWl0cyBmb3IgdGhl CiAgb3V0cHV0IHBvbGwgdGhyZWFkIHRvIGZpbmlzaAoKU2FtcGxlOgpbICAyNDYuNjY5NjI1XSBJ TkZPOiB0YXNrIGt3b3JrZXIvNDowOjM3IGJsb2NrZWQgZm9yIG1vcmUgdGhhbiAxMjAgc2Vjb25k cy4KWyAgMjQ2LjY3MzM5OF0gICAgICAgTm90IHRhaW50ZWQgNC4xOC4wLXJjNUx5dWRlLVRlc3Qr ICMyClsgIDI0Ni42NzUyNzFdICJlY2hvIDAgPiAvcHJvYy9zeXMva2VybmVsL2h1bmdfdGFza190 aW1lb3V0X3NlY3MiIGRpc2FibGVzIHRoaXMgbWVzc2FnZS4KWyAgMjQ2LjY3NjUyN10ga3dvcmtl ci80OjAgICAgIEQgICAgMCAgICAzNyAgICAgIDIgMHg4MDAwMDAwMApbICAyNDYuNjc3NTgwXSBX b3JrcXVldWU6IGV2ZW50cyBvdXRwdXRfcG9sbF9leGVjdXRlIFtkcm1fa21zX2hlbHBlcl0KWyAg MjQ2LjY3ODcwNF0gQ2FsbCBUcmFjZToKWyAgMjQ2LjY3OTc1M10gIF9fc2NoZWR1bGUrMHgzMjIv MHhhZjAKWyAgMjQ2LjY4MDkxNl0gIHNjaGVkdWxlKzB4MzMvMHg5MApbICAyNDYuNjgxOTI0XSAg c2NoZWR1bGVfcHJlZW1wdF9kaXNhYmxlZCsweDE1LzB4MjAKWyAgMjQ2LjY4MzAyM10gIF9fbXV0 ZXhfbG9jaysweDU2OS8weDlhMApbICAyNDYuNjg0MDM1XSAgPyBrb2JqZWN0X3VldmVudF9lbnYr MHgxMTcvMHg3YjAKWyAgMjQ2LjY4NTEzMl0gID8gZHJtX2ZiX2hlbHBlcl9ob3RwbHVnX2V2ZW50 LnBhcnQuMjgrMHgyMC8weGIwIFtkcm1fa21zX2hlbHBlcl0KWyAgMjQ2LjY4NjE3OV0gIG11dGV4 X2xvY2tfbmVzdGVkKzB4MWIvMHgyMApbICAyNDYuNjg3Mjc4XSAgPyBtdXRleF9sb2NrX25lc3Rl ZCsweDFiLzB4MjAKWyAgMjQ2LjY4ODMwN10gIGRybV9mYl9oZWxwZXJfaG90cGx1Z19ldmVudC5w YXJ0LjI4KzB4MjAvMHhiMCBbZHJtX2ttc19oZWxwZXJdClsgIDI0Ni42ODk0MjBdICBkcm1fZmJf aGVscGVyX291dHB1dF9wb2xsX2NoYW5nZWQrMHgyMy8weDMwIFtkcm1fa21zX2hlbHBlcl0KWyAg MjQ2LjY5MDQ2Ml0gIGRybV9rbXNfaGVscGVyX2hvdHBsdWdfZXZlbnQrMHgyYS8weDMwIFtkcm1f a21zX2hlbHBlcl0KWyAgMjQ2LjY5MTU3MF0gIG91dHB1dF9wb2xsX2V4ZWN1dGUrMHgxOTgvMHgx YzAgW2RybV9rbXNfaGVscGVyXQpbICAyNDYuNjkyNjExXSAgcHJvY2Vzc19vbmVfd29yaysweDIz MS8weDYyMApbICAyNDYuNjkzNzI1XSAgd29ya2VyX3RocmVhZCsweDIxNC8weDNhMApbICAyNDYu Njk0NzU2XSAga3RocmVhZCsweDEyYi8weDE1MApbICAyNDYuNjk1ODU2XSAgPyB3cV9wb29sX2lk c19zaG93KzB4MTQwLzB4MTQwClsgIDI0Ni42OTY4ODhdICA/IGt0aHJlYWRfY3JlYXRlX3dvcmtl cl9vbl9jcHUrMHg3MC8weDcwClsgIDI0Ni42OTc5OThdICByZXRfZnJvbV9mb3JrKzB4M2EvMHg1 MApbICAyNDYuNjk5MDM0XSBJTkZPOiB0YXNrIGt3b3JrZXIvMDoxOjYwIGJsb2NrZWQgZm9yIG1v cmUgdGhhbiAxMjAgc2Vjb25kcy4KWyAgMjQ2LjcwMDE1M10gICAgICAgTm90IHRhaW50ZWQgNC4x OC4wLXJjNUx5dWRlLVRlc3QrICMyClsgIDI0Ni43MDExODJdICJlY2hvIDAgPiAvcHJvYy9zeXMv a2VybmVsL2h1bmdfdGFza190aW1lb3V0X3NlY3MiIGRpc2FibGVzIHRoaXMgbWVzc2FnZS4KWyAg MjQ2LjcwMjI3OF0ga3dvcmtlci8wOjEgICAgIEQgICAgMCAgICA2MCAgICAgIDIgMHg4MDAwMDAw MApbICAyNDYuNzAzMjkzXSBXb3JrcXVldWU6IHBtIHBtX3J1bnRpbWVfd29yawpbICAyNDYuNzA0 MzkzXSBDYWxsIFRyYWNlOgpbICAyNDYuNzA1NDAzXSAgX19zY2hlZHVsZSsweDMyMi8weGFmMApb ICAyNDYuNzA2NDM5XSAgPyB3YWl0X2Zvcl9jb21wbGV0aW9uKzB4MTA0LzB4MTkwClsgIDI0Ni43 MDczOTNdICBzY2hlZHVsZSsweDMzLzB4OTAKWyAgMjQ2LjcwODM3NV0gIHNjaGVkdWxlX3RpbWVv dXQrMHgzYTUvMHg1OTAKWyAgMjQ2LjcwOTI4OV0gID8gbWFya19oZWxkX2xvY2tzKzB4NTgvMHg4 MApbICAyNDYuNzEwMjA4XSAgPyBfcmF3X3NwaW5fdW5sb2NrX2lycSsweDJjLzB4NDAKWyAgMjQ2 LjcxMTIyMl0gID8gd2FpdF9mb3JfY29tcGxldGlvbisweDEwNC8weDE5MApbICAyNDYuNzEyMTM0 XSAgPyB0cmFjZV9oYXJkaXJxc19vbl9jYWxsZXIrMHhmNC8weDE5MApbICAyNDYuNzEzMDk0XSAg PyB3YWl0X2Zvcl9jb21wbGV0aW9uKzB4MTA0LzB4MTkwClsgIDI0Ni43MTM5NjRdICB3YWl0X2Zv cl9jb21wbGV0aW9uKzB4MTJjLzB4MTkwClsgIDI0Ni43MTQ4OTVdICA/IHdha2VfdXBfcSsweDgw LzB4ODAKWyAgMjQ2LjcxNTcyN10gID8gZ2V0X3dvcmtfcG9vbCsweDkwLzB4OTAKWyAgMjQ2Ljcx NjY0OV0gIGZsdXNoX3dvcmsrMHgxYzkvMHgyODAKWyAgMjQ2LjcxNzQ4M10gID8gZmx1c2hfd29y a3F1ZXVlX3ByZXBfcHdxcysweDFiMC8weDFiMApbICAyNDYuNzE4NDQyXSAgX19jYW5jZWxfd29y a190aW1lcisweDE0Ni8weDFkMApbICAyNDYuNzE5MjQ3XSAgY2FuY2VsX2RlbGF5ZWRfd29ya19z eW5jKzB4MTMvMHgyMApbICAyNDYuNzIwMDQzXSAgZHJtX2ttc19oZWxwZXJfcG9sbF9kaXNhYmxl KzB4MWYvMHgzMCBbZHJtX2ttc19oZWxwZXJdClsgIDI0Ni43MjExMjNdICBub3V2ZWF1X3Btb3Bz X3J1bnRpbWVfc3VzcGVuZCsweDNkLzB4YjAgW25vdXZlYXVdClsgIDI0Ni43MjE4OTddICBwY2lf cG1fcnVudGltZV9zdXNwZW5kKzB4NmIvMHgxOTAKWyAgMjQ2LjcyMjgyNV0gID8gcGNpX2hhc19s ZWdhY3lfcG1fc3VwcG9ydCsweDcwLzB4NzAKWyAgMjQ2LjcyMzczN10gIF9fcnBtX2NhbGxiYWNr KzB4N2EvMHgxZDAKWyAgMjQ2LjcyNDcyMV0gID8gcGNpX2hhc19sZWdhY3lfcG1fc3VwcG9ydCsw eDcwLzB4NzAKWyAgMjQ2LjcyNTYwN10gIHJwbV9jYWxsYmFjaysweDI0LzB4ODAKWyAgMjQ2Ljcy NjU1M10gID8gcGNpX2hhc19sZWdhY3lfcG1fc3VwcG9ydCsweDcwLzB4NzAKWyAgMjQ2LjcyNzM3 Nl0gIHJwbV9zdXNwZW5kKzB4MTQyLzB4NmIwClsgIDI0Ni43MjgxODVdICBwbV9ydW50aW1lX3dv cmsrMHg5Ny8weGMwClsgIDI0Ni43Mjg5MzhdICBwcm9jZXNzX29uZV93b3JrKzB4MjMxLzB4NjIw ClsgIDI0Ni43Mjk3OTZdICB3b3JrZXJfdGhyZWFkKzB4NDQvMHgzYTAKWyAgMjQ2LjczMDYxNF0g IGt0aHJlYWQrMHgxMmIvMHgxNTAKWyAgMjQ2LjczMTM5NV0gID8gd3FfcG9vbF9pZHNfc2hvdysw eDE0MC8weDE0MApbICAyNDYuNzMyMjAyXSAgPyBrdGhyZWFkX2NyZWF0ZV93b3JrZXJfb25fY3B1 KzB4NzAvMHg3MApbICAyNDYuNzMyODc4XSAgcmV0X2Zyb21fZm9yaysweDNhLzB4NTAKWyAgMjQ2 LjczMzc2OF0gSU5GTzogdGFzayBrd29ya2VyLzQ6Mjo0MjIgYmxvY2tlZCBmb3IgbW9yZSB0aGFu IDEyMCBzZWNvbmRzLgpbICAyNDYuNzM0NTg3XSAgICAgICBOb3QgdGFpbnRlZCA0LjE4LjAtcmM1 THl1ZGUtVGVzdCsgIzIKWyAgMjQ2LjczNTM5M10gImVjaG8gMCA+IC9wcm9jL3N5cy9rZXJuZWwv aHVuZ190YXNrX3RpbWVvdXRfc2VjcyIgZGlzYWJsZXMgdGhpcyBtZXNzYWdlLgpbICAyNDYuNzM2 MTEzXSBrd29ya2VyLzQ6MiAgICAgRCAgICAwICAgNDIyICAgICAgMiAweDgwMDAwMDgwClsgIDI0 Ni43MzY3ODldIFdvcmtxdWV1ZTogZXZlbnRzX2xvbmcgZHJtX2RwX21zdF9saW5rX3Byb2JlX3dv cmsgW2RybV9rbXNfaGVscGVyXQpbICAyNDYuNzM3NjY1XSBDYWxsIFRyYWNlOgpbICAyNDYuNzM4 NDkwXSAgX19zY2hlZHVsZSsweDMyMi8weGFmMApbICAyNDYuNzM5MjUwXSAgc2NoZWR1bGUrMHgz My8weDkwClsgIDI0Ni43Mzk5MDhdICBycG1fcmVzdW1lKzB4MTljLzB4ODUwClsgIDI0Ni43NDA3 NTBdICA/IGZpbmlzaF93YWl0KzB4OTAvMHg5MApbICAyNDYuNzQxNTQxXSAgX19wbV9ydW50aW1l X3Jlc3VtZSsweDRlLzB4OTAKWyAgMjQ2Ljc0MjM3MF0gIG52NTBfZGlzcF9hdG9taWNfY29tbWl0 KzB4MzEvMHgyMTAgW25vdXZlYXVdClsgIDI0Ni43NDMxMjRdICBkcm1fYXRvbWljX2NvbW1pdCsw eDRhLzB4NTAgW2RybV0KWyAgMjQ2Ljc0Mzc3NV0gIHJlc3RvcmVfZmJkZXZfbW9kZV9hdG9taWMr MHgxYzgvMHgyNDAgW2RybV9rbXNfaGVscGVyXQpbICAyNDYuNzQ0NjAzXSAgcmVzdG9yZV9mYmRl dl9tb2RlKzB4MzEvMHgxNDAgW2RybV9rbXNfaGVscGVyXQpbICAyNDYuNzQ1MzczXSAgZHJtX2Zi X2hlbHBlcl9yZXN0b3JlX2ZiZGV2X21vZGVfdW5sb2NrZWQrMHg1NC8weGIwIFtkcm1fa21zX2hl bHBlcl0KWyAgMjQ2Ljc0NjIyMF0gIGRybV9mYl9oZWxwZXJfc2V0X3BhcisweDJkLzB4NTAgW2Ry bV9rbXNfaGVscGVyXQpbICAyNDYuNzQ2ODg0XSAgZHJtX2ZiX2hlbHBlcl9ob3RwbHVnX2V2ZW50 LnBhcnQuMjgrMHg5Ni8weGIwIFtkcm1fa21zX2hlbHBlcl0KWyAgMjQ2Ljc0NzY3NV0gIGRybV9m Yl9oZWxwZXJfb3V0cHV0X3BvbGxfY2hhbmdlZCsweDIzLzB4MzAgW2RybV9rbXNfaGVscGVyXQpb ICAyNDYuNzQ4NTQ0XSAgZHJtX2ttc19oZWxwZXJfaG90cGx1Z19ldmVudCsweDJhLzB4MzAgW2Ry bV9rbXNfaGVscGVyXQpbICAyNDYuNzQ5NDM5XSAgbnY1MF9tc3RtX2hvdHBsdWcrMHgxNS8weDIw IFtub3V2ZWF1XQpbICAyNDYuNzUwMTExXSAgZHJtX2RwX3NlbmRfbGlua19hZGRyZXNzKzB4MTc3 LzB4MWMwIFtkcm1fa21zX2hlbHBlcl0KWyAgMjQ2Ljc1MDc2NF0gIGRybV9kcF9jaGVja19hbmRf c2VuZF9saW5rX2FkZHJlc3MrMHhhOC8weGQwIFtkcm1fa21zX2hlbHBlcl0KWyAgMjQ2Ljc1MTYw Ml0gIGRybV9kcF9tc3RfbGlua19wcm9iZV93b3JrKzB4NTEvMHg5MCBbZHJtX2ttc19oZWxwZXJd ClsgIDI0Ni43NTIzMTRdICBwcm9jZXNzX29uZV93b3JrKzB4MjMxLzB4NjIwClsgIDI0Ni43NTI5 NzldICB3b3JrZXJfdGhyZWFkKzB4NDQvMHgzYTAKWyAgMjQ2Ljc1MzgzOF0gIGt0aHJlYWQrMHgx MmIvMHgxNTAKWyAgMjQ2Ljc1NDYxOV0gID8gd3FfcG9vbF9pZHNfc2hvdysweDE0MC8weDE0MApb ICAyNDYuNzU1Mzg2XSAgPyBrdGhyZWFkX2NyZWF0ZV93b3JrZXJfb25fY3B1KzB4NzAvMHg3MApb ICAyNDYuNzU2MTYyXSAgcmV0X2Zyb21fZm9yaysweDNhLzB4NTAKWyAgMjQ2Ljc1Njg0N10KICAg ICAgICAgICAgICAgU2hvd2luZyBhbGwgbG9ja3MgaGVsZCBpbiB0aGUgc3lzdGVtOgpbICAyNDYu NzU4MjYxXSAzIGxvY2tzIGhlbGQgYnkga3dvcmtlci80OjAvMzc6ClsgIDI0Ni43NTkwMTZdICAj MDogMDAwMDAwMDBmOGRmNGQyZCAoKHdxX2NvbXBsZXRpb24pImV2ZW50cyIpeysuKy59LCBhdDog cHJvY2Vzc19vbmVfd29yaysweDFiMy8weDYyMApbICAyNDYuNzU5ODU2XSAgIzE6IDAwMDAwMDAw ZTYwNjU0NjEgKCh3b3JrX2NvbXBsZXRpb24pKCYoJmRldi0+bW9kZV9jb25maWcub3V0cHV0X3Bv bGxfd29yayktPndvcmspKXsrLisufSwgYXQ6IHByb2Nlc3Nfb25lX3dvcmsrMHgxYjMvMHg2MjAK WyAgMjQ2Ljc2MDY3MF0gICMyOiAwMDAwMDAwMGNiNjY3MzVmICgmaGVscGVyLT5sb2NrKXsrLisu fSwgYXQ6IGRybV9mYl9oZWxwZXJfaG90cGx1Z19ldmVudC5wYXJ0LjI4KzB4MjAvMHhiMCBbZHJt X2ttc19oZWxwZXJdClsgIDI0Ni43NjE1MTZdIDIgbG9ja3MgaGVsZCBieSBrd29ya2VyLzA6MS82 MDoKWyAgMjQ2Ljc2MjI3NF0gICMwOiAwMDAwMDAwMGZmZjZiZTBmICgod3FfY29tcGxldGlvbiki cG0iKXsrLisufSwgYXQ6IHByb2Nlc3Nfb25lX3dvcmsrMHgxYjMvMHg2MjAKWyAgMjQ2Ljc2Mjk4 Ml0gICMxOiAwMDAwMDAwMDVhYjQ0ZmI0ICgod29ya19jb21wbGV0aW9uKSgmZGV2LT5wb3dlci53 b3JrKSl7Ky4rLn0sIGF0OiBwcm9jZXNzX29uZV93b3JrKzB4MWIzLzB4NjIwClsgIDI0Ni43NjM4 OTBdIDEgbG9jayBoZWxkIGJ5IGtodW5ndGFza2QvNjQ6ClsgIDI0Ni43NjQ2NjRdICAjMDogMDAw MDAwMDA4Y2I4YjVjMyAocmN1X3JlYWRfbG9jayl7Li4uLn0sIGF0OiBkZWJ1Z19zaG93X2FsbF9s b2NrcysweDIzLzB4MTg1ClsgIDI0Ni43NjU1ODhdIDUgbG9ja3MgaGVsZCBieSBrd29ya2VyLzQ6 Mi80MjI6ClsgIDI0Ni43NjY0NDBdICAjMDogMDAwMDAwMDAyMzJmMDk1OSAoKHdxX2NvbXBsZXRp b24pImV2ZW50c19sb25nIil7Ky4rLn0sIGF0OiBwcm9jZXNzX29uZV93b3JrKzB4MWIzLzB4NjIw ClsgIDI0Ni43NjczOTBdICAjMTogMDAwMDAwMDBiYjU5YjEzNCAoKHdvcmtfY29tcGxldGlvbiko Jm1nci0+d29yaykpeysuKy59LCBhdDogcHJvY2Vzc19vbmVfd29yaysweDFiMy8weDYyMApbICAy NDYuNzY4MTU0XSAgIzI6IDAwMDAwMDAwY2I2NjczNWYgKCZoZWxwZXItPmxvY2speysuKy59LCBh dDogZHJtX2ZiX2hlbHBlcl9yZXN0b3JlX2ZiZGV2X21vZGVfdW5sb2NrZWQrMHg0Yy8weGIwIFtk cm1fa21zX2hlbHBlcl0KWyAgMjQ2Ljc2ODk2Nl0gICMzOiAwMDAwMDAwMDRjOGYwYjZiIChjcnRj X3d3X2NsYXNzX2FjcXVpcmUpeysuKy59LCBhdDogcmVzdG9yZV9mYmRldl9tb2RlX2F0b21pYysw eDRiLzB4MjQwIFtkcm1fa21zX2hlbHBlcl0KWyAgMjQ2Ljc2OTkyMV0gICM0OiAwMDAwMDAwMDRj MzRhMjk2IChjcnRjX3d3X2NsYXNzX211dGV4KXsrLisufSwgYXQ6IGRybV9tb2Rlc2V0X2JhY2tv ZmYrMHg4YS8weDFiMCBbZHJtXQpbICAyNDYuNzcwODM5XSAxIGxvY2sgaGVsZCBieSBkbWVzZy8x MDM4OgpbICAyNDYuNzcxNzM5XSAyIGxvY2tzIGhlbGQgYnkgenNoLzExNzI6ClsgIDI0Ni43NzI2 NTBdICAjMDogMDAwMDAwMDA4MzZkMDQzOCAoJnR0eS0+bGRpc2Nfc2VtKXsrKysrfSwgYXQ6IGxk c2VtX2Rvd25fcmVhZCsweDM3LzB4NDAKWyAgMjQ2Ljc3MzY4MF0gICMxOiAwMDAwMDAwMDFmNGY0 ZDQ4ICgmbGRhdGEtPmF0b21pY19yZWFkX2xvY2speysuKy59LCBhdDogbl90dHlfcmVhZCsweGMx LzB4ODcwCgpbICAyNDYuNzc1NTIyXSA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KClNvLCB0byBmaXggdGhpcyAoYW5kIGFueSBvdGhlciBwb3NzaWJsZSBkZWFk bG9jayBpc3N1ZXMgbGlrZSB0aGlzIHRoYXQKY291bGQgb2NjdXIgaW4gdGhlIG91dHB1dF9wb2xs X2NoYW5nZWQgcGF0Y2gpIHdlIG1ha2Ugc3VyZSB0aGF0Cm5vdXZlYXUncyBvdXRwdXRfcG9sbF9j aGFuZ2VkIGZ1bmN0aW9ucyBncmFiIGEgcnVudGltZSBwb3dlciByZWYgYmVmb3JlCnNlbmRpbmcg YW55IGhvdHBsdWcgZXZlbnRzLCBhbmQgaG9sZCBpdCB1bnRpbCB3ZSdyZSBmaW5pc2hlZC4gV2UK aW50cm9kdWNlIHRoaXMgdGhyb3VnaCBhZGRpbmcgYSBnZW5lcmljIERSTSBoZWxwZXIgd2hpY2gg b3RoZXIgZHJpdmVycwptYXkgcmV1c2UuCgpUaGlzIGZpeGVzIGRlYWRsb2NrIGlzc3VlcyB3aGVu IGluIGZiY29uIHdpdGggbm91dmVhdSBvbiBteSBQNTAsIGFuZApzaG91bGQgZml4IGl0IGZvciBl dmVyeW9uZSBlbHNlJ3MgYXMgd2VsbCEKClNpZ25lZC1vZmYtYnk6IEx5dWRlIFBhdWwgPGx5dWRl QHJlZGhhdC5jb20+ClJldmlld2VkLWJ5OiBLYXJvbCBIZXJic3QgPGthcm9saGVyYnN0QGdtYWls LmNvbT4KQ2M6IEx1a2FzIFd1bm5lciA8bHVrYXNAd3VubmVyLmRlPgpDYzogc3RhYmxlQHZnZXIu a2VybmVsLm9yZwotLS0KQ2hhbmdlcyBzaW5jZSB2MToKIC0gQWRkIGEgZ2VuZXJpYyBoZWxwZXIg Zm9yIERSTSB0byBoYW5kbGUgdGhpcwoKIGRyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMg ICAgICAgICB8IDIzICsrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vbm91 dmVhdS9kaXNwbnY1MC9kaXNwLmMgfCAgMiArLQogaW5jbHVkZS9kcm0vZHJtX2ZiX2hlbHBlci5o ICAgICAgICAgICAgIHwgIDUgKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMjkgaW5zZXJ0aW9ucygr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVs cGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jCmluZGV4IDJlZTFlYWE2NjE4 OC4uMWFiMmYzNjQ2NTI2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBl ci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVyLmMKQEAgLTM0LDYgKzM0LDcg QEAKICNpbmNsdWRlIDxsaW51eC9zeXNycS5oPgogI2luY2x1ZGUgPGxpbnV4L3NsYWIuaD4KICNp bmNsdWRlIDxsaW51eC9tb2R1bGUuaD4KKyNpbmNsdWRlIDxsaW51eC9wbV9ydW50aW1lLmg+CiAj aW5jbHVkZSA8ZHJtL2RybVAuaD4KICNpbmNsdWRlIDxkcm0vZHJtX2NydGMuaD4KICNpbmNsdWRl IDxkcm0vZHJtX2ZiX2hlbHBlci5oPgpAQCAtMjkyOCw2ICsyOTI5LDI4IEBAIHZvaWQgZHJtX2Zi X2hlbHBlcl9vdXRwdXRfcG9sbF9jaGFuZ2VkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB9CiBF WFBPUlRfU1lNQk9MKGRybV9mYl9oZWxwZXJfb3V0cHV0X3BvbGxfY2hhbmdlZCk7CiAKKy8qKgor ICogZHJtX2ZiX2hlbHBlcl9vdXRwdXRfcG9sbF9jaGFuZ2VkX3dpdGhfcnBtIC0gRFJNIG1vZGUK KyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZyBc Lm91dHB1dF9wb2xsX2NoYW5nZWQKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGhlbHBlciBmb3IgZmJkZXYgZW11bGF0aW9uCisgKiBAZGV2OiBEUk0gZGV2 aWNlCisgKgorICogU2FtZSBhcyBkcm1fZmJfaGVscGVyX291dHB1dF9wb2xsX2NoYW5nZWQsIGV4 Y2VwdCB0aGF0IGl0IG1ha2VzIHN1cmUgdGhhdAorICogdGhlIGRldmljZSBpcyBhY3RpdmUgYnkg c3luY2hyb25vdXNseSBncmFiYmluZyBhIHJ1bnRpbWUgcG93ZXIgcmVmZXJlbmNlCisgKiB3aGls ZSBwcm9iaW5nLgorICovCit2b2lkIGRybV9mYl9oZWxwZXJfb3V0cHV0X3BvbGxfY2hhbmdlZF93 aXRoX3JwbShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQoreworCWludCByZXQ7CisKKwlyZXQgPSBw bV9ydW50aW1lX2dldF9zeW5jKGRldi0+ZGV2KTsKKwlpZiAoV0FSTl9PTihyZXQgPCAwICYmIHJl dCAhPSAtRUFDQ0VTKSkKKwkJcmV0dXJuOworCWRybV9mYl9oZWxwZXJfaG90cGx1Z19ldmVudChk ZXYtPmZiX2hlbHBlcik7CisJcG1fcnVudGltZV9wdXQoZGV2LT5kZXYpOworfQorRVhQT1JUX1NZ TUJPTChkcm1fZmJfaGVscGVyX291dHB1dF9wb2xsX2NoYW5nZWRfd2l0aF9ycG0pOworCiAvKiBU aGUgS2NvbmZpZyBEUk1fS01TX0hFTFBFUiBzZWxlY3RzIEZSQU1FQlVGRkVSX0NPTlNPTEUgKGlm ICFFWFBFUlQpCiAgKiBidXQgdGhlIG1vZHVsZSBkb2Vzbid0IGRlcGVuZCBvbiBhbnkgZmIgY29u c29sZSBzeW1ib2xzLiAgQXQgbGVhc3QKICAqIGF0dGVtcHQgdG8gbG9hZCBmYmNvbiB0byBhdm9p ZCBsZWF2aW5nIHRoZSBzeXN0ZW0gd2l0aG91dCBhIHVzYWJsZSBjb25zb2xlLgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvZGlzcG52NTAvZGlzcC5jIGIvZHJpdmVycy9ncHUv ZHJtL25vdXZlYXUvZGlzcG52NTAvZGlzcC5jCmluZGV4IGViM2U0MWE3ODgwNi4uZmEzYWI2MThh MGY5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnY1MC9kaXNwLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvZGlzcG52NTAvZGlzcC5jCkBAIC0yMDE1LDcg KzIwMTUsNyBAQCBudjUwX2Rpc3BfYXRvbWljX3N0YXRlX2FsbG9jKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYpCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9tb2RlX2NvbmZpZ19mdW5jcwogbnY1MF9k aXNwX2Z1bmMgPSB7CiAJLmZiX2NyZWF0ZSA9IG5vdXZlYXVfdXNlcl9mcmFtZWJ1ZmZlcl9jcmVh dGUsCi0JLm91dHB1dF9wb2xsX2NoYW5nZWQgPSBkcm1fZmJfaGVscGVyX291dHB1dF9wb2xsX2No YW5nZWQsCisJLm91dHB1dF9wb2xsX2NoYW5nZWQgPSBkcm1fZmJfaGVscGVyX291dHB1dF9wb2xs X2NoYW5nZWRfd2l0aF9ycG0sCiAJLmF0b21pY19jaGVjayA9IG52NTBfZGlzcF9hdG9taWNfY2hl Y2ssCiAJLmF0b21pY19jb21taXQgPSBudjUwX2Rpc3BfYXRvbWljX2NvbW1pdCwKIAkuYXRvbWlj X3N0YXRlX2FsbG9jID0gbnY1MF9kaXNwX2F0b21pY19zdGF0ZV9hbGxvYywKZGlmZiAtLWdpdCBh L2luY2x1ZGUvZHJtL2RybV9mYl9oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9mYl9oZWxwZXIu aAppbmRleCBiMDY5NDMzZTdmYzEuLmNhODA5YmZiYWViYiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9k cm0vZHJtX2ZiX2hlbHBlci5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9mYl9oZWxwZXIuaApAQCAt MzMwLDYgKzMzMCw3IEBAIHZvaWQgZHJtX2ZiX2hlbHBlcl9mYmRldl90ZWFyZG93bihzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KTsKIAogdm9pZCBkcm1fZmJfaGVscGVyX2xhc3RjbG9zZShzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KTsKIHZvaWQgZHJtX2ZiX2hlbHBlcl9vdXRwdXRfcG9sbF9jaGFuZ2Vk KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwordm9pZCBkcm1fZmJfaGVscGVyX291dHB1dF9wb2xs X2NoYW5nZWRfd2l0aF9ycG0oc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAjZWxzZQogc3RhdGlj IGlubGluZSB2b2lkIGRybV9mYl9oZWxwZXJfcHJlcGFyZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAogCQkJCQlzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqaGVscGVyLApAQCAtNTY0LDYgKzU2NSwxMCBA QCBzdGF0aWMgaW5saW5lIHZvaWQgZHJtX2ZiX2hlbHBlcl9vdXRwdXRfcG9sbF9jaGFuZ2VkKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYpCiB7CiB9CiAKK3N0YXRpYyBpbmxpbmUgdm9pZCBkcm1fZmJf aGVscGVyX291dHB1dF9wb2xsX2NoYW5nZWRfd2l0aF9ycG0oc3RydWN0IGRybV9kZXZpY2UgKmRl dikKK3sKK30KKwogI2VuZGlmCiAKIHN0YXRpYyBpbmxpbmUgaW50Ci0tIAoyLjE3LjEKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZlYXUgbWFpbGlu ZyBsaXN0Ck5vdXZlYXVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vbm91dmVhdQo=