From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web08.24261.1646640540545724726 for ; Mon, 07 Mar 2022 00:09:01 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=MXp+H170; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: hao.a.wu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1646640540; x=1678176540; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=rYO9DFzdyXxsgxRSRGQdOUJ+VhRTM/NCmr3LR9BverM=; b=MXp+H170z0PHQHET4y0fEa/mH/JxF5vxt670maXukx2t/CnR7jFdPN+O DACvTSDSqqCV4mh+ERx7G7S7M4WrPwZ9nVGuGg6awCT9SHlYr214eYKqh s4s6gYw0jynNvXHXEPIOVMsx+bfCJgq27nCMj3Sh9jOFBbMa8TbVOO7wC tI8tFL/nAbI31ML7vGOK0RwAelJWzoHLMcen67kdDzyGub+dNH6z+K6cs FvY6dunfl33AWPzpYFoEoV2gC3CdF6NTYcKSRdf1PSM6j5YaSqOT+uSj8 lPXEFfdk6Vtz2XPQk4uD7hsOMHUmLlDkWaohCwv4ngrqYeaOEjCRJ1GOx Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10278"; a="254062039" X-IronPort-AV: E=Sophos;i="5.90,161,1643702400"; d="scan'208";a="254062039" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 07 Mar 2022 00:08:59 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,161,1643702400"; d="scan'208";a="812816481" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by fmsmga005.fm.intel.com with ESMTP; 07 Mar 2022 00:08:59 -0800 Received: from orsmsx608.amr.corp.intel.com (10.22.229.21) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Mon, 7 Mar 2022 00:08:59 -0800 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx608.amr.corp.intel.com (10.22.229.21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21 via Frontend Transport; Mon, 7 Mar 2022 00:08:59 -0800 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (104.47.66.41) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.21; Mon, 7 Mar 2022 00:08:58 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JDwVso6Sdz3aGydgbNysCfxIzzV4pHq7kYuTzvLAZU5+9v3C0KA5aKf15vEafc2AtX/pMEWaX7u3wboZG5pYMumEZhkX0WdNQmcgBg+t+cBR0kFTlGpgVZqZjbbt3ouXo1ObnbnfmY2vuNpI38Mv2I23yKPALG4KyEcnxaZevPDhuXl5ZGSxLkwxKNVpf3w018OTDOLO6J7o3qy+Hdvqel/IO+6QbxvORfVny2eu4e6J/lxCQMbXRcOUI7KGi7FYPWwWKaKwmtgygjRxgfp6eb00KfngUVm/j/XO8sezY7Svc0g8A2AJZRmOwpCw9M7bHTUJETpzd1jfjIEGqWxdbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=rYO9DFzdyXxsgxRSRGQdOUJ+VhRTM/NCmr3LR9BverM=; b=erLcg1RPayO8wOIRkWILdK42awyJ4u/sR9Kfc8wn9ry2NrSbw8Cfz0aCRsJco6vUCc8z48NLkK6cmiT3mxNf0hpLJy23yH7htJyv+3vJFjKafnHW1NW5ZcsD8syD4ri916tSr7oAAdBURfm6h87bS8kK0UoBGWJmjrVBy37QV9y8t2LapvD1HEIlrQbfbH/BWeo9wbuZ/eKuu7LCx+njCD9gWc2CtM75XRR0Z4D+7st2AeIU0Qz55V1NogDAFegi1Iw1iV6xnJ+GCnuiOPcFMIoty8JVZv1NXjqAxY0VTBjZjSzmy6/KXd/OIt3YhgeilYy6RKQypwVnjwbYWGlYhQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from DM6PR11MB4025.namprd11.prod.outlook.com (2603:10b6:5:197::31) by BL0PR11MB2977.namprd11.prod.outlook.com (2603:10b6:208:7d::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Mon, 7 Mar 2022 08:08:56 +0000 Received: from DM6PR11MB4025.namprd11.prod.outlook.com ([fe80::2dd0:9ba8:a8c:fc96]) by DM6PR11MB4025.namprd11.prod.outlook.com ([fe80::2dd0:9ba8:a8c:fc96%3]) with mapi id 15.20.5038.026; Mon, 7 Mar 2022 08:08:56 +0000 From: "Wu, Hao A" To: "devel@edk2.groups.io" , "Bandaru, Purna Chandra Rao" CC: "Albecki, Mateusz" Subject: Re: [edk2-devel] [PATCH] [PATCH v1] MdeModulePkg: Add bRefClkFreq card attribute programming support Thread-Topic: [edk2-devel] [PATCH] [PATCH v1] MdeModulePkg: Add bRefClkFreq card attribute programming support Thread-Index: AQHYLuLIEfbCfdLmh0iYvNBr+qQ4LKyzQThA Date: Mon, 7 Mar 2022 08:08:56 +0000 Message-ID: References: <1390c1e66cbc5b940d253200863b0ae60f83d3da.1646231514.git.purna.chandra.rao.bandaru@intel.com> In-Reply-To: <1390c1e66cbc5b940d253200863b0ae60f83d3da.1646231514.git.purna.chandra.rao.bandaru@intel.com> Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 890b8799-230a-4b23-4071-08da0011ba1b x-ms-traffictypediagnostic: BL0PR11MB2977:EE_ x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: zfc8hOrAMWkbhjSZeplq7K1KczQOYxrwikM283TyR/JiNvksSL57xMD7Urv04whVasxUa+lsTuOrb8I0yOW6icE2Uk6YhNPV6XIuNyB3PlDVuH84AaVtcxQgcx9pxCtsSu/t6SMrzIMO2sVblNh70+1frX/zrM3W0YTsDw2ZQVjhqKJKiYkPSH+C8xHcriGCdUaipuHeBzZ4OpyPQ7Q04G96H3k2MaMewR94mu9g7CGpvp2zR9X585cV5NRHqE1R97QGSgSksIoS3t86jOGyopJDkatdGHo0zl7eUUdaAjBx5jhwDjJQCOr+dJlgvCZdezhwJpVt9wTth3AmQTZP4Kj1kBQycfGlcyHHDbwFHEouyyeQD45pSCg2fsn/zqt9tdeuI8lYKQWzBdMm/GRtkM/kuJI3G1Z4WjnY0YMrAQ22gbI61gfUUbVS6FSnTLDm6dc5Xi0jGoqeTPhswF4OzHHbL9IJ8frVzrnu9K7l88UvNQRQqRmwf1kDe/uQlzquNhhUFQTDqpexSA8nvhMO24kzJa6YkAgl2/uMM+h7o09lYShPimWEzP5Io+obREAm5mWJL6TVNpY0VWqoNs2EM8Eg2sbNtJmhuKwoGkBDPp/7JdzIRnTQP6mClbDxdA31/GHpH/O89nth9q73QGVDOUS0jGVwfyveIaS1GwPfSCY3MEeNMeJaqtRQohMrt85SY/QyodMblULau3DbFumXT6P+wJmRJ7kOJFgPTdgn1In4kSbo9Avjmc1ALxjQMEm8kPGaq+fAn53n/cnT1D4+yoX+5K6Y+DCTvFW0Ec98YxO4mQFVrmfRwZxCnHQJAZ1jNIIcX8fQmv4g4VCb6/IZn42XtH0tMrQcMGU01c4kdMw= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR11MB4025.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(38070700005)(8936002)(107886003)(86362001)(55016003)(122000001)(82960400001)(38100700002)(52536014)(53546011)(7696005)(6506007)(71200400001)(9686003)(5660300002)(33656002)(6636002)(66556008)(316002)(966005)(66476007)(66446008)(76116006)(66946007)(110136005)(64756008)(4326008)(8676002)(45080400002)(508600001)(186003)(26005)(83380400001)(2906002)(145543001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?Z2U0ZnlGS25IMGZCRWx0NEFISkdCNXE5Y0Rmb1JrVWdabDRGb2RCWTAxTDZ6?= =?utf-8?B?ZGoraXdsZmpiWGxVNkRYdWVEcXNEaFl2a0FlMUFVZ3g0eWVzdHpVSHZOTEs2?= =?utf-8?B?b25admpZWlBZSHdMVkEvUG9tOE5vL05wRUlJamg5UkVmNEt2bDR6bkRxdVJE?= =?utf-8?B?OG16bENCNUU2ZFVjN0k2UkU5TmFMTFhDOElWQ3ZTRWhlN0FNZjcxVzN3REU1?= =?utf-8?B?TklCS3ZqQ2hLb1E2RkZLUWYxejFKVXRJOFVrYTNiS0dSVHYybmdXSVpsc0Ur?= =?utf-8?B?SFRnNXNKR0RCc3Y2dTBzSVE4YnlTWjc1TkYwMmp1bFcycmtJaG45UEpzU0g4?= =?utf-8?B?M2Rzejh2UGhtckh6SzBsc2c1Zi9GZUlDMTFOWUVSWTNWLytLeFJ0clJydU5E?= =?utf-8?B?b1RpTVMzUUFpY2toMmlXRWI0Um9DemdKcGNwMjdOR2xuS0JCTVhlSUo0UTNZ?= =?utf-8?B?bG5Lb1FXVEJmR2gvMERIeHlBQkhYM0NIN0JRY1NzMWd6NjQzMjcxdExaS2Zn?= =?utf-8?B?WFNwY1hsZUV6RTJwT1BPUWJ2YTN0NFdTVmtzdmdWK3dKSFVlSGxBd05jUnU4?= =?utf-8?B?dW95aGhmSkVRZGFyNEgwOXY0Mlo1UDVzZm1IQ1E2NFhBczlTZ29XKzhwMXJM?= =?utf-8?B?RlBheEl5eWloREhodVUrdHE0OG8wUEpvNWlNVkRIakZIK2wzWGJWSTFwODU4?= =?utf-8?B?ODl4bmt1Zjh5UnBaQVVvbG9RV0NyT3YrMjR2T0xTbVgzQ1E5dXE4aFY0aTcx?= =?utf-8?B?MktTMTBBci9IcjdLS0FiekFBc0ZVaDBwUi9kYXJNaUNVOU1tck5NUzIyZ2pk?= =?utf-8?B?MCt0ajlWakJUanplV0ZPMUxKaXlVbkRTVHpiekd4cy9VWldSbG5sd2NWM1Q4?= =?utf-8?B?Vm1LL3EwSmhlSVVRUU9ZOTBWQTNZeVRTbVNReG4xVzViS0hIN0R5M25BeStu?= =?utf-8?B?RWdIYTZjNkQrck9lZG5WZkZoYmVtekNJdDJtaU5xVkIzVlVaQ3JvZGJoNktQ?= =?utf-8?B?THprQXlnWWJYMzVnR2pqWWdwN21pS3lncysvMHQrbUwwd1pQMXZXcUYySDBp?= =?utf-8?B?WUZYYmJaZTBuOU1QUkxuU0dtUng4RTJXQnZ3M2ZybE5YYzdUbW9wRUI4NExy?= =?utf-8?B?WFFaenByRG1pY2s1VTJXbTIxZzRwTWlzOWROWkpINFpzbUY4NnJDQkFURjZ0?= =?utf-8?B?bjRaaTltNXVTbnR1b2IxR2VsSHJvVjV5MlFxVWdoN2xaRlZNWTZPRmU3UEpx?= =?utf-8?B?VjJ1dDNCMjlYV3dFNmVKamZwVjBpSzhSNHFDYm84TGJiSkV1NFNSc0I0VTg5?= =?utf-8?B?cVBaRGN5M01qOEZJRFRRckRXV2phOEdFY21vWE8yUTFQVitORTFrNkh0clVa?= =?utf-8?B?eWg2YkhNdFNMMFRDUDFvUTluUTNQZFExUmlhZFVmQTFYU1kvMVBtQUpWM3ZJ?= =?utf-8?B?cEtIeXBtWFhWaEl4azVRTHhUMnBLRXNxL21hYzdFdEVMWE42a0xlMy81ZmE0?= =?utf-8?B?YjZSeU9tc1lRL0h4U3FjV3pVYUQwaFk4STd3Y0dGaWNZekdjM0krR3hVWk9y?= =?utf-8?B?TnBwZGk1N1pUdk9UNm5YRFdUMTJPbVhZRWwrTHlYQTRIOUR6eUJjVzdlUk9n?= =?utf-8?B?TnZIcjVlLzB1b3dDblVpOWtDRHNXMEs0cmZZeEpWQW1iT282STdHRERMMlBI?= =?utf-8?B?VGZyTm8wYVVzbmE1YUg0ZEx2cUtGWWJDY2UxUGNQdVhKVlNsbnZTclMvMktm?= =?utf-8?B?bTJNWVg4UDFYRXJCZEIySmJEQWoyUDlDYXRQSzZxSGUwOUJzZkRQZDJ6NHIy?= =?utf-8?B?V1dsQU9RVDA5TFJwM2srVTZXNzBJRXFVdmswcWYyTzBTWGo2eGc3VThaekdr?= =?utf-8?B?Q3VwYUxwdVI5Z3NkU1RYeGRrZ3M1cEI5NklhcVdXRlE2ZGV1TmJ5eXUwZXBn?= =?utf-8?B?aDZpQ3kycW0xNGRtdnJtUUl4SFZNcldZTGZhT3gyOWZlbW8vOXRtbTM3cG0x?= =?utf-8?B?TzhpL3dBNXhXRW5MeVZEQWgzMVJGY1pSWVBBUGJHK3pHa3pEbkwwdkROVnlq?= =?utf-8?B?QmZFZE1ZTEhyTnR1eGZ3QjUzT1dQZzZRTzJpVjdSQjE3MmduR1B1aGdMMkpV?= =?utf-8?B?ZzlTZjc2eVN3UE5TY0w3TkU2YzFya2k3MnNxZFhleUExYkpZVFdZSUdxSm9V?= =?utf-8?Q?dPsW/slYchf1+xGwAhtriNI=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB4025.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 890b8799-230a-4b23-4071-08da0011ba1b X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Mar 2022 08:08:56.2669 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: xSQ500szrgdWLtO6jA4tEqC02ffOvKiE5U0mtDeWIZFfaa+v9TKikX6ejYtsly4dvYY807apAkZfbzmYKJlZiw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR11MB2977 Return-Path: hao.a.wu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QSBnZW5lcmFsIGxldmVsIHF1ZXN0aW9uOg0KSXMgaXQgcG9zc2libGUgdGhhdCBmb3IgYSBzeXN0 ZW0gd2l0aCBtdWx0aXBsZSBVRlMgSG9zdCBDb250cm9sbGVycyAoSENzKSwgZWFjaCBIQyB3aWxs IGhhdmUgZGlmZmVyZW50IGJSZWZDbGtGcmVxIHZhbHVlcz8NCklmIHNvLCBteSB0aG91Z2h0IGlz IHRoYXQgYSBuZXcgcHJvdG9jb2wgc2VydmljZSBtaWdodCBiZSBuZWVkZWQgdG8gZ2V0IHRoZSBi UmVmQ2xrRnJlcSB2YWx1ZSBmcm9tIGVhY2ggVUZTIEhDOg0KDQp0eXBlZGVmDQpFRklfU1RBVFVT DQooRUZJQVBJICpFREtJSV9VRlNfSENfUExBVEZPUk1fR0VUX1JFRl9DTEtfRlJFUSkoDQogIElO ICAgICBFRklfSEFORExFICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb250cm9sbGVySGFu ZGxlLA0KICAgICBPVVQgRURLSUlfVUZTX0NBUkRfUkVGX0NMS19GUkVRX0FUVFJJQlVURSAgKlJl ZkNsa0ZyZXENCiAgKTsNCg0KDQpBbHNvLCBzb21lIG1vcmUgaW5saW5lIGNvbW1lbnRzIGJlbG93 Og0KDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2ZWxAZWRrMi5n cm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgQmFuZGFydSwNCj4g UHVybmEgQ2hhbmRyYSBSYW8NCj4gU2VudDogVGh1cnNkYXksIE1hcmNoIDMsIDIwMjIgNTo0MCBQ TQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IEJhbmRhcnUsIFB1cm5hIENoYW5k cmEgUmFvIDxwdXJuYS5jaGFuZHJhLnJhby5iYW5kYXJ1QGludGVsLmNvbT4NCj4gU3ViamVjdDog W2VkazItZGV2ZWxdIFtQQVRDSF0gW1BBVENIIHYxXSBNZGVNb2R1bGVQa2c6IEFkZCBiUmVmQ2xr RnJlcQ0KPiBjYXJkIGF0dHJpYnV0ZSBwcm9ncmFtbWluZyBzdXBwb3J0DQo+IA0KPiBXaGVuIHRo ZSBVRlMgY2FyZCBjb21lcyBvdXQgb2YgTWFudWZhY3R1cmVyLCBiUmVmQ2xrRnJlcSBhdHRyaWJ1 dGUgaXMgc2V0DQo+IHRvIDFoIG9uIHRoZSBVRlMgY2FyZCBhcyBwZXIgdGhlICJNRFbigJ0gKE1h bnVmYWN0dXJlciBEZWZhdWx0IFZhbHVlKQ0KPiBzcGVjaWZpZWQgYnkgdGhlIHNwZWMgSkVTRDIy MCouIEhvd2V2ZXIsIGRlcGVuZHMgb24gdGhlIFVGUyBob3N0IHN5c3RlbQ0KPiBlbnZpcm9ubWVu dCwgaXQgbmVlZCB0byBiZSBzZXQgdG8gY29ycmVjdCB2YWx1ZS4NCj4gDQo+IFJlZmVyZW5jZSBD bG9jayBGcmVxdWVuY3kgdmFsdWUNCj4gMGg6MTkuMiBNSHoNCj4gMWg6IDI2IE1Ieg0KPiAyaDog MzguNCBNSHoNCj4gM2g6IE9ic29sZXRlDQo+IE90aGVyczogUmVzZXJ2ZWQNCj4gDQo+IEhzZC1l cy1pZDogaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD0zODUx DQoNCg0KUkVGOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lk PTM4NTENCg0KDQo+IA0KPiBDaGFuZ2UtSWQ6IElmMDlmY2U3MjRmNjE3NzNjZTFiODc3MWQ3YmY2 NTA3NTQ5NmQ5MDQ0DQoNCg0KUGxlYXNlIGhlbHAgdG8gcmVtb3ZlIHRoZSBhYm92ZSAnQ2hhbmdl LUlkJyBpbmZvcm1hdGlvbi4NCg0KDQo+IFNpZ25lZC1vZmYtYnk6IFB1cm5hIENoYW5kcmEgUmFv IEJhbmRhcnUNCj4gPHB1cm5hLmNoYW5kcmEucmFvLmJhbmRhcnVAaW50ZWwuY29tPg0KPiAtLS0N Cj4gIC4uLi9CdXMvVWZzL1Vmc1Bhc3NUaHJ1RHhlL1Vmc1Bhc3NUaHJ1LmMgICAgICB8IDMyICsr KysrKysrKysrKysrKysrKy0NCj4gIC4uLi9CdXMvVWZzL1Vmc1Bhc3NUaHJ1RHhlL1Vmc1Bhc3NU aHJ1SGNpLmMgICB8IDEwICstLS0tLQ0KPiAgLi4uL1Byb3RvY29sL1Vmc0hvc3RDb250cm9sbGVy UGxhdGZvcm0uaCAgICAgIHwgMTUgKysrKysrKy0tDQo+ICAzIGZpbGVzIGNoYW5nZWQsIDQ1IGlu c2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBhL01kZU1vZHVs ZVBrZy9CdXMvVWZzL1Vmc1Bhc3NUaHJ1RHhlL1Vmc1Bhc3NUaHJ1LmMNCj4gYi9NZGVNb2R1bGVQ a2cvQnVzL1Vmcy9VZnNQYXNzVGhydUR4ZS9VZnNQYXNzVGhydS5jDQo+IGluZGV4IDRjMmQ2YWUy N2YuLmJhNGY2NjFiMWMgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9CdXMvVWZzL1Vmc1Bh c3NUaHJ1RHhlL1Vmc1Bhc3NUaHJ1LmMNCj4gKysrIGIvTWRlTW9kdWxlUGtnL0J1cy9VZnMvVWZz UGFzc1RocnVEeGUvVWZzUGFzc1RocnUuYw0KPiBAQCAtMSw2ICsxLDYgQEANCj4gIC8qKiBAZmls ZQ0KPiANCj4gLSAgQ29weXJpZ2h0IChjKSAyMDE0IC0gMjAyMSwgSW50ZWwgQ29ycG9yYXRpb24u IEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiArICBDb3B5cmlnaHQgKGMpIDIwMTQgLSAyMDIy LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ICAgIENvcHly aWdodCAoYykgTWljcm9zb2Z0IENvcnBvcmF0aW9uLjxCUj4NCj4gICAgU1BEWC1MaWNlbnNlLUlk ZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gDQo+IEBAIC04NDMsNiArODQzLDggQEAg VWZzUGFzc1RocnVEcml2ZXJCaW5kaW5nU3RhcnQgKA0KPiAgICBVRlNfREVWX0RFU0MgICAgICAg ICAgICAgICAgICAgICAgICBEZXZpY2VEZXNjcmlwdG9yOw0KPiAgICBVSU5UMzIgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBVbml0RGVzY3JpcHRvclNpemU7DQo+ICAgIFVJTlQzMiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIERldmljZURlc2NyaXB0b3JTaXplOw0KPiArICBFREtJ SV9VRlNfQ0FSRF9SRUZfQ0xLX0ZSRVFfQVRUUklCVVRFIEF0dHJpYnV0ZXM7DQo+ICsgIFVJTlQ4 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlZkNsa0F0dHI7DQo+IA0KPiAgICBTdGF0 dXMgICAgPSBFRklfU1VDQ0VTUzsNCj4gICAgVWZzSGMgICAgID0gTlVMTDsNCj4gQEAgLTkxNiw2 ICs5MTgsMzQgQEAgVWZzUGFzc1RocnVEcml2ZXJCaW5kaW5nU3RhcnQgKA0KPiAgICAgIERFQlVH ICgoREVCVUdfRVJST1IsICJVZnMgSG9zdCBDb250cm9sbGVyIEluaXRpYWxpemF0aW9uIEVycm9y LCBTdGF0dXMNCj4gPSAlclxuIiwgU3RhdHVzKSk7DQo+ICAgICAgZ290byBFcnJvcjsNCj4gICAg fQ0KPiArICBpZiAoKG1VZnNIY1BsYXRmb3JtICE9IE5VTEwpICYmDQo+ICsgICAgICAoKG1VZnNI Y1BsYXRmb3JtLT5SZWZDbGtGcmVxID09IEVka2lpVWZzQ2FyZFJlZkNsa0ZyZXExOXAyTWh6KSB8 fA0KPiArICAgICAgIChtVWZzSGNQbGF0Zm9ybS0+UmVmQ2xrRnJlcSA9PSBFZGtpaVVmc0NhcmRS ZWZDbGtGcmVxMjZNaHopIHx8DQo+ICsgICAgICAgKG1VZnNIY1BsYXRmb3JtLT5SZWZDbGtGcmVx ID09IEVka2lpVWZzQ2FyZFJlZkNsa0ZyZXEzOHA0TWh6KSkpIHsNCj4gKyAgICBSZWZDbGtBdHRy ID0gVWZzQXR0clJlZkNsa0ZyZXE7DQo+ICsgICAgQXR0cmlidXRlcyA9IEVka2lpVWZzQ2FyZFJl ZkNsa0ZyZXFPYnNvbGV0ZTsNCj4gKyAgICBTdGF0dXMgPSBVZnNSd0F0dHJpYnV0ZXMgKFByaXZh dGUsIFRSVUUsIFJlZkNsa0F0dHIsIDAsIDAsIChVSU5UMzIgKikNCj4gJkF0dHJpYnV0ZXMpOw0K PiArICAgIGlmICghRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+ICsgICAgICBpZiAoQXR0cmlidXRl cyAhPSBtVWZzSGNQbGF0Zm9ybS0+UmVmQ2xrRnJlcSkgew0KPiArICAgICAgICBBdHRyaWJ1dGVz ID0gbVVmc0hjUGxhdGZvcm0tPlJlZkNsa0ZyZXE7DQo+ICsgICAgICAgIERFQlVHICgoREVCVUdf SU5GTywgIlNldHRpbmcgYlJlZkNsa0ZyZXEgYXR0cmlidXRlKCV4KSB0byAleFxuICAwIC0+DQo+ IDE5LjIgTWh6XG4gIDEgLT4gMjYgTWh6XG4gIDIgLT4gMzguNCBNaHpcbiAgMyAtPiBPYnNvbGV0 ZVxuIiwgUmVmQ2xrQXR0ciwNCj4gQXR0cmlidXRlcykpOw0KDQoNCkNvdWxkIHlvdSBoZWxwIHRv IHJlLWZvcm1hdCB0aGUgYWJvdmUgREVCVUcoKSBpbnRvIG11bHRpbGluZSBzdHlsZT8gU28gdGhh dCB0aGUgbGluZSB3b24ndCBiZSB2ZXJ5IGxvbmcuDQoNCg0KPiArICAgICAgICBTdGF0dXMgPSBV ZnNSd0F0dHJpYnV0ZXMgKFByaXZhdGUsIEZBTFNFLCBSZWZDbGtBdHRyLCAwLCAwLCAoVUlOVDMy ICopDQo+ICZBdHRyaWJ1dGVzKTsNCj4gKyAgICAgICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkg ew0KPiArICAgICAgICAgIERFQlVHICgoREVCVUdfRVJST1IsICJGYWlsZWQgdG8gQ2hhbmdlIFJl ZmVyZW5jZSBDbG9jayBBdHRyaWJ1dGUNCj4gdG8gJWQsIFN0YXR1cyA9ICVyIFxuIiwgbVVmc0hj UGxhdGZvcm0tPlJlZkNsa0ZyZXEsIFN0YXR1cykpOw0KDQoNCkNvdWxkIHlvdSBoZWxwIHRvIHJl LWZvcm1hdCB0aGUgYWJvdmUgREVCVUcoKSBpbnRvIG11bHRpbGluZSBzdHlsZSB0b28/DQoNCg0K PiArICAgICAgICB9DQo+ICsgICAgICB9DQo+ICsgICAgfSBlbHNlIHsNCj4gKyAgICAgIERFQlVH ICgoREVCVUdfRVJST1IsICJGYWlsZWQgdG8gUmVhZCBSZWZlcmVuY2UgQ2xvY2sgQXR0cmlidXRl LA0KPiBTdGF0dXMgPSAlciBcbiIsIFN0YXR1cykpOw0KPiArICAgIH0NCj4gKyAgfQ0KPiArDQo+ ICsgIGlmICgobVVmc0hjUGxhdGZvcm0gIT0gTlVMTCkgJiYgKG1VZnNIY1BsYXRmb3JtLT5DYWxs YmFjayAhPSBOVUxMKSkgew0KPiArICAgIFN0YXR1cyA9IG1VZnNIY1BsYXRmb3JtLT5DYWxsYmFj ayAoUHJpdmF0ZS0+SGFuZGxlLA0KPiBFZGtpaVVmc0hjUG9zdExpbmtTdGFydHVwLCAmUHJpdmF0 ZS0+VWZzSGNEcml2ZXJJbnRlcmZhY2UpOw0KPiArICAgIGlmIChFRklfRVJST1IgKFN0YXR1cykp IHsNCj4gKyAgICAgIERFQlVHICgoREVCVUdfRVJST1IsICJGYWlsdXJlIGZyb20gcGxhdGZvcm0g ZHJpdmVyIGR1cmluZw0KPiBFZGtpaVVmc0hjUG9zdExpbmtTdGFydHVwLCBTdGF0dXMgPSAlclxu IiwgU3RhdHVzKSk7DQo+ICsgICAgICByZXR1cm4gU3RhdHVzOw0KPiArICAgIH0NCj4gKyAgfQ0K PiANCj4gICAgLy8NCj4gICAgLy8gVUZTIDIuMCBzcGVjIFNlY3Rpb24gMTMuMS4zLjM6DQo+IGRp ZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvQnVzL1Vmcy9VZnNQYXNzVGhydUR4ZS9VZnNQYXNzVGhy dUhjaS5jDQo+IGIvTWRlTW9kdWxlUGtnL0J1cy9VZnMvVWZzUGFzc1RocnVEeGUvVWZzUGFzc1Ro cnVIY2kuYw0KPiBpbmRleCBlYmEzNWNjNjY5Li40YTlmYTAxZTdkIDEwMDY0NA0KPiAtLS0gYS9N ZGVNb2R1bGVQa2cvQnVzL1Vmcy9VZnNQYXNzVGhydUR4ZS9VZnNQYXNzVGhydUhjaS5jDQo+ICsr KyBiL01kZU1vZHVsZVBrZy9CdXMvVWZzL1Vmc1Bhc3NUaHJ1RHhlL1Vmc1Bhc3NUaHJ1SGNpLmMN Cj4gQEAgLTIsNyArMiw3IEBADQo+ICAgIFVmc1Bhc3NUaHJ1RHhlIGRyaXZlciBpcyB1c2VkIHRv IHByb2R1Y2UgRUZJX0VYVF9TQ1NJX1BBU1NfVEhSVQ0KPiBwcm90b2NvbCBpbnRlcmZhY2UNCj4g ICAgZm9yIHVwcGVyIGxheWVyIGFwcGxpY2F0aW9uIHRvIGV4ZWN1dGUgVUZTLXN1cHBvcnRlZCBT Q1NJIGNtZHMuDQo+IA0KPiAtICBDb3B5cmlnaHQgKGMpIDIwMTQgLSAyMDE5LCBJbnRlbCBDb3Jw b3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ICsgIENvcHlyaWdodCAoYykgMjAx NCAtIDIwMjIsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4g ICAgQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24uPEJSPg0KPiAgICBTUERYLUxp Y2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiANCj4gQEAgLTE5NzAsMTQg KzE5NzAsNiBAQCBVZnNEZXZpY2VEZXRlY3Rpb24gKA0KPiAgICAgICAgICByZXR1cm4gRUZJX0RF VklDRV9FUlJPUjsNCj4gICAgICAgIH0NCj4gICAgICB9IGVsc2Ugew0KPiAtICAgICAgaWYgKCht VWZzSGNQbGF0Zm9ybSAhPSBOVUxMKSAmJiAobVVmc0hjUGxhdGZvcm0tPkNhbGxiYWNrICE9IE5V TEwpKSB7DQo+IC0gICAgICAgIFN0YXR1cyA9IG1VZnNIY1BsYXRmb3JtLT5DYWxsYmFjayAoUHJp dmF0ZS0+SGFuZGxlLA0KPiBFZGtpaVVmc0hjUG9zdExpbmtTdGFydHVwLCAmUHJpdmF0ZS0+VWZz SGNEcml2ZXJJbnRlcmZhY2UpOw0KPiAtICAgICAgICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7 DQo+IC0gICAgICAgICAgREVCVUcgKChERUJVR19FUlJPUiwgIkZhaWx1cmUgZnJvbSBwbGF0Zm9y bSBkcml2ZXIgZHVyaW5nDQo+IEVka2lpVWZzSGNQb3N0TGlua1N0YXJ0dXAsIFN0YXR1cyA9ICVy XG4iLCBTdGF0dXMpKTsNCj4gLSAgICAgICAgICByZXR1cm4gU3RhdHVzOw0KPiAtICAgICAgICB9 DQo+IC0gICAgICB9DQo+IC0NCg0KDQpJcyBpdCBwb3NzaWJsZSB0byBwdXQgdGhlICJDaGFuZ2Ug UmVmZXJlbmNlIENsb2NrIEF0dHJpYnV0ZSIgY29kZXMgaGVyZSBpbiBVZnNEZXZpY2VEZXRlY3Rp b24oKT8NCk1vdmluZyB0aGUgbG9jYXRpb24gb2YgdGhlICdFZGtpaVVmc0hjUG9zdExpbmtTdGFy dHVwJyBjYWxsYmFjayBzZWVtcyBsaWtlIGEgYmVoYXZpb3IgY2hhbmdlIGZyb20gdGhlIG9yaWdp biBkcml2ZXIuDQoNCkJlc3QgUmVnYXJkcywNCkhhbyBXdQ0KDQoNCj4gICAgICAgIHJldHVybiBF RklfU1VDQ0VTUzsNCj4gICAgICB9DQo+ICAgIH0NCj4gZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBr Zy9JbmNsdWRlL1Byb3RvY29sL1Vmc0hvc3RDb250cm9sbGVyUGxhdGZvcm0uaA0KPiBiL01kZU1v ZHVsZVBrZy9JbmNsdWRlL1Byb3RvY29sL1Vmc0hvc3RDb250cm9sbGVyUGxhdGZvcm0uaA0KPiBp bmRleCBmYWE4MmQwYzRlLi4zMmU5ZjY0ODhjIDEwMDY0NA0KPiAtLS0gYS9NZGVNb2R1bGVQa2cv SW5jbHVkZS9Qcm90b2NvbC9VZnNIb3N0Q29udHJvbGxlclBsYXRmb3JtLmgNCj4gKysrIGIvTWRl TW9kdWxlUGtnL0luY2x1ZGUvUHJvdG9jb2wvVWZzSG9zdENvbnRyb2xsZXJQbGF0Zm9ybS5oDQo+ IEBAIC0xLDcgKzEsNyBAQA0KPiAgLyoqIEBmaWxlDQo+ICAgIEVES0lJX1VGU19IQ19QTEFURk9S TV9QUk9UT0NPTCBkZWZpbml0aW9uLg0KPiANCj4gLUNvcHlyaWdodCAoYykgMjAxOSwgSW50ZWwg Q29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiArQ29weXJpZ2h0IChjKSAy MDE5IC0gMjAyMiwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0K PiAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gDQo+ICAq Ki8NCj4gQEAgLTExLDcgKzExLDcgQEAgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNs YXVzZS1QYXRlbnQNCj4gDQo+ICAjaW5jbHVkZSA8UHJvdG9jb2wvVWZzSG9zdENvbnRyb2xsZXIu aD4NCj4gDQo+IC0jZGVmaW5lIEVES0lJX1VGU19IQ19QTEFURk9STV9QUk9UT0NPTF9WRVJTSU9O ICAxDQo+ICsjZGVmaW5lIEVES0lJX1VGU19IQ19QTEFURk9STV9QUk9UT0NPTF9WRVJTSU9OICAy DQo+IA0KPiAgZXh0ZXJuIEVGSV9HVUlEICBnRWRraWlVZnNIY1BsYXRmb3JtUHJvdG9jb2xHdWlk Ow0KPiANCj4gQEAgLTgzLDYgKzgzLDEzIEBAIHR5cGVkZWYgZW51bSB7DQo+ICAgIEVka2lpVWZz SGNQb3N0TGlua1N0YXJ0dXANCj4gIH0gRURLSUlfVUZTX0hDX1BMQVRGT1JNX0NBTExCQUNLX1BI QVNFOw0KPiANCj4gK3R5cGVkZWYgZW51bSB7DQo+ICsgIEVka2lpVWZzQ2FyZFJlZkNsa0ZyZXEx OXAyTWh6LA0KPiArICBFZGtpaVVmc0NhcmRSZWZDbGtGcmVxMjZNaHosDQo+ICsgIEVka2lpVWZz Q2FyZFJlZkNsa0ZyZXEzOHA0TWh6LA0KPiArICBFZGtpaVVmc0NhcmRSZWZDbGtGcmVxT2Jzb2xl dGUNCj4gK30gRURLSUlfVUZTX0NBUkRfUkVGX0NMS19GUkVRX0FUVFJJQlVURTsNCj4gKw0KPiAg LyoqDQo+ICAgIENhbGxiYWNrIGZ1bmN0aW9uIGZvciBwbGF0Zm9ybSBkcml2ZXIuDQo+IA0KPiBA QCAtMTE4LDYgKzEyNSwxMCBAQCBzdHJ1Y3QgX0VES0lJX1VGU19IQ19QTEFURk9STV9QUk9UT0NP TCB7DQo+ICAgIC8vLyBmb3IgaG9zdCBjb250cm9sbGVyLg0KPiAgICAvLy8NCj4gICAgRURLSUlf VUZTX0hDX1BMQVRGT1JNX0NBTExCQUNLICAgICAgICAgICAgQ2FsbGJhY2s7DQo+ICsgIC8vLw0K PiArICAvLy8gUmVmZXJlbmNlIENsb2NrIEZyZXF1ZW5jeSBVZnMgQ2FyZCBBdHRyaWJ1dGUgdGhh dCBuZWVkIHRvIGJlIHNldCBpbg0KPiB0aGlzIFVmcyBIb3N0IEVudmlyb25tZW50Lg0KPiArICAv Ly8NCj4gKyAgRURLSUlfVUZTX0NBUkRfUkVGX0NMS19GUkVRX0FUVFJJQlVURSAgICAgUmVmQ2xr RnJlcTsNCj4gIH07DQo+IA0KPiAgI2VuZGlmDQo+IC0tDQo+IDIuMjYuMi53aW5kb3dzLjENCj4g DQo+IA0KPiANCj4gDQo+IA0KDQo=