From nobody Fri Apr 26 09:47:39 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) client-ip=66.175.222.12; envelope-from=bounce+27952+48629+1787277+3901457@groups.io; helo=web01.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+48629+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1570610067; cv=none; d=zoho.com; s=zohoarc; b=m5CejW629oPkKpN71PqeYyAZLM7Ruyy0fa7lreUIYXAQ7vQmbBgVrBYGzHjFMzlp7FybrgcHKTpojzRf7C6YP+ennJ94+a69M2TnI5A1dEurSN8OLs+56OXc0R21QF/Z5RWREYFqPyyHIlW03rUaj1mfpNGBAB/VJbH33dluGwo= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1570610067; h=Content-Type:Date:From:List-Id:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:Sender:Subject:To; bh=FjEupvVNNKID1451n+aKeZ9bt8HIEVqpOBnoZzpVi2E=; b=QetDz7uQFWetTwKPK14KECFfgaKHR6cLOt3E+z9ZwqjOUnIchH8HRzsBaqP0GTBGoMKIiDygqevYad+vJH8NidlI8ngu6ne54NLAmaN7R+Q28DlnfQ5hkbkYOWV0P4DBRGukTw9VGRu8ntBaQ+ez7VC9JBihi7fZH0SayJWqp+M= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of groups.io designates 66.175.222.12 as permitted sender) smtp.mailfrom=bounce+27952+48629+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) header.from= Received: from web01.groups.io (web01.groups.io [66.175.222.12]) by mx.zohomail.com with SMTPS id 1570610067513968.3366346275136; Wed, 9 Oct 2019 01:34:27 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id KrQ7YY1788612xx4GQfywEMJ; Wed, 09 Oct 2019 01:34:26 -0700 X-Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web12.2766.1570607983823069596 for ; Wed, 09 Oct 2019 00:59:49 -0700 X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False X-Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Oct 2019 00:59:42 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,273,1566889200"; d="txt'?scan'208,217";a="200062782" X-Received: from pgsmsx103.gar.corp.intel.com ([10.221.44.82]) by FMSMGA003.fm.intel.com with ESMTP; 09 Oct 2019 00:59:41 -0700 X-Received: from pgsmsx108.gar.corp.intel.com ([169.254.8.71]) by PGSMSX103.gar.corp.intel.com ([169.254.2.183]) with mapi id 14.03.0439.000; Wed, 9 Oct 2019 15:59:40 +0800 From: "Chen, Kenji" To: "devel@edk2.groups.io" Subject: [edk2-devel] Patch for Bug 2236 on Bugzilla Thread-Topic: Patch for Bug 2236 on Bugzilla Thread-Index: AdV+dzqldbXaiZg0SoCObEyNpWodTg== Date: Wed, 9 Oct 2019 07:59:40 +0000 Message-ID: Accept-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-originating-ip: [172.30.20.206] MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,kenji.chen@intel.com X-Gm-Message-State: TsiLupTKBvcesQvR0V0aoChqx1787277AA= Content-Language: en-US Content-Type: multipart/mixed; boundary="_004_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1570610066; bh=CB/22UwXD0OOm1gyMqYYK9ptLFeL9pRvadZPDzcRT5Q=; h=Content-Type:Date:From:Reply-To:Subject:To; b=MWnua/irvDhBvn+GyYLD3rXqmBxs5Ugw/yDurwnKif1Qt6YIMq3gj6jm4J88ER2kQGZ JUMgmcchIUi08n05mUkINPgQlp2G2/FMNYh3O8YrhToiYfSBIyjD977LBMAWfRyPwPOmE AEC9izv99ouLipgNAIUQwtpw46MaJHw3RKo= X-Zoho-Virus-Status: 1 X-ZohoMail-DKIM: pass (identity @groups.io) --_004_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_ Content-Type: multipart/alternative; boundary="_000_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_" --_000_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Commit Message: FmpDevicePkg: Deferred LSV Commit after Platform Health Check - LSV variable in each FmpDevice is updated after each successful FmpSetIm= age invocation. This blocks the deferred SVN mechanism performed by platfor= side. Add a PCD to remove it to make platform code feasible to handle the = mechanism of deferred LSV commit. - Add FmpDevieSetImageEx function to delivr LsvUpdate parameter for FmpDev= iceSetImage function. The value is from Fmp capsule image header to indicat= e platform side this is a LSV update. -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#48629): https://edk2.groups.io/g/devel/message/48629 Mute This Topic: https://groups.io/mt/34461090/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- --_000_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable

Commit Message:

 

FmpDevicePkg: Deferred LSV Commit after Platfor= m Health Check

 

- LSV variable in each FmpDevice is updated aft= er each successful FmpSetImage invocation. This blocks the deferred SVN mec= hanism performed by platfor side. Add a PCD to remove it to make platform code feasible to handle the mechanism of deferred LSV= commit.

- Add FmpDevieSetImageEx function to delivr Lsv= Update parameter for FmpDeviceSetImage function. The value is from Fmp caps= ule image header to indicate platform side this is a LSV update.

_._,_._,_

Groups.io Links:

You receive all messages sent to this group.

View/Reply Online (#48629) | | Mu= te This Topic | New Topic

Your Subscripti= on | Contact Group Owner | Unsubscribe [importer@patchew.org]

_._,_._,_
--_000_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_-- --_004_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_ Content-Type: text/plain; name="patch_20191003_DLSV.txt" Content-Description: patch_20191003_DLSV.txt Content-Disposition: attachment; filename="patch_20191003_DLSV.txt"; size=15948; creation-date="Wed, 09 Oct 2019 07:57:10 GMT"; modification-date="Wed, 09 Oct 2019 07:57:10 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL0ZtcERldmljZVBrZy9GbXBEZXZpY2VQa2cuZGVjIGIvRm1wRGV2aWNlUGtn L0ZtcERldmljZVBrZy5kZWMKaW5kZXggODMxMmI3Y2IyMi4uMmEyNmRlMmQzZCAxMDA2NDQKLS0t IGEvRm1wRGV2aWNlUGtnL0ZtcERldmljZVBrZy5kZWMKKysrIGIvRm1wRGV2aWNlUGtnL0ZtcERl dmljZVBrZy5kZWMKQEAgLTcwLDYgKzcwLDExIEBACiAgICMgIHNldHRpbmcgdGhlIHZhbHVlIHRv IHswfS4NCiAgICMgQFByb21wdCBTSEEtMjU2IGhhc2ggb2YgUEtDUzcgdGVzdCBrZXkuDQogICBn Rm1wRGV2aWNlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRm1wRGV2aWNlVGVzdEtleVNoYTI1NkRpZ2Vz dHx7MHgyRSwgMHg5NywgMHg4OSwgMHgxQiwgMHhEQiwgMHhFNywgMHgwOCwgMHhBQSwgIDB4OEMs IDB4QjIsIDB4OEYsIDB4QUQsIDB4MjAsIDB4QTksIDB4ODMsIDB4QzcsICAweDg0LCAweDdELCAw eDRGLCAweEVFLCAweDQ4LCAweDI1LCAweEU5LCAweDRELCAgMHgzOSwgMHhGQSwgMHgzNCwgMHg5 QSwgMHhCOCwgMHhCMSwgMHhDNCwgMHgyNn18Vk9JRCp8MHg0MDAwMDAwOQ0KKyAgIw0KKyAgIyBE ZWZlcnJlZCBMU1YgY29tbWl0IHRvIHN1cHBvcnQgUmVzaWxpZW5jeSBGVyB1cGRhdGUNCisgICMg ICBUUlVFICAtIExzdiBpcyBoYW5kbGVkIGJ5IHBsYXRmb3JtIGNvZGUNCisgICMgICBGQUxTRSAt IExzdiBpcyBoYW5kbGVkIGJ5IEZtcERldmljZVBrZw0KKyAgZ0ZtcERldmljZVBrZ1Rva2VuU3Bh Y2VHdWlkLlBjZExzdlBvbGljeXxGQUxTRXxCT09MRUFOfDB4NDAwMDAwMEENCiANCiBbUGNkc0Zp eGVkQXRCdWlsZCwgUGNkc1BhdGNoYWJsZUluTW9kdWxlXQ0KICAgIyMgVGhlIGNvbG9yIG9mIHRo ZSBwcm9ncmVzcyBiYXIgZHVyaW5nIGEgZmlybXdhcmUgdXBkYXRlLiAgRWFjaCBmaXJtd2FyZQ0K ZGlmZiAtLWdpdCBhL0ZtcERldmljZVBrZy9GbXBEZXZpY2VQa2cuZHNjIGIvRm1wRGV2aWNlUGtn L0ZtcERldmljZVBrZy5kc2MKaW5kZXggYmYyODNiOTNlYS4uYzYzOWMxZjMxOSAxMDA2NDQKLS0t IGEvRm1wRGV2aWNlUGtnL0ZtcERldmljZVBrZy5kc2MKKysrIGIvRm1wRGV2aWNlUGtnL0ZtcERl dmljZVBrZy5kc2MKQEAgLTEwNCw2ICsxMDQsMTAgQEAKICAgICAgICMNCiAgICAgICBnRm1wRGV2 aWNlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRm1wRGV2aWNlSW1hZ2VJZE5hbWV8TCJTYW1wbGUgRmly bXdhcmUgRGV2aWNlIg0KICAgICAgICMNCisgICAgICAjIERlZmVycmVkIFNWTiBjb21taXQgdG8g c3VwcG9ydCBSZXNpbGllbmN5IEZXIHVwZGF0ZQ0KKyAgICAgICMNCisgICAgICBnRm1wRGV2aWNl UGtnVG9rZW5TcGFjZUd1aWQuUGNkTHN2UG9saWN5fEZBTFNFDQorICAgICAgIw0KICAgICAgICMg Q2VydGlmaWNhdGVzIHVzZWQgdG8gYXV0aGVudGljYXRlIGNhcHN1bGUgdXBkYXRlIGltYWdlDQog ICAgICAgIw0KICAgICAgICFpbmNsdWRlIEJhc2VUb29scy9Tb3VyY2UvUHl0aG9uL1BrY3M3U2ln bi9UZXN0Um9vdC5jZXIuZ0ZtcERldmljZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEZtcERldmljZVBr Y3M3Q2VydEJ1ZmZlclhkci5pbmMNCmRpZmYgLS1naXQgYS9GbXBEZXZpY2VQa2cvRm1wRHhlL0Zt cER4ZS5jIGIvRm1wRGV2aWNlUGtnL0ZtcER4ZS9GbXBEeGUuYwppbmRleCAzY2E5ZDM1MjZhLi45 ZmQ0NmFhM2FiIDEwMDY0NAotLS0gYS9GbXBEZXZpY2VQa2cvRm1wRHhlL0ZtcER4ZS5jCisrKyBi L0ZtcERldmljZVBrZy9GbXBEeGUvRm1wRHhlLmMKQEAgLTI1MCw5ICsyNTAsMTEgQEAgR2V0TG93 ZXN0U3VwcG9ydGVkVmVyc2lvbiAoCiAgIC8vDQogICAvLyBDaGVjayB0aGUgbG93ZXN0IHN1cHBv cnRlZCB2ZXJzaW9uIFVFRkkgdmFyaWFibGUgZm9yIHRoaXMgZGV2aWNlDQogICAvLw0KLSAgVmFy aWFibGVMb3dlc3RTdXBwb3J0ZWRWZXJzaW9uID0gR2V0TG93ZXN0U3VwcG9ydGVkVmVyc2lvbkZy b21WYXJpYWJsZSAoUHJpdmF0ZSk7DQotICBpZiAoVmFyaWFibGVMb3dlc3RTdXBwb3J0ZWRWZXJz aW9uID4gUmV0dXJuTHN2KSB7DQotICAgIFJldHVybkxzdiA9IFZhcmlhYmxlTG93ZXN0U3VwcG9y dGVkVmVyc2lvbjsNCisgIGlmICghRmVhdHVyZVBjZEdldCAoUGNkTHN2UG9saWN5KSkgew0KKyAg ICBWYXJpYWJsZUxvd2VzdFN1cHBvcnRlZFZlcnNpb24gPSBHZXRMb3dlc3RTdXBwb3J0ZWRWZXJz aW9uRnJvbVZhcmlhYmxlIChQcml2YXRlKTsNCisgICAgaWYgKFZhcmlhYmxlTG93ZXN0U3VwcG9y dGVkVmVyc2lvbiA+IFJldHVybkxzdikgew0KKyAgICAgIFJldHVybkxzdiA9IFZhcmlhYmxlTG93 ZXN0U3VwcG9ydGVkVmVyc2lvbjsNCisgICAgfQ0KICAgfQ0KIA0KICAgLy8NCkBAIC05NjMsNyAr OTY1LDcgQEAgU2V0VGhlSW1hZ2UgKAogICBWT0lEICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKkZtcEhlYWRlcjsNCiAgIFVJTlROICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGbXBQ YXlsb2FkU2l6ZTsNCiAgIFVJTlQzMiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbGxIZWFk ZXJTaXplOw0KLSAgVUlOVDMyICAgICAgICAgICAgICAgICAgICAgICAgICAgIEluY29tbWluZ0Z3 VmVyc2lvbjsNCisgIFVJTlQzMiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbmNvbWluZ0Z3 VmVyc2lvbjsNCiAgIFVJTlQzMiAgICAgICAgICAgICAgICAgICAgICAgICAgICBMYXN0QXR0ZW1w dFN0YXR1czsNCiAgIFVJTlQzMiAgICAgICAgICAgICAgICAgICAgICAgICAgICBWZXJzaW9uOw0K ICAgVUlOVDMyICAgICAgICAgICAgICAgICAgICAgICAgICAgIExvd2VzdFN1cHBvcnRlZFZlcnNp b247DQpAQCAtOTc1LDcgKzk3Nyw3IEBAIFNldFRoZUltYWdlICgKICAgRm1wSGVhZGVyICAgICAg ICAgID0gTlVMTDsNCiAgIEZtcFBheWxvYWRTaXplICAgICA9IDA7DQogICBBbGxIZWFkZXJTaXpl ICAgICAgPSAwOw0KLSAgSW5jb21taW5nRndWZXJzaW9uID0gMDsNCisgIEluY29taW5nRndWZXJz aW9uICA9IDA7DQogICBMYXN0QXR0ZW1wdFN0YXR1cyAgPSBMQVNUX0FUVEVNUFRfU1RBVFVTX0VS Uk9SX1VOU1VDQ0VTU0ZVTDsNCiANCiAgIGlmICghRmVhdHVyZVBjZEdldCAoUGNkRm1wRGV2aWNl U3RvcmFnZUFjY2Vzc0VuYWJsZSkpIHsNCkBAIC05OTYsNyArOTk4LDcgQEAgU2V0VGhlSW1hZ2Ug KAogICAvLw0KICAgLy8gU2V0IHRvIDAgdG8gY2xlYXIgYW55IHByZXZpb3VzIHJlc3VsdHMuDQog ICAvLw0KLSAgU2V0TGFzdEF0dGVtcHRWZXJzaW9uSW5WYXJpYWJsZSAoUHJpdmF0ZSwgSW5jb21t aW5nRndWZXJzaW9uKTsNCisgIFNldExhc3RBdHRlbXB0VmVyc2lvbkluVmFyaWFibGUgKFByaXZh dGUsIEluY29taW5nRndWZXJzaW9uKTsNCiANCiAgIC8vDQogICAvLyBpZiB3ZSBoYXZlIGxvY2tl ZCB0aGUgZGV2aWNlLCB0aGVuIHNraXAgdGhlIHNldCBvcGVyYXRpb24uDQpAQCAtMTAzMCwxMiAr MTAzMiwxMiBAQCBTZXRUaGVJbWFnZSAoCiAgICAgU3RhdHVzID0gRUZJX0FCT1JURUQ7DQogICAg IGdvdG8gY2xlYW51cDsNCiAgIH0NCi0gIFN0YXR1cyA9IEdldEZtcFBheWxvYWRIZWFkZXJWZXJz aW9uIChGbXBIZWFkZXIsIEZtcFBheWxvYWRTaXplLCAmSW5jb21taW5nRndWZXJzaW9uKTsNCisg IFN0YXR1cyA9IEdldEZtcFBheWxvYWRIZWFkZXJWZXJzaW9uIChGbXBIZWFkZXIsIEZtcFBheWxv YWRTaXplLCAmSW5jb21pbmdGd1ZlcnNpb24pOw0KICAgaWYgKCFFRklfRVJST1IgKFN0YXR1cykp IHsNCiAgICAgLy8NCiAgICAgLy8gU2V0IHRvIGFjdHVhbCB2YWx1ZQ0KICAgICAvLw0KLSAgICBT ZXRMYXN0QXR0ZW1wdFZlcnNpb25JblZhcmlhYmxlIChQcml2YXRlLCBJbmNvbW1pbmdGd1ZlcnNp b24pOw0KKyAgICBTZXRMYXN0QXR0ZW1wdFZlcnNpb25JblZhcmlhYmxlIChQcml2YXRlLCBJbmNv bWluZ0Z3VmVyc2lvbik7DQogICB9DQogDQogDQpAQCAtMTE1MywxNCArMTE1NSwzMSBAQCBTZXRU aGVJbWFnZSAoCiAgIC8vDQogICAvL0NvcHkgdGhlIHJlcXVlc3RlZCBpbWFnZSB0byB0aGUgZmly bXdhcmUgdXNpbmcgdGhlIEZtcERldmljZUxpYg0KICAgLy8NCi0gIFN0YXR1cyA9IEZtcERldmlj ZVNldEltYWdlICgNCi0gICAgICAgICAgICAgKCgoVUlOVDggKilJbWFnZSkgKyBBbGxIZWFkZXJT aXplKSwNCi0gICAgICAgICAgICAgSW1hZ2VTaXplIC0gQWxsSGVhZGVyU2l6ZSwNCi0gICAgICAg ICAgICAgVmVuZG9yQ29kZSwNCi0gICAgICAgICAgICAgRm1wRHhlUHJvZ3Jlc3MsDQotICAgICAg ICAgICAgIEluY29tbWluZ0Z3VmVyc2lvbiwNCi0gICAgICAgICAgICAgQWJvcnRSZWFzb24NCi0g ICAgICAgICAgICAgKTsNCisgIGlmIChGaXhlZFBjZEdldEJvb2woUGNkTHN2UG9saWN5KSA9PSAw KSB7DQorICAgIFN0YXR1cyA9IEZtcERldmljZVNldEltYWdlICgNCisgICAgICAgICAgICAgICAo KChVSU5UOCAqKUltYWdlKSArIEFsbEhlYWRlclNpemUpLA0KKyAgICAgICAgICAgICAgIEltYWdl U2l6ZSAtIEFsbEhlYWRlclNpemUsDQorICAgICAgICAgICAgICAgVmVuZG9yQ29kZSwNCisgICAg ICAgICAgICAgICBGbXBEeGVQcm9ncmVzcywNCisgICAgICAgICAgICAgICBJbmNvbWluZ0Z3VmVy c2lvbiwNCisgICAgICAgICAgICAgICBBYm9ydFJlYXNvbg0KKyAgICAgICAgICAgICAgICk7DQor ICB9IGVsc2Ugew0KKyAgICBTdGF0dXMgPSBHZXRGbXBQYXlsb2FkSGVhZGVyTG93ZXN0U3VwcG9y dGVkVmVyc2lvbiAoRm1wSGVhZGVyLCBGbXBQYXlsb2FkU2l6ZSwgJkxvd2VzdFN1cHBvcnRlZFZl cnNpb24pOw0KKyAgICBpZiAoRUZJX0VSUk9SKFN0YXR1cykpIHsNCisgICAgICBnb3RvIGNsZWFu dXA7DQorICAgIH0NCisgICAgU3RhdHVzID0gRm1wRGV2aWNlU2V0SW1hZ2VEZWZlcnJlZExzdkNv bW1pdCAoDQorICAgICAgICAgICAgICAgKCgoVUlOVDggKilJbWFnZSkgKyBBbGxIZWFkZXJTaXpl KSwNCisgICAgICAgICAgICAgICBJbWFnZVNpemUgLSBBbGxIZWFkZXJTaXplLA0KKyAgICAgICAg ICAgICAgIFZlbmRvckNvZGUsDQorICAgICAgICAgICAgICAgRm1wRHhlUHJvZ3Jlc3MsDQorICAg ICAgICAgICAgICAgSW5jb21pbmdGd1ZlcnNpb24sDQorICAgICAgICAgICAgICAgTG93ZXN0U3Vw cG9ydGVkVmVyc2lvbiwgDQorICAgICAgICAgICAgICAgQWJvcnRSZWFzb24NCisgICAgICAgICAg ICAgICApOw0KKyAgfQ0KKw0KICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KICAgICBERUJV RyAoKERFQlVHX0VSUk9SLCAiRm1wRHhlKCVzKTogU2V0VGhlSW1hZ2UoKSBTZXRJbWFnZSBmcm9t IEZtcERldmljZUxpYiBmYWlsZWQuIFN0YXR1cyA9ICAlci5cbiIsIG1JbWFnZUlkTmFtZSwgU3Rh dHVzKSk7DQogICAgIGdvdG8gY2xlYW51cDsNCkBAIC0xMTg1LDkgKzEyMDQsMTEgQEAgU2V0VGhl SW1hZ2UgKAogICAvLw0KICAgLy8gVXBkYXRlIGxvd2VzdCBzdXBwb3J0ZWQgdmFyaWFibGUNCiAg IC8vDQotICBMb3dlc3RTdXBwb3J0ZWRWZXJzaW9uID0gREVGQVVMVF9MT1dFU1RTVVBQT1JURURW RVJTSU9OOw0KLSAgR2V0Rm1wUGF5bG9hZEhlYWRlckxvd2VzdFN1cHBvcnRlZFZlcnNpb24gKEZt cEhlYWRlciwgRm1wUGF5bG9hZFNpemUsICZMb3dlc3RTdXBwb3J0ZWRWZXJzaW9uKTsNCi0gIFNl dExvd2VzdFN1cHBvcnRlZFZlcnNpb25JblZhcmlhYmxlIChQcml2YXRlLCBMb3dlc3RTdXBwb3J0 ZWRWZXJzaW9uKTsNCisgIGlmICghRmVhdHVyZVBjZEdldCAoUGNkTHN2UG9saWN5KSkgew0KKyAg ICBMb3dlc3RTdXBwb3J0ZWRWZXJzaW9uID0gREVGQVVMVF9MT1dFU1RTVVBQT1JURURWRVJTSU9O Ow0KKyAgICBHZXRGbXBQYXlsb2FkSGVhZGVyTG93ZXN0U3VwcG9ydGVkVmVyc2lvbiAoRm1wSGVh ZGVyLCBGbXBQYXlsb2FkU2l6ZSwgJkxvd2VzdFN1cHBvcnRlZFZlcnNpb24pOw0KKyAgICBTZXRM b3dlc3RTdXBwb3J0ZWRWZXJzaW9uSW5WYXJpYWJsZSAoUHJpdmF0ZSwgTG93ZXN0U3VwcG9ydGVk VmVyc2lvbik7DQorICB9DQogDQogICBMYXN0QXR0ZW1wdFN0YXR1cyA9IExBU1RfQVRURU1QVF9T VEFUVVNfU1VDQ0VTUzsNCiANCmRpZmYgLS1naXQgYS9GbXBEZXZpY2VQa2cvRm1wRHhlL0ZtcER4 ZS5pbmYgYi9GbXBEZXZpY2VQa2cvRm1wRHhlL0ZtcER4ZS5pbmYKaW5kZXggYmVjNzNhYThmYi4u NGMwZmIyMTQ4YiAxMDA2NDQKLS0tIGEvRm1wRGV2aWNlUGtnL0ZtcER4ZS9GbXBEeGUuaW5mCisr KyBiL0ZtcERldmljZVBrZy9GbXBEeGUvRm1wRHhlLmluZgpAQCAtNzIsNiArNzIsNyBAQAogICBn Rm1wRGV2aWNlUGtnVG9rZW5TcGFjZUd1aWQuUGNkRm1wRGV2aWNlVGVzdEtleVNoYTI1NkRpZ2Vz dCAgICAgICAgICAgICAgIyMgQ09OU1VNRVMNCiAgIGdGbXBEZXZpY2VQa2dUb2tlblNwYWNlR3Vp ZC5QY2RGbXBEZXZpY2VJbWFnZVR5cGVJZEd1aWQgICAgICAgICAgICAgICAgICAjIyBDT05TVU1F Uw0KICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFRlc3RLZXlVc2VkICAgICAg ICAgICAgICAgICAgICAgICAgICAgICMjIFNPTUVUSU1FU19QUk9EVUNFUw0KKyAgZ0ZtcERldmlj ZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZExzdlBvbGljeSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICMjIENPTlNVTUVTDQogDQogW0RlcGV4XQ0KICAgZ0VmaVZhcmlhYmxlV3JpdGVBcmNo UHJvdG9jb2xHdWlkIEFORCBnRWRraWlWYXJpYWJsZUxvY2tQcm90b2NvbEd1aWQNCmRpZmYgLS1n aXQgYS9GbXBEZXZpY2VQa2cvSW5jbHVkZS9MaWJyYXJ5L0ZtcERldmljZUxpYi5oIGIvRm1wRGV2 aWNlUGtnL0luY2x1ZGUvTGlicmFyeS9GbXBEZXZpY2VMaWIuaAppbmRleCAxZTQ5OGMxM2NlLi43 MDIyODE4OWFjIDEwMDY0NAotLS0gYS9GbXBEZXZpY2VQa2cvSW5jbHVkZS9MaWJyYXJ5L0ZtcERl dmljZUxpYi5oCisrKyBiL0ZtcERldmljZVBrZy9JbmNsdWRlL0xpYnJhcnkvRm1wRGV2aWNlTGli LmgKQEAgLTQ2Niw2ICs0NjYsNzMgQEAgRm1wRGV2aWNlU2V0SW1hZ2UgKAogICBPVVQgQ0hBUjE2 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKkFib3J0UmVhc29uDQog ICApOw0KIA0KKy8qKg0KKyAgVXBkYXRlcyBhIGZpcm13YXJlIGRldmljZSB3aXRoIGEgbmV3IGZp cm13YXJlIGltYWdlLiAgVGhpcyBmdW5jdGlvbiByZXR1cm5zDQorICBFRklfVU5TVVBQT1JURUQg aWYgdGhlIGZpcm13YXJlIGltYWdlIGlzIG5vdCB1cGRhdGFibGUuICBJZiB0aGUgZmlybXdhcmUg aW1hZ2UNCisgIGlzIHVwZGF0YWJsZSwgdGhlIGZ1bmN0aW9uIHNob3VsZCBwZXJmb3JtIHRoZSBm b2xsb3dpbmcgbWluaW1hbCB2YWxpZGF0aW9ucw0KKyAgYmVmb3JlIHByb2NlZWRpbmcgdG8gZG8g dGhlIGZpcm13YXJlIGltYWdlIHVwZGF0ZS4NCisgICAgLSBWYWxpZGF0ZSB0aGF0IHRoZSBpbWFn ZSBpcyBhIHN1cHBvcnRlZCBpbWFnZSBmb3IgdGhpcyBmaXJtd2FyZSBkZXZpY2UuDQorICAgICAg UmV0dXJuIEVGSV9BQk9SVEVEIGlmIHRoZSBpbWFnZSBpcyBub3Qgc3VwcG9ydGVkLiAgQWRkaXRp b25hbCBkZXRhaWxzDQorICAgICAgb24gd2h5IHRoZSBpbWFnZSBpcyBub3QgYSBzdXBwb3J0ZWQg aW1hZ2UgbWF5IGJlIHJldHVybmVkIGluIEFib3J0UmVhc29uLg0KKyAgICAtIFZhbGlkYXRlIHRo ZSBkYXRhIGZyb20gVmVuZG9yQ29kZSBpZiBpcyBub3QgTlVMTC4gIEZpcm13YXJlIGltYWdlDQor ICAgICAgdmFsaWRhdGlvbiBtdXN0IGJlIHBlcmZvcm1lZCBiZWZvcmUgVmVuZG9yQ29kZSBkYXRh IHZhbGlkYXRpb24uDQorICAgICAgVmVuZG9yQ29kZSBkYXRhIGlzIGlnbm9yZWQgb3IgY29uc2lk ZXJlZCBpbnZhbGlkIGlmIGltYWdlIHZhbGlkYXRpb24NCisgICAgICBmYWlscy4gIFJldHVybiBF RklfQUJPUlRFRCBpZiB0aGUgVmVuZG9yQ29kZSBkYXRhIGlzIGludmFsaWQuDQorDQorICBWZW5k b3JDb2RlIGVuYWJsZXMgdmVuZG9yIHRvIGltcGxlbWVudCB2ZW5kb3Itc3BlY2lmaWMgZmlybXdh cmUgaW1hZ2UgdXBkYXRlDQorICBwb2xpY3kuICBOdWxsIGlmIHRoZSBjYWxsZXIgZGlkIG5vdCBz cGVjaWZ5IHRoZSBwb2xpY3kgb3IgdXNlIHRoZSBkZWZhdWx0DQorICBwb2xpY3kuICBBcyBhbiBl eGFtcGxlLCB2ZW5kb3IgY2FuIGltcGxlbWVudCBhIHBvbGljeSB0byBhbGxvdyBhbiBvcHRpb24g dG8NCisgIGZvcmNlIGEgZmlybXdhcmUgaW1hZ2UgdXBkYXRlIHdoZW4gdGhlIGFib3J0IHJlYXNv biBpcyBkdWUgdG8gdGhlIG5ldyBmaXJtd2FyZQ0KKyAgaW1hZ2UgdmVyc2lvbiBpcyBvbGRlciB0 aGFuIHRoZSBjdXJyZW50IGZpcm13YXJlIGltYWdlIHZlcnNpb24gb3IgYmFkIGltYWdlDQorICBj aGVja3N1bS4gIFNlbnNpdGl2ZSBvcGVyYXRpb25zIHN1Y2ggYXMgdGhvc2Ugd2lwaW5nIHRoZSBl bnRpcmUgZmlybXdhcmUgaW1hZ2UNCisgIGFuZCByZW5kZXIgdGhlIGRldmljZSB0byBiZSBub24t ZnVuY3Rpb25hbCBzaG91bGQgYmUgZW5jb2RlZCBpbiB0aGUgaW1hZ2UNCisgIGl0c2VsZiByYXRo ZXIgdGhhbiBwYXNzZWQgd2l0aCB0aGUgVmVuZG9yQ29kZS4gIEFib3J0UmVhc29uIGVuYWJsZXMg dmVuZG9yIHRvDQorICBoYXZlIHRoZSBvcHRpb24gdG8gcHJvdmlkZSBhIG1vcmUgZGV0YWlsZWQg ZGVzY3JpcHRpb24gb2YgdGhlIGFib3J0IHJlYXNvbiB0bw0KKyAgdGhlIGNhbGxlci4NCisNCisg IEBwYXJhbVtpbl0gIEltYWdlICAgICAgICAgICAgIFBvaW50cyB0byB0aGUgbmV3IGZpcm13YXJl IGltYWdlLg0KKyAgQHBhcmFtW2luXSAgSW1hZ2VTaXplICAgICAgICAgU2l6ZSwgaW4gYnl0ZXMs IG9mIHRoZSBuZXcgZmlybXdhcmUgaW1hZ2UuDQorICBAcGFyYW1baW5dICBWZW5kb3JDb2RlICAg ICAgICBUaGlzIGVuYWJsZXMgdmVuZG9yIHRvIGltcGxlbWVudCB2ZW5kb3Itc3BlY2lmaWMNCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpcm13YXJlIGltYWdlIHVwZGF0ZSBwb2xp Y3kuICBOVUxMIGluZGljYXRlcw0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhl IGNhbGxlciBkaWQgbm90IHNwZWNpZnkgdGhlIHBvbGljeSBvciB1c2UgdGhlDQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0IHBvbGljeS4NCisgIEBwYXJhbVtpbl0gIFBy b2dyZXNzICAgICAgICAgIEEgZnVuY3Rpb24gdXNlZCB0byByZXBvcnQgdGhlIHByb2dyZXNzIG9m DQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGluZyB0aGUgZmlybXdhcmUg ZGV2aWNlIHdpdGggdGhlIG5ldw0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmly bXdhcmUgaW1hZ2UuDQorICBAcGFyYW1baW5dICBDYXBzdWxlRndWZXJzaW9uICBUaGUgdmVyc2lv biBvZiB0aGUgbmV3IGZpcm13YXJlIGltYWdlIGZyb20gdGhlDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1cGRhdGUgY2Fwc3VsZSB0aGF0IHByb3ZpZGVkIHRoZSBuZXcgZmlybXdh cmUNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltYWdlLg0KKyAgQHBhcmFtW2lu XSAgTHN2VXBkYXRlICAgICAgICAgVGhlIExvd2VzdCBTdXBwb3J0ZWQgVmVyc2lvbiBvZiB0aGUg bmV3IGZpcm13YXJlDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWFnZSBmcm9t IHRoZSB1cGRhdGUgY2Fwc3VsZSB0aGF0IHByb3ZpZGVkIHRoZSANCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIG5ldyBmaXJtd2FyZSBpbWFnZS4NCisgIEBwYXJhbVtvdXRdIEFib3J0 UmVhc29uICAgICAgIEEgcG9pbnRlciB0byBhIHBvaW50ZXIgdG8gYSBOdWxsLXRlcm1pbmF0ZWQN CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFVuaWNvZGUgc3RyaW5nIHByb3ZpZGlu ZyBtb3JlIGRldGFpbHMgb24gYW4NCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFi b3J0ZWQgb3BlcmF0aW9uLiBUaGUgYnVmZmVyIGlzIGFsbG9jYXRlZCBieQ0KKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdGhpcyBmdW5jdGlvbiB3aXRoDQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBFRklfQk9PVF9TRVJWSUNFUy5BbGxvY2F0ZVBvb2woKS4gIEl0IGlz IHRoZQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FsbGVyJ3MgcmVzcG9uc2li aWxpdHkgdG8gZnJlZSB0aGlzIGJ1ZmZlciB3aXRoDQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBFRklfQk9PVF9TRVJWSUNFUy5GcmVlUG9vbCgpLg0KKw0KKyAgQHJldHZhbCBFRklf U1VDQ0VTUyAgICAgICAgICAgIFRoZSBmaXJtd2FyZSBkZXZpY2Ugd2FzIHN1Y2Nlc3NmdWxseSB1 cGRhdGVkDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aCB0aGUgbmV3IGZp cm13YXJlIGltYWdlLg0KKyAgQHJldHZhbCBFRklfQUJPUlRFRCAgICAgICAgICAgIFRoZSBvcGVy YXRpb24gaXMgYWJvcnRlZC4gIEFkZGl0aW9uYWwgZGV0YWlscw0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGFyZSBwcm92aWRlZCBpbiBBYm9ydFJlYXNvbi4NCisgIEByZXR2YWwg RUZJX0lOVkFMSURfUEFSQU1FVEVSICBUaGUgSW1hZ2Ugd2FzIE5VTEwuDQorICBAcmV0dmFsIEVG SV9VTlNVUFBPUlRFRCAgICAgICAgVGhlIG9wZXJhdGlvbiBpcyBub3Qgc3VwcG9ydGVkLg0KKw0K KyoqLw0KK0VGSV9TVEFUVVMNCitFRklBUEkNCitGbXBEZXZpY2VTZXRJbWFnZURlZmVycmVkTHN2 Q29tbWl0ICgNCisgIElOICBDT05TVCBWT0lEICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICpJbWFnZSwNCisgIElOICBVSU5UTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEltYWdlU2l6ZSwNCisgIElOICBDT05TVCBWT0lEICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICpWZW5kb3JDb2RlLCAgICAgICBPUFRJT05BTA0KKyAgSU4g IEVGSV9GSVJNV0FSRV9NQU5BR0VNRU5UX1VQREFURV9JTUFHRV9QUk9HUkVTUyAgUHJvZ3Jlc3Ms ICAgICAgICAgIE9QVElPTkFMDQorICBJTiAgVUlOVDMyICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBDYXBzdWxlRndWZXJzaW9uLA0KKyAgSU4gIFVJTlQzMiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTHN2VXBkYXRlLA0KKyAgT1VUIENIQVIx NiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKipBYm9ydFJlYXNvbg0K KyAgKTsNCisNCiAvKioNCiAgIExvY2sgdGhlIGZpcm13YXJlIGRldmljZSB0aGF0IGNvbnRhaW5z IGEgZmlybXdhcmUgaW1hZ2UuICBPbmNlIGEgZmlybXdhcmUNCiAgIGRldmljZSBpcyBsb2NrZWQs IGFueSBhdHRlbXB0cyB0byBtb2RpZnkgdGhlIGZpcm13YXJlIGltYWdlIGNvbnRlbnRzIGluIHRo ZQ0KZGlmZiAtLWdpdCBhL0ZtcERldmljZVBrZy9MaWJyYXJ5L0ZtcERldmljZUxpYk51bGwvRm1w RGV2aWNlTGliLmMgYi9GbXBEZXZpY2VQa2cvTGlicmFyeS9GbXBEZXZpY2VMaWJOdWxsL0ZtcERl dmljZUxpYi5jCmluZGV4IGZkMjE5Y2I3MGIuLjY1MTMyNGNlZTMgMTAwNjQ0Ci0tLSBhL0ZtcERl dmljZVBrZy9MaWJyYXJ5L0ZtcERldmljZUxpYk51bGwvRm1wRGV2aWNlTGliLmMKKysrIGIvRm1w RGV2aWNlUGtnL0xpYnJhcnkvRm1wRGV2aWNlTGliTnVsbC9GbXBEZXZpY2VMaWIuYwpAQCAtNDEw LDYgKzQxMCw4NCBAQCBGbXBEZXZpY2VDaGVja0ltYWdlICgKICAgcmV0dXJuIEVGSV9TVUNDRVNT Ow0KIH0NCiANCisvKioNCisgIFVwZGF0ZXMgdGhlIGZpcm13YXJlIGltYWdlIG9mIHRoZSBkZXZp Y2UuDQorDQorICBUaGlzIGZ1bmN0aW9uIHVwZGF0ZXMgdGhlIGhhcmR3YXJlIHdpdGggdGhlIG5l dyBmaXJtd2FyZSBpbWFnZS4gIFRoaXMgZnVuY3Rpb24NCisgIHJldHVybnMgRUZJX1VOU1VQUE9S VEVEIGlmIHRoZSBmaXJtd2FyZSBpbWFnZSBpcyBub3QgdXBkYXRhYmxlLiAgSWYgdGhlDQorICBm aXJtd2FyZSBpbWFnZSBpcyB1cGRhdGFibGUsIHRoZSBmdW5jdGlvbiBzaG91bGQgcGVyZm9ybSB0 aGUgZm9sbG93aW5nIG1pbmltYWwNCisgIHZhbGlkYXRpb25zIGJlZm9yZSBwcm9jZWVkaW5nIHRv IGRvIHRoZSBmaXJtd2FyZSBpbWFnZSB1cGRhdGUuDQorICAgIC0gVmFsaWRhdGUgdGhlIGltYWdl IGlzIGEgc3VwcG9ydGVkIGltYWdlIGZvciB0aGlzIGRldmljZS4gIFRoZSBmdW5jdGlvbg0KKyAg ICAgIHJldHVybnMgRUZJX0FCT1JURUQgaWYgdGhlIGltYWdlIGlzIHVuc3VwcG9ydGVkLiAgVGhl IGZ1bmN0aW9uIGNhbg0KKyAgICAgIG9wdGlvbmFsbHkgcHJvdmlkZSBtb3JlIGRldGFpbGVkIGlu Zm9ybWF0aW9uIG9uIHdoeSB0aGUgaW1hZ2UgaXMgbm90IGENCisgICAgICBzdXBwb3J0ZWQgaW1h Z2UuDQorICAgIC0gVmFsaWRhdGUgdGhlIGRhdGEgZnJvbSBWZW5kb3JDb2RlIGlmIG5vdCBudWxs LiAgSW1hZ2UgdmFsaWRhdGlvbiBtdXN0IGJlDQorICAgICAgcGVyZm9ybWVkIGJlZm9yZSBWZW5k b3JDb2RlIGRhdGEgdmFsaWRhdGlvbi4gIFZlbmRvckNvZGUgZGF0YSBpcyBpZ25vcmVkDQorICAg ICAgb3IgY29uc2lkZXJlZCBpbnZhbGlkIGlmIGltYWdlIHZhbGlkYXRpb24gZmFpbGVkLiAgVGhl IGZ1bmN0aW9uIHJldHVybnMNCisgICAgICBFRklfQUJPUlRFRCBpZiB0aGUgZGF0YSBpcyBpbnZh bGlkLg0KKw0KKyAgVmVuZG9yQ29kZSBlbmFibGVzIHZlbmRvciB0byBpbXBsZW1lbnQgdmVuZG9y LXNwZWNpZmljIGZpcm13YXJlIGltYWdlIHVwZGF0ZQ0KKyAgcG9saWN5LiAgTnVsbCBpZiB0aGUg Y2FsbGVyIGRpZCBub3Qgc3BlY2lmeSB0aGUgcG9saWN5IG9yIHVzZSB0aGUgZGVmYXVsdA0KKyAg cG9saWN5LiAgQXMgYW4gZXhhbXBsZSwgdmVuZG9yIGNhbiBpbXBsZW1lbnQgYSBwb2xpY3kgdG8g YWxsb3cgYW4gb3B0aW9uIHRvDQorICBmb3JjZSBhIGZpcm13YXJlIGltYWdlIHVwZGF0ZSB3aGVu IHRoZSBhYm9ydCByZWFzb24gaXMgZHVlIHRvIHRoZSBuZXcgZmlybXdhcmUNCisgIGltYWdlIHZl cnNpb24gaXMgb2xkZXIgdGhhbiB0aGUgY3VycmVudCBmaXJtd2FyZSBpbWFnZSB2ZXJzaW9uIG9y IGJhZCBpbWFnZQ0KKyAgY2hlY2tzdW0uICBTZW5zaXRpdmUgb3BlcmF0aW9ucyBzdWNoIGFzIHRo b3NlIHdpcGluZyB0aGUgZW50aXJlIGZpcm13YXJlIGltYWdlDQorICBhbmQgcmVuZGVyIHRoZSBk ZXZpY2UgdG8gYmUgbm9uLWZ1bmN0aW9uYWwgc2hvdWxkIGJlIGVuY29kZWQgaW4gdGhlIGltYWdl DQorICBpdHNlbGYgcmF0aGVyIHRoYW4gcGFzc2VkIHdpdGggdGhlIFZlbmRvckNvZGUuICBBYm9y dFJlYXNvbiBlbmFibGVzIHZlbmRvciB0bw0KKyAgaGF2ZSB0aGUgb3B0aW9uIHRvIHByb3ZpZGUg YSBtb3JlIGRldGFpbGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBhYm9ydCByZWFzb24gdG8NCisgIHRo ZSBjYWxsZXIuDQorDQorICBAcGFyYW1baW5dICBJbWFnZSAgICAgICAgICAgICBQb2ludHMgdG8g dGhlIG5ldyBpbWFnZS4NCisgIEBwYXJhbVtpbl0gIEltYWdlU2l6ZSAgICAgICAgIFNpemUgb2Yg dGhlIG5ldyBpbWFnZSBpbiBieXRlcy4NCisgIEBwYXJhbVtpbl0gIFZlbmRvckNvZGUgICAgICAg IFRoaXMgZW5hYmxlcyB2ZW5kb3IgdG8gaW1wbGVtZW50IHZlbmRvci1zcGVjaWZpYw0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlybXdhcmUgaW1hZ2UgdXBkYXRlIHBvbGljeS4g TnVsbCBpbmRpY2F0ZXMgdGhlDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxs ZXIgZGlkIG5vdCBzcGVjaWZ5IHRoZSBwb2xpY3kgb3IgdXNlIHRoZQ0KKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZGVmYXVsdCBwb2xpY3kuDQorICBAcGFyYW1baW5dICBQcm9ncmVz cyAgICAgICAgICBBIGZ1bmN0aW9uIHVzZWQgYnkgdGhlIGRyaXZlciB0byByZXBvcnQgdGhlDQor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9ncmVzcyBvZiB0aGUgZmlybXdhcmUg dXBkYXRlLg0KKyAgQHBhcmFtW2luXSAgQ2Fwc3VsZUZ3VmVyc2lvbiAgRk1QIFBheWxvYWQgSGVh ZGVyIHZlcnNpb24gb2YgdGhlIGltYWdlLg0KKyAgQHBhcmFtW2luXSAgTHN2VXBkYXRlICAgICAg ICAgVGhlIExvd2VzdCBTdXBwb3J0ZWQgVmVyc2lvbiBvZiB0aGUgbmV3IGZpcm13YXJlDQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWFnZSBmcm9tIHRoZSB1cGRhdGUgY2Fwc3Vs ZSB0aGF0IHByb3ZpZGVkIHRoZQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3 IGZpcm13YXJlIGltYWdlLg0KKyAgQHBhcmFtW291dF0gQWJvcnRSZWFzb24gICAgICAgQSBwb2lu dGVyIHRvIGEgcG9pbnRlciB0byBhIG51bGwtdGVybWluYXRlZA0KKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc3RyaW5nIHByb3ZpZGluZyBtb3JlIGRldGFpbHMgZm9yIHRoZSBhYm9y dGVkDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb24uIFRoZSBidWZm ZXIgaXMgYWxsb2NhdGVkIGJ5IHRoaXMNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGZ1bmN0aW9uIHdpdGggQWxsb2NhdGVQb29sKCksIGFuZCBpdCBpcyB0aGUNCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNhbGxlcidzIHJlc3BvbnNpYmlsaXR5IHRvIGZyZWUgaXQg d2l0aCBhIGNhbGwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvIEZyZWVQb29s KCkuDQorDQorICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgICAgVGhlIGRldmljZSB3YXMg c3VjY2Vzc2Z1bGx5IHVwZGF0ZWQgd2l0aCB0aGUNCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBuZXcgaW1hZ2UuDQorICBAcmV0dmFsIEVGSV9BQk9SVEVEICAgICAgICAgICAgVGhl IG9wZXJhdGlvbiBpcyBhYm9ydGVkLg0KKyAgQHJldHZhbCBFRklfSU5WQUxJRF9QQVJBTUVURVIg IFRoZSBJbWFnZSB3YXMgTlVMTC4NCisgIEByZXR2YWwgRUZJX1VOU1VQUE9SVEVEICAgICAgICBU aGUgb3BlcmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQuDQorDQorKiovDQorRUZJX1NUQVRVUw0KK0VG SUFQSQ0KK0ZtcERldmljZVNldEltYWdlRGVmZXJyZWRMc3ZDb21taXQgKA0KKyAgSU4gIENPTlNU IFZPSUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKkltYWdlLA0KKyAgSU4g IFVJTlROICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSW1hZ2VTaXpl LA0KKyAgSU4gIENPTlNUIFZPSUQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KlZlbmRvckNvZGUsDQorICBJTiAgRUZJX0ZJUk1XQVJFX01BTkFHRU1FTlRfVVBEQVRFX0lNQUdF X1BST0dSRVNTICBQcm9ncmVzcywNCisgIElOICBVSU5UMzIgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIENhcHN1bGVGd1ZlcnNpb24sDQorICBJTiAgVUlOVDMyICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMc3ZVcGRhdGUsDQorICBPVVQgQ0hB UjE2ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKkFib3J0UmVhc29u DQorICApDQorew0KKyAgRUZJX1NUQVRVUyBTdGF0dXM7DQorDQorICBTdGF0dXMgPSBGbXBEZXZp Y2VTZXRJbWFnZSAoDQorICAgICAgICAgICAgIEltYWdlLA0KKyAgICAgICAgICAgICBJbWFnZVNp emUsDQorICAgICAgICAgICAgIFZlbmRvckNvZGUsDQorICAgICAgICAgICAgIFByb2dyZXNzLA0K KyAgICAgICAgICAgICBDYXBzdWxlRndWZXJzaW9uLA0KKyAgICAgICAgICAgICBBYm9ydFJlYXNv bg0KKyAgICAgICAgICAgICApOw0KKyAgcmV0dXJuIFN0YXR1czsNCit9DQorDQogLyoqDQogICBV cGRhdGVzIGEgZmlybXdhcmUgZGV2aWNlIHdpdGggYSBuZXcgZmlybXdhcmUgaW1hZ2UuICBUaGlz IGZ1bmN0aW9uIHJldHVybnMNCiAgIEVGSV9VTlNVUFBPUlRFRCBpZiB0aGUgZmlybXdhcmUgaW1h Z2UgaXMgbm90IHVwZGF0YWJsZS4gIElmIHRoZSBmaXJtd2FyZSBpbWFnZQ0K --_004_A7A4B3ECFA40144E98B82E71E29693557F59271EPGSMSX108garcor_--