From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.138]) by mx.groups.io with SMTP id smtpd.web11.14914.1682672502685886726 for ; Fri, 28 Apr 2023 02:01:43 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@os.amperecomputing.com header.s=selector2 header.b=IiwTn7bE; spf=pass (domain: os.amperecomputing.com, ip: 40.107.244.138, mailfrom: tinhnguyen@os.amperecomputing.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZdkgsvPjfyr2B8E65ja32UoYcqOuDn0JKVh3E5PaLHu9lpx1dp97WlNy0oNBO1phP/iNvBBGBrdVVAZP+KuLX3qAksbtJSMqUlQvV5EMz6/JgoF4MzSGFHHXD34bWr/i7Vfvu51AiVYEgFGSHJNZ/wZtrku4ckhBy1bcZVDy0TuxN7yTmeDaOtwx+9z6PdYykCBBpSTk5eZcbWAzqf61t8zRcpjD6wJnvteE7XbzCTMOCulZkZfFkiA4sfauQxDlsO7Yi4k5oiNuknK4YjApWc2sLVQrV+hL7hhuY9QRRbKKLC+71qbxIm5df7Ev7ploeB/zHeSk4+X7OjGU2b7uLA== 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=Q1n8EJiBEIP5StNHXVWlwtEvw9y1QcoMiSs+pwGQWQE=; b=UNipmC8RBsQoelgjRqaokrWqgMq7kYFSCKct23aWI8t8noz4pSBqm1/eWaW5Fmkrg+3MZlOjwpU+owSi/43vgDwg/milRcLFRXbNb/PSecKA6bJlTZuhCGfM50xOOt9Af1dUXTpVEp7jVOzuaF262y3lWZJvKaNHuU0K4kOcETKmIYb6tW+Wie1r3FkKLhrvvwjrJkR8srLjzetT7ocgu9vMtfpnmSu2qXZZq+3KfWG0bX7ciFeRM6xLiDUyskqN/MBpn4djwNl5OTxhpNZFfUJSaaLWEgX1qtfRgy8jWHVMoHY1OiPG5vdDZnlea1mP/c/gxks0AkS13ToJeg+zyg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=os.amperecomputing.com; dmarc=pass action=none header.from=os.amperecomputing.com; dkim=pass header.d=os.amperecomputing.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=os.amperecomputing.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Q1n8EJiBEIP5StNHXVWlwtEvw9y1QcoMiSs+pwGQWQE=; b=IiwTn7bELLndRiqESJX2k9vcODttrteWRNobYntsQ6rEgP4si7bQfXMWyN6jvY9Q2ibj091UIn6vsqCCfrXJDg3UFiYwT1/Fj1aRBmDqrj0PLggNnnjnP8jc87OgwnF01gevu7J5kfQAP+H7iPYMJKdFB5zwT2UZFcYjEst/15c= Received: from DM5PR0102MB3336.prod.exchangelabs.com (2603:10b6:4:9f::11) by MW6PR01MB8230.prod.exchangelabs.com (2603:10b6:303:24b::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6340.21; Fri, 28 Apr 2023 09:01:39 +0000 Received: from DM5PR0102MB3336.prod.exchangelabs.com ([fe80::bb9e:46d1:ae4b:caf2]) by DM5PR0102MB3336.prod.exchangelabs.com ([fe80::bb9e:46d1:ae4b:caf2%7]) with mapi id 15.20.6340.020; Fri, 28 Apr 2023 09:01:39 +0000 From: "Tinh Nguyen" To: gaoliming , "devel@edk2.groups.io" CC: Open Source Submission , "michael.d.kinney@intel.com" , "zhiguang.liu@intel.com" , "abner.chang@amd.com" Subject: Re: [PATCH 1/2] MdePkg/IndustryStandard: Adds definitions for IPMI SSIF Thread-Topic: [PATCH 1/2] MdePkg/IndustryStandard: Adds definitions for IPMI SSIF Thread-Index: AQHZeYZQnt/uOjWroUyEh+DDh2iNCq9ALlMAgAA8Kn0= Date: Fri, 28 Apr 2023 09:01:39 +0000 Message-ID: References: <20230428035940.1765700-1-tinhnguyen@os.amperecomputing.com> <20230428035940.1765700-2-tinhnguyen@os.amperecomputing.com> <060f01d97990$b0ca9be0$125fd3a0$@byosoft.com.cn> In-Reply-To: <060f01d97990$b0ca9be0$125fd3a0$@byosoft.com.cn> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_5b82cb1d-c2e0-4643-920a-bbe7b2d7cc47_Enabled=True;MSIP_Label_5b82cb1d-c2e0-4643-920a-bbe7b2d7cc47_SiteId=3bc2b170-fd94-476d-b0ce-4229bdc904a7;MSIP_Label_5b82cb1d-c2e0-4643-920a-bbe7b2d7cc47_SetDate=2023-04-28T09:01:38.203Z;MSIP_Label_5b82cb1d-c2e0-4643-920a-bbe7b2d7cc47_Name=Confidential;MSIP_Label_5b82cb1d-c2e0-4643-920a-bbe7b2d7cc47_ContentBits=0;MSIP_Label_5b82cb1d-c2e0-4643-920a-bbe7b2d7cc47_Method=Standard; authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=os.amperecomputing.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM5PR0102MB3336:EE_|MW6PR01MB8230:EE_ x-ms-office365-filtering-correlation-id: 00d2170b-22ab-439d-5468-08db47c72dc9 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: xnJ3XygiRfearE4rLxkYwsykO2qB+APyi+/38mO3vb4Z3L2wO8p5dGldwkRUL46YrMQ1PgnlxT7RgJnwVjE9WmuMIQjfZM5D8GRcfMftdVOke79mvPn7l1XThKrKnn7T7857jfPC1HSc/XYJeslFGK2VYW2W+kh4URACCHcu8POz4HgA7owVdKJ/9bki8C6a/owbPb5b359OWOdJoFmz/7KHWTsqyj3PirFdWI/j9WKtedG1rx7VZtX5sqP1oir3BP3YQYBflpbGJqj8MH7nIiH73PoX9zAmhXwzIJPIROM2MT26cub80olSGWYbuscQnO9VnUzJph9L2fI0CAD7WjokK7AfXjTIcDd5MRanvvyK3OMmh8UkprY9OaauBElyoG2f+cxwALxezn6QG98djV31wjp6huPvUe6YRnF2VtUlUlqoto0qklnNDUvw3rTpRz/hrBFGTes5B+PYYBItsJJLN62MkMA+j83v1DOLwHfo/HFl8R5MmMRQNGoOWq+JTxU8wdCcsUEiPWe13ZGGPw6oFnu+oenaNoso/MlTrQ41ZSZNRtOwAJVl7i2r2vnYeJ6s4ExFYA3oAJazZf220Kettnr8MqBLEihCM7K4u8E= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR0102MB3336.prod.exchangelabs.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(39850400004)(346002)(366004)(376002)(136003)(396003)(451199021)(19627405001)(2906002)(8676002)(122000001)(33656002)(5660300002)(8936002)(55016003)(186003)(52536014)(41300700001)(54906003)(83380400001)(71200400001)(110136005)(316002)(7696005)(91956017)(478600001)(66946007)(66556008)(66476007)(86362001)(76116006)(64756008)(53546011)(38100700002)(966005)(6506007)(4326008)(9686003)(166002)(66446008)(26005)(38070700005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?gb2312?B?dTNKeTcvWlpKOHAxYVg4SzVkL3N6eGtRWi8yNUZqZ3VKN2ZXLzN5MWMwS0pD?= =?gb2312?B?NHJTb0hOMVEwOUNTbi9sWkVyZ3U4alZTSkUvekx6eVYyNW84ek1vQ0lzUUw5?= =?gb2312?B?eE5VR3pYbytBSGJTeWl3VDJhQUJ0aFRUelhZUmtmREN3YVdkcGZGNWdXL1E1?= =?gb2312?B?Z1RtMVM2UEUwZ1lwY1haa2VMWi93aGRWN1g2WkFCalhFZVhNVFZnRTNOQ0Z5?= =?gb2312?B?SlJ6Mnk4ZXp0cXRhVkNzeWdCYkhkNmFGUlFSQ1g1VHppVmxFUWMxZytDa0JV?= =?gb2312?B?RUFGdjB5cDVHTWZHOFhRSTlGRjVyU0dmNk1jcUphU0xjMlhScW4vdDRwbDhE?= =?gb2312?B?MC8xQ2tSejVHcnVaY09jODduMnVFbUxMU1pRaVYvN0hsTjlMYlFIMjAySW85?= =?gb2312?B?UndnWmFMWThFRFlBY043VFRPRDlUcVZ6TkxYYXBZd0hqMjc0bWtvQUlZOFFE?= =?gb2312?B?TFJ1L28rbW1CelRUOTg5c1psQ1QrV3lCOE9tOHR2THRHRnhhQjQ5MnhPVGdH?= =?gb2312?B?STdkZkIza0JaNlVUT3BzdjFKVndXcTRGWFU1Q3lVU3pMbXRCNm5zd3o5TTNJ?= =?gb2312?B?RjVtcTY1cUxnRVpoUjBRMGhJNjh0WkRqKzNTRFg1YUpoVWMzY3FsOE1Wc0RV?= =?gb2312?B?QjlGMmpxeG00M2YvU1liWHk2N0lCcDhRSVllVk1zUlFnUU5YRi8wWllxTXc4?= =?gb2312?B?ZEMxb2hTd3llZERMbmNFQVhKclNDWFFkWmR1ODRGMUJjUG1aY0g5a2lGeEE2?= =?gb2312?B?eGhzQWl3WUwxc1lxVFhrOTZNbWhXejN4SjFGZzFBRGVCTSsxTThydXR1V2Nu?= =?gb2312?B?ZFRlWUluWHBIeWhkZTgwRndaQlVBbjhiWWlLYXVub3IzYUwwSnc1d25tQzJq?= =?gb2312?B?a0VyWUF6ZUY0SGdSdTJoVE9XYXB0V1RJTU9lVnVpNXc0SW9TTzF2cjhyeC9X?= =?gb2312?B?UnM3SVh5aUJWcGdoSHh1NnBlMzlGaWtESE5JaVdUdlRjZEVrRkcvYVE1NTZr?= =?gb2312?B?OElqaVl3YUUydE96NUhPc3V6cWNaQm4rRHptUGJsVEI3ZWFJQ0xzdW1YQkww?= =?gb2312?B?bDlaQncrd3g2dFdaMUsrQlNxSU52VDl0dDFVdG1OTW1yNldTd1N5NkdrSmZZ?= =?gb2312?B?M1ZCQkdua1h2MkZyUHBQR094dCtHSEVIU0hDbmlMRXRWSHJnWVRWR3U0QWJt?= =?gb2312?B?UnJNUVgwL1FEN1NYQXc1ZTNXQ0dwTTh6SHpldmN4SnJxd0VBeDk4UTZ6T1ht?= =?gb2312?B?MWJwTlZXRkNLRmw0VmVPYzBMM2dEMjF0ek1KT0dEOTJzYkoxYS8yWlptNnNZ?= =?gb2312?B?N1NlbnBvUVBHTHorRC9halZNdDBJNkpNYTFnNWtkNWh4aHVYNGJYcmpIR2Vh?= =?gb2312?B?SVRRQjRGS0pjV1FhSEFwd2dpdTRQS3VYWWVZdnNWenVNd2xYRXo0ZlR1Z1FE?= =?gb2312?B?Nk5LN3Q2WWdEckZGR2NQVW9ORm53dzdRYUp1YTdoM1VFRkpDSDk1N2hKWUN6?= =?gb2312?B?ekNEaUxVQWx2dXI2THFzR1ZEanVXOHBmWEtwUk9vWWpRZUpETG1jY3lKOXll?= =?gb2312?B?endReGNFM005L1lZdXBIeWF5NVMxOGphTFpKSHplVjUxK3FxSHlkeFU5elNB?= =?gb2312?B?MU5qQ3YrNDNhQ3M3c2F4UjBOTDNWVzdIWVhKWWxDUmFVd0QzK0dLV0F4Z3Rq?= =?gb2312?B?WS9KYWVyMWxwczRidDVuYVczS0pnNEVvUnppZER2enlnV0ppYjJpN1JqM0Fw?= =?gb2312?B?MHdOUHFvajZKbVhmaHlDSHhacDd5Mks4STdvWnBoaDhsNmRic1BKa2t6RzZZ?= =?gb2312?B?OTBIUHVZeGhhS2dlRnBySUpWWlFPMFlCV3RvN2R5cFlYR2hkYm1pbTVLQitY?= =?gb2312?B?NjE4bVZ4Q1lsRHlnNWZKWjAxSWFJMElRT0EvakRPalp3cTJMQVhIL3k0bEtY?= =?gb2312?B?OVFwLzdqVWtwaUhuRUY3VUx5ZUNMQjRSSGJKbEJFZFJUdUJDS09aZk16N2lZ?= =?gb2312?B?WER5a3ZhMHN3eFdvWDluN1VsZkFWTGx4MmtvT0k5THhTSktBUXdsRzNPVjRK?= =?gb2312?B?T1NDM0oyR0VVN3RNTXRaT3VwUUFkZ2N5YW1PWGNnaXBFTDJMdytUWVN2VUdT?= =?gb2312?B?T3U0QkI2bEhwTHF6d1k3N1hWTm03Y1RhN2RlZlFaQTNLTEZNUW1Jak93V3pz?= =?gb2312?Q?v0yOisaWODyPzy6JmkV8zp4=3D?= MIME-Version: 1.0 X-OriginatorOrg: os.amperecomputing.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM5PR0102MB3336.prod.exchangelabs.com X-MS-Exchange-CrossTenant-Network-Message-Id: 00d2170b-22ab-439d-5468-08db47c72dc9 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Apr 2023 09:01:39.4982 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3bc2b170-fd94-476d-b0ce-4229bdc904a7 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: pMmgMY6At6bKC+TeZfOK7MSF3ATbUn0GeqfWysR9LY/M57Xnf/8EdZuwfbJOSD4e89cv9XQoiEE1x9bMeiBigBDmx+LG6wVXkUoB9ThRHQw36fSiLAvNq2oBrD17Danj X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR01MB8230 Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_DM5PR0102MB3336A4C0D77316C00EAFEB60EC6B9DM5PR0102MB3336_" --_000_DM5PR0102MB3336A4C0D77316C00EAFEB60EC6B9DM5PR0102MB3336_ Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 SGkgR2FvLA0KDQpUaGFua3MgZm9yIHlvdXIgZmVlZGJhY2suIEkgd2lsbCBzZXBhcmF0ZSBpdCBp biB2Mi4NCg0KVGhhbmtzLA0KVGluaA0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18N CkZyb206IGdhb2xpbWluZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KU2VudDogRnJpZGF5 LCBBcHJpbCAyOCwgMjAyMyAxMjoxNyBQTQ0KVG86IFRpbmggTmd1eWVuIE9TIDx0aW5obmd1eWVu QG9zLmFtcGVyZWNvbXB1dGluZy5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRr Mi5ncm91cHMuaW8+DQpDYzogT3BlbiBTb3VyY2UgU3VibWlzc2lvbiA8cGF0Y2hlc0BhbXBlcmVj b21wdXRpbmcuY29tPjsgbWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20gPG1pY2hhZWwuZC5raW5u ZXlAaW50ZWwuY29tPjsgemhpZ3VhbmcubGl1QGludGVsLmNvbSA8emhpZ3VhbmcubGl1QGludGVs LmNvbT47IGFibmVyLmNoYW5nQGFtZC5jb20gPGFibmVyLmNoYW5nQGFtZC5jb20+DQpTdWJqZWN0 OiC72Li0OiBbUEFUQ0ggMS8yXSBNZGVQa2cvSW5kdXN0cnlTdGFuZGFyZDogQWRkcyBkZWZpbml0 aW9ucyBmb3IgSVBNSSBTU0lGDQoNClRpbmg6DQogIEkgc3VnZ2VzdCB0byBzZXBhcmF0ZSB0aGlz IHBhdGNoLiBUaGUgaGVhZGVyIGZpbGUgZm9sbG93cyB0aGUgaW5kdXN0cnkNCnN0YW5kYXJkLiBO ZXcgUENEcyBpbiBERUMgYXJlIGZvciBFREsyIGltcGxlbWVudGF0aW9uLiBUaGV5IGFyZSBkaWZm ZXJlbnQNCmNoYW5nZXMuIFBsZWFzZSBzZXBhcmF0ZSB0aGVtLg0KDQpUaGFua3MNCkxpbWluZw0K PiAtLS0tLdPKvP7Urbz+LS0tLS0NCj4gt6K8/sjLOiBUaW5oIE5ndXllbiA8dGluaG5ndXllbkBv cy5hbXBlcmVjb21wdXRpbmcuY29tPg0KPiC3osvNyrG85DogMjAyM8TqNNTCMjjI1SAxMjowMA0K PiDK1bz+yMs6IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ILOty806IHBhdGNoZXNAYW1wZXJlY29t cHV0aW5nLmNvbTsgbWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb207DQo+IGdhb2xpbWluZ0BieW9z b2Z0LmNvbS5jbjsgemhpZ3VhbmcubGl1QGludGVsLmNvbTsgYWJuZXIuY2hhbmdAYW1kLmNvbTsN Cj4gVGluaCBOZ3V5ZW4gPHRpbmhuZ3V5ZW5Ab3MuYW1wZXJlY29tcHV0aW5nLmNvbT4NCj4g1vfM 4jogW1BBVENIIDEvMl0gTWRlUGtnL0luZHVzdHJ5U3RhbmRhcmQ6IEFkZHMgZGVmaW5pdGlvbnMg Zm9yIElQTUkgU1NJRg0KPg0KPiBTcGVjaWZpY2F0aW9uIHJlZmVyZW5jZToNCj4gaHR0cHM6Ly93 d3cuaW50ZWwuY29tL2NvbnRlbnQvd3d3L3VzL2VuL3Byb2R1Y3RzL2RvY3Mvc2VydmVycy9pcG1p L2lwDQo+IG1pLXNlY29uZC1nZW4taW50ZXJmYWNlLXNwZWMtdjItcmV2MS0xLmh0bWwNCj4NCj4g U2lnbmVkLW9mZi1ieTogVGluaCBOZ3V5ZW4gPHRpbmhuZ3V5ZW5Ab3MuYW1wZXJlY29tcHV0aW5n LmNvbT4NCj4gLS0tDQo+ICBNZGVQa2cvTWRlUGtnLmRlYyAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAyNiArKysrKysNCj4gIE1kZVBrZy9JbmNsdWRlL0luZHVzdHJ5U3RhbmRhcmQvSXBtaVNz aWYuaCB8IDk4ICsrKysrKysrKysrKysrKysrKysrDQo+ICAyIGZpbGVzIGNoYW5nZWQsIDEyNCBp bnNlcnRpb25zKCspDQo+DQo+IGRpZmYgLS1naXQgYS9NZGVQa2cvTWRlUGtnLmRlYyBiL01kZVBr Zy9NZGVQa2cuZGVjDQo+IGluZGV4IDc0ODhjY2RhN2EwMC4uNTE4ZTQyMDBlOWFmIDEwMDY0NA0K PiAtLS0gYS9NZGVQa2cvTWRlUGtnLmRlYw0KPiArKysgYi9NZGVQa2cvTWRlUGtnLmRlYw0KPiBA QCAtMTAsNiArMTAsNyBAQA0KPiAgIyBDb3B5cmlnaHQgKGMpIDIwMjIsIExvb25nc29uIFRlY2hu b2xvZ3kgQ29ycG9yYXRpb24gTGltaXRlZC4gQWxsIHJpZ2h0cw0KPiByZXNlcnZlZC48QlI+DQo+ ICAjIENvcHlyaWdodCAoYykgMjAyMSAtIDIwMjIsIEFybSBMaW1pdGVkLiBBbGwgcmlnaHRzIHJl c2VydmVkLjxCUj4NCj4gICMgQ29weXJpZ2h0IChDKSAyMDIzIEFkdmFuY2VkIE1pY3JvIERldmlj ZXMsIEluYy4gQWxsIHJpZ2h0cw0KcmVzZXJ2ZWQuPEJSPg0KPiArIyBDb3B5cmlnaHQgKGMpIDIw MjMsIEFtcGVyZSBDb21wdXRpbmcgTExDLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gICMN Cj4gICMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gICMN Cj4gQEAgLTIzNTMsNiArMjM1NCwzMSBAQCBbUGNkc0ZpeGVkQXRCdWlsZCxQY2RzUGF0Y2hhYmxl SW5Nb2R1bGVdDQo+ICAgICMgQFByb21wdCBJUE1JIEtDUyBJbnRlcmZhY2UgSS9PIEJhc2UgQWRk cmVzcw0KPg0KPiBnRWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNkSXBtaUtjc0lvQmFzZUFkZHJl c3N8MHhjYTJ8VUlOVDE2fDB4MDAwDQo+IDAwMDMxDQo+DQo+ICsgICMjIFRoaXMgaXMgU01CdXMg c2xhdmUgYWRkcmVzcyBmb3IgdGhlIFNTSUYgdG8gdGhlIEJNQy4NCj4gKyAgIyAgVGhlIHJlY29t bWVuZGVkIHZhbHVlIGRlZmluZWQgYnkgSVBNSSBzcGVjaWZpY2F0aW9uIGlzIDB4MjAgKHNlY3Rp b24NCj4gMTIuMTIpLg0KPiArICAjIEBQcm9tcHQgSVBNSSBTU0lGIFNNQnVzIHNsYXZlIGFkZHJl c3MNCj4gKw0KPiBnRWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNkSXBtaVNtYnVzU2xhdmVBZGRy fDB4MjB8VUlOVDh8MHgwMDAwMDANCj4gMzINCj4gKw0KPiArICAjIyBUaGlzIGlzIHRoZSBtYXhp bXVtIG51bWJlciBvZiBJUE1JIFNTSUYgcmVxdWVzdCByZXRyaWVzLg0KPiArICAjICBUaGUgSVBN SSBzcGVjaWZpY2F0aW9uIHNwZWNpZmllZCBtaW4gdmFsdWUgaXMgNSAoc2VjdGlvbiAxMi4xNyku DQo+ICsgICMgQFByb21wdCBOdW1iZXIgb2YgSVBNSSBTU0lGIHJlcXVlc3QgcmV0cmllcy4NCj4g Kw0KPiBnRWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNkSXBtaVNzaWZSZXF1ZXN0UmV0cnlDb3Vu dHwweDA1fFVJTlQ4fDB4MA0KPiAwMDAwMDMzDQo+ICsNCj4gKyAgIyMgVGhpcyBpcyB0aGUgcmVx dWlyZWQgaW50ZXJ2YWwgZm9yIGVhY2ggSVBNSSByZXF1ZXN0IHJldHJ5Lg0KPiArICAjICBUaGUg SVBNSSBzcGVjaWZpY2F0aW9uIHNwZWNpZmllZCBhIHRpbWUgcmFuZ2Ugb2YgNjBtcyB0byAyNTBt cw0KPiAoc2VjdGlvbiAxMi4xNykuDQo+ICsgICMgIFRoZSBkZWZhdWx0IHNldHRpbmcgaXMgbWlu Lg0KPiArICAjIEBQcm9tcHQgVGltZSBiZXR3ZWVuIElQTUkgU1NJRiByZXF1ZXN0IHJldHJpZXMu DQo+ICsNCj4gZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZElwbWlTc2lmUmVxdWVzdFJldHJ5 SW50ZXJ2YWx8NjAwMDB8VUlOVDMyDQo+IHwweDAwMDAwMDM0DQo+ICsNCj4gKyAgIyMgVGhpcyB2 YWx1ZSBpcyB0aGUgbWF4aW11bSByZXRyaWVzIG9mIGFuIElQTUkgU1NJRiByZXNwb25zZQ0KPiAr ICAjIEBQcm9tcHQgTnVtYmVyIG9mIElQTUkgU1NJRiByZXNwb25zZSByZXRyaWVzLg0KPiArDQo+ IGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RJcG1pU3NpZlJlc3BvbnNlUmV0cnlDb3VudHwy NTB8VUlOVDh8MHgwDQo+IDAwMDAwMzUNCj4gKw0KPiArICAjIyBUaGlzIGlzIHRoZSByZXF1aXJl ZCBpbnRlcnZhbCBmb3IgZWFjaCBJUE1JIHJlc3BvbnNlIHJldHJ5Lg0KPiArICAjICBUaGUgSVBN SSBzcGVjaWZpY2F0aW9uIHNwZWNpZmllZCBtaW4gdmFsdWUgaXMgNjBtcyAoc2VjdGlvbiAxMi4x NykuDQo+ICsgICMgQFByb21wdCBUaW1lLW91dCBmb3IgYSByZXNwb25zZSwgaW50ZXJuYWwNCj4g Kw0KPiBnRWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNkSXBtaVNzaWZSZXNwb25zZVJldHJ5SW50 ZXJ2YWx8NjAwMDB8VUlOVDMNCj4gMnwweDAwMDAwMDM2DQo+ICsNCj4gIFtQY2RzRml4ZWRBdEJ1 aWxkLCBQY2RzUGF0Y2hhYmxlSW5Nb2R1bGUsIFBjZHNEeW5hbWljLCBQY2RzRHluYW1pY0V4XQ0K PiAgICAjIyBUaGlzIHZhbHVlIGlzIHVzZWQgdG8gc2V0IHRoZSBiYXNlIGFkZHJlc3Mgb2YgUENJ IGV4cHJlc3MgaGllcmFyY2h5Lg0KPiAgICAjIEBQcm9tcHQgUENJIEV4cHJlc3MgQmFzZSBBZGRy ZXNzLg0KPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0luY2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9JcG1p U3NpZi5oDQo+IGIvTWRlUGtnL0luY2x1ZGUvSW5kdXN0cnlTdGFuZGFyZC9JcG1pU3NpZi5oDQo+ IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAwMC4uNGE5NzQzODEwOWE5 DQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvTWRlUGtnL0luY2x1ZGUvSW5kdXN0cnlTdGFuZGFy ZC9JcG1pU3NpZi5oDQo+IEBAIC0wLDAgKzEsOTggQEANCj4gKy8qKiBAZmlsZQ0KPiArICBJUE1J IFNTSUYgRGVmaW5pdGlvbnMNCj4gKw0KPiArICBDb3B5cmlnaHQgKGMpIDIwMjMsIEFtcGVyZSBD b21wdXRpbmcgTExDLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gKyAgU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gKw0KPiArICBAcGFyIFJldmlzaW9u IFJlZmVyZW5jZToNCj4gKyAgICAtIElQTUkgU3BlY2lmaWNhdGlvbg0KPiArICAgICAgVmVyc2lv biAyLjAsIFJldi4gMS4xDQo+ICsNCj4gKw0KPiBodHRwczovL3d3dy5pbnRlbC5jb20vY29udGVu dC93d3cvdXMvZW4vcHJvZHVjdHMvZG9jcy9zZXJ2ZXJzL2lwbWkvaXANCj4gbWktc2Vjb25kLWdl bi1pbnRlcmZhY2Utc3BlYy12Mi1yZXYxLTEuaHRtbA0KPiArKiovDQo+ICsNCj4gKyNpZm5kZWYg SVBNSV9TU0lGX0hfDQo+ICsjZGVmaW5lICBJUE1JX1NTSUZfSF8NCj4gKw0KPiArLy8vDQo+ICsv Ly8gRGVmaW5pdGlvbnMgZm9yIFNNQlVTIENvbW1hbmRzIGZvciBTU0lGDQo+ICsvLy8gVGFibGUg MTIgLSBTdW1tYXJ5IG9mIFNNQlVTIENvbW1hbmRzIGZvciBTU0lGDQo+ICsvLy8NCj4gKw0KPiAr Ly8gV3JpdGUgYmxvY2sNCj4gKyNkZWZpbmUgSVBNSV9TU0lGX1NNQlVTX0NNRF9TSU5HTEVfUEFS VF9XUklURSAgICAgICAgMHgwMg0KPiArI2RlZmluZSBJUE1JX1NTSUZfU01CVVNfQ01EX01VTFRJ X1BBUlRfV1JJVEVfU1RBUlQgICAweDA2DQo+ICsjZGVmaW5lIElQTUlfU1NJRl9TTUJVU19DTURf TVVMVElfUEFSVF9XUklURV9NSURETEUgIDB4MDcNCj4gKyNkZWZpbmUgSVBNSV9TU0lGX1NNQlVT X0NNRF9NVUxUSV9QQVJUX1dSSVRFX0VORCAgICAgMHgwOA0KPiArDQo+ICsvLyBSZWFkIGJsb2Nr DQo+ICsjZGVmaW5lIElQTUlfU1NJRl9TTUJVU19DTURfU0lOR0xFX1BBUlRfUkVBRCAgICAgICAg MHgwMw0KPiArI2RlZmluZSBJUE1JX1NTSUZfU01CVVNfQ01EX01VTFRJX1BBUlRfUkVBRF9TVEFS VCAgIDB4MDMNCj4gKyNkZWZpbmUgSVBNSV9TU0lGX1NNQlVTX0NNRF9NVUxUSV9QQVJUX1JFQURf TUlERExFICAweDA5DQo+ICsjZGVmaW5lIElQTUlfU1NJRl9TTUJVU19DTURfTVVMVElfUEFSVF9S RUFEX0VORCAgICAgMHgwOQ0KPiArI2RlZmluZSBJUE1JX1NTSUZfU01CVVNfQ01EX01VTFRJX1BB UlRfUkVBRF9SRVRSWSAgIDB4MEENCj4gKw0KPiArLy8vDQo+ICsvLy8gRGVmaW5pdGlvbnMgZm9y IE11bHRpLVBhcnQgUmVhZCBUcmFuc2FjdGlvbnMNCj4gKy8vLyBTZWN0aW9uIDEyLjUNCj4gKy8v Lw0KPiArI2RlZmluZSBJUE1JX1NTSUZfTVVMVElfUEFSVF9SRUFEX1NUQVJUX1NJWkUgICAgICAw eDFFDQo+ICsjZGVmaW5lIElQTUlfU1NJRl9NVUxUSV9QQVJUX1JFQURfU1RBUlRfUEFUVEVSTjEg IDB4MDANCj4gKyNkZWZpbmUgSVBNSV9TU0lGX01VTFRJX1BBUlRfUkVBRF9TVEFSVF9QQVRURVJO MiAgMHgwMQ0KPiArI2RlZmluZSBJUE1JX1NTSUZfTVVMVElfUEFSVF9SRUFEX0VORF9QQVRURVJO ICAgICAweEZGDQo+ICsNCj4gKy8vLw0KPiArLy8vIElQTUkgU1NJRiBtYXhpbXVtIG1lc3NhZ2Ug c2l6ZQ0KPiArLy8vDQo+ICsjZGVmaW5lIElQTUlfU1NJRl9JTlBVVF9NRVNTQUdFX1NJWkVfTUFY ICAgMHhGRg0KPiArI2RlZmluZSBJUE1JX1NTSUZfT1VUUFVUX01FU1NBR0VfU0laRV9NQVggIDB4 RkYNCj4gKw0KPiArLy8vDQo+ICsvLy8gSVBNSSBTTUJ1cyBzeXN0ZW0gaW50ZXJmYWNlIG1heGlt dW0gcGFja2V0IHNpemUgaW4gYnl0ZQ0KPiArLy8vDQo+ICsjZGVmaW5lIElQTUlfU1NJRl9NQVhJ TVVNX1BBQ0tFVF9TSVpFX0lOX0JZVEVTICAweDIwDQo+ICsNCj4gK3R5cGVkZWYgZW51bSB7DQo+ ICsgIElwbWlTc2lmUGFja2V0U3RhcnQgPSAwLA0KPiArICBJcG1pU3NpZlBhY2tldE1pZGRsZSwN Cj4gKyAgSXBtaVNzaWZQYWNrZXRFbmQsDQo+ICsgIElwbWlTc2lmUGFja2V0U2luZ2xlLA0KPiAr ICBJcG1pU3NpZlBhY2tldE1heA0KPiArfSBJUE1JX1NTSUZfUEFDS0VUX0FUVFJJQlVURTsNCj4g Kw0KPiArI3ByYWdtYSBwYWNrICgxKQ0KPiArLy8vDQo+ICsvLy8gSVBNSSBTU0lGIEludGVyZmFj ZSBSZXF1ZXN0IEZvcm1hdA0KPiArLy8vIFNlY3Rpb24gMTIuMiBhbmQgMTIuMw0KPiArLy8vDQo+ ICt0eXBlZGVmIHN0cnVjdCB7DQo+ICsgIFVJTlQ4ICAgIE5ldEZ1bmM7DQo+ICsgIFVJTlQ4ICAg IENvbW1hbmQ7DQo+ICt9IElQTUlfU1NJRl9SRVFVRVNUX0hFQURFUjsNCj4gKw0KPiArLy8vDQo+ ICsvLy8gSVBNSSBTU0lGIEludGVyZmFjZSBSZXNwb25zZSBGb3JtYXQNCj4gKy8vLyBTZWN0aW9u IDEyLjQgYW5kIDEyLjUNCj4gKy8vLw0KPiArdHlwZWRlZiBzdHJ1Y3Qgew0KPiArICBVSU5UOCAg ICBTdGFydFBhdHRlcm5bMl07DQo+ICsgIFVJTlQ4ICAgIE5ldEZ1bmM7DQo+ICsgIFVJTlQ4ICAg IENvbW1hbmQ7DQo+ICt9IElQTUlfU1NJRl9SRVNQT05TRV9QQUNLRVRfU1RBUlQ7DQo+ICsNCj4g K3R5cGVkZWYgc3RydWN0IHsNCj4gKyAgVUlOVDggICAgQmxvY2tOdW1iZXI7DQo+ICt9IElQTUlf U1NJRl9SRVNQT05TRV9QQUNLRVRfTUlERExFOw0KPiArDQo+ICt0eXBlZGVmIHN0cnVjdCB7DQo+ ICsgIFVJTlQ4ICAgIEVuZFBhdHRlcm47DQo+ICt9IElQTUlfU1NJRl9SRVNQT05TRV9QQUNLRVRf RU5EOw0KPiArDQo+ICt0eXBlZGVmIHN0cnVjdCB7DQo+ICsgIFVJTlQ4ICAgIE5ldEZ1bmM7DQo+ ICsgIFVJTlQ4ICAgIENvbW1hbmQ7DQo+ICt9IElQTUlfU1NJRl9SRVNQT05TRV9TSU5HTEVfUEFD S0VUOw0KPiArDQo+ICsjcHJhZ21hIHBhY2sgKCkNCj4gKw0KPiArI2VuZGlmIC8qIElQTUlfU1NJ Rl9IXyAqLw0KPiAtLQ0KPiAyLjQwLjANCg0KDQoNCg== --_000_DM5PR0102MB3336A4C0D77316C00EAFEB60EC6B9DM5PR0102MB3336_ Content-Type: text/html; charset="gb2312" Content-Transfer-Encoding: quoted-printable
Hi Gao,

Thanks for your feedback. I will separate it in v2.

Thanks,
Tinh

From: gaoliming <ga= oliming@byosoft.com.cn>
Sent: Friday, April 28, 2023 12:17 PM
To: Tinh Nguyen OS <tinhnguyen@os.amperecomputing.com>; devel@= edk2.groups.io <devel@edk2.groups.io>
Cc: Open Source Submission <patches@amperecomputing.com>; mich= ael.d.kinney@intel.com <michael.d.kinney@intel.com>; zhiguang.liu@int= el.com <zhiguang.liu@intel.com>; abner.chang@amd.com <abner.chang@= amd.com>
Subject: =BB=D8=B8=B4: [PATCH 1/2] MdePkg/IndustryStandard: Adds def= initions for IPMI SSIF
 
Tinh:
  I suggest to separate this patch. The header file follows the indust= ry
standard. New PCDs in DEC are for EDK2 implementation. They are different changes. Please separate them.

Thanks
Liming
> -----=D3=CA=BC=FE=D4=AD=BC=FE-----
> =B7=A2=BC=FE=C8=CB: Tinh Nguyen <tinhnguyen@os.amperecomputing.com&= gt;
> =B7=A2=CB=CD=CA=B1=BC=E4: 2023=C4=EA4=D4=C228=C8=D5 12:00
> =CA=D5=BC=FE=C8=CB: devel@edk2.groups.io
> =B3=AD=CB=CD: patches@amperecomputing.com; michael.d.kinney@intel.com;=
> gaoliming@byosoft.com.cn; zhiguang.liu@intel.com; abner.chang@amd.com;=
> Tinh Nguyen <tinhnguyen@os.amperecomputing.com>
> =D6=F7=CC=E2: [PATCH 1/2] MdePkg/IndustryStandard: Adds definitions fo= r IPMI SSIF
>
> Specification reference:
> https://www.intel.com/content/www/us/en/products/docs/servers/ipmi/ip > mi-second-gen-interface-spec-v2-rev1-1.html
>
> Signed-off-by: Tinh Nguyen <tinhnguyen@os.amperecomputing.com> > ---
>  MdePkg/MdePkg.dec        = ;            &n= bsp;     | 26 ++++++
>  MdePkg/Include/IndustryStandard/IpmiSsif.h | 98 ++++++++++++++++= ++++
>  2 files changed, 124 insertions(+)
>
> diff --git a/MdePkg/MdePkg.dec b/MdePkg/MdePkg.dec
> index 7488ccda7a00..518e4200e9af 100644
> --- a/MdePkg/MdePkg.dec
> +++ b/MdePkg/MdePkg.dec
> @@ -10,6 +10,7 @@
>  # Copyright (c) 2022, Loongson Technology Corporation Limited. A= ll rights
> reserved.<BR>
>  # Copyright (c) 2021 - 2022, Arm Limited. All rights reserved.&l= t;BR>
>  # Copyright (C) 2023 Advanced Micro Devices, Inc. All rights
reserved.<BR>
> +# Copyright (c) 2023, Ampere Computing LLC. All rights reserved.<B= R>
>  #
>  # SPDX-License-Identifier: BSD-2-Clause-Patent
>  #
> @@ -2353,6 +2354,31 @@ [PcdsFixedAtBuild,PcdsPatchableInModule]
>    # @Prompt IPMI KCS Interface I/O Base Address
>
> gEfiMdePkgTokenSpaceGuid.PcdIpmiKcsIoBaseAddress|0xca2|UINT16|0x000 > 00031
>
> +  ## This is SMBus slave address for the SSIF to the BMC.
> +  #  The recommended value defined by IPMI specification is= 0x20 (section
> 12.12).
> +  # @Prompt IPMI SSIF SMBus slave address
> +
> gEfiMdePkgTokenSpaceGuid.PcdIpmiSmbusSlaveAddr|0x20|UINT8|0x000000
> 32
> +
> +  ## This is the maximum number of IPMI SSIF request retries. > +  #  The IPMI specification specified min value is 5 (secti= on 12.17).
> +  # @Prompt Number of IPMI SSIF request retries.
> +
> gEfiMdePkgTokenSpaceGuid.PcdIpmiSsifRequestRetryCount|0x05|UINT8|0x0 > 0000033
> +
> +  ## This is the required interval for each IPMI request retry.<= br> > +  #  The IPMI specification specified a time range of 60ms = to 250ms
> (section 12.17).
> +  #  The default setting is min.
> +  # @Prompt Time between IPMI SSIF request retries.
> +
> gEfiMdePkgTokenSpaceGuid.PcdIpmiSsifRequestRetryInterval|60000|UINT32<= br> > |0x00000034
> +
> +  ## This value is the maximum retries of an IPMI SSIF response<= br> > +  # @Prompt Number of IPMI SSIF response retries.
> +
> gEfiMdePkgTokenSpaceGuid.PcdIpmiSsifResponseRetryCount|250|UINT8|0x0 > 0000035
> +
> +  ## This is the required interval for each IPMI response retry.=
> +  #  The IPMI specification specified min value is 60ms (se= ction 12.17).
> +  # @Prompt Time-out for a response, internal
> +
> gEfiMdePkgTokenSpaceGuid.PcdIpmiSsifResponseRetryInterval|60000|UINT3<= br> > 2|0x00000036
> +
>  [PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynam= icEx]
>    ## This value is used to set the base address of PCI= express hierarchy.
>    # @Prompt PCI Express Base Address.
> diff --git a/MdePkg/Include/IndustryStandard/IpmiSsif.h
> b/MdePkg/Include/IndustryStandard/IpmiSsif.h
> new file mode 100644
> index 000000000000..4a97438109a9
> --- /dev/null
> +++ b/MdePkg/Include/IndustryStandard/IpmiSsif.h
> @@ -0,0 +1,98 @@
> +/** @file
> +  IPMI SSIF Definitions
> +
> +  Copyright (c) 2023, Ampere Computing LLC. All rights reserved.= <BR>
> +  SPDX-License-Identifier: BSD-2-Clause-Patent
> +
> +  @par Revision Reference:
> +    - IPMI Specification
> +      Version 2.0, Rev. 1.1
> +
> +
> https://www.intel.com/content/www/us/en/products/docs/servers/ipmi/ip > mi-second-gen-interface-spec-v2-rev1-1.html
> +**/
> +
> +#ifndef IPMI_SSIF_H_
> +#define  IPMI_SSIF_H_
> +
> +///
> +/// Definitions for SMBUS Commands for SSIF
> +/// Table 12 - Summary of SMBUS Commands for SSIF
> +///
> +
> +// Write block
> +#define IPMI_SSIF_SMBUS_CMD_SINGLE_PART_WRITE    =     0x02
> +#define IPMI_SSIF_SMBUS_CMD_MULTI_PART_WRITE_START   0x06 > +#define IPMI_SSIF_SMBUS_CMD_MULTI_PART_WRITE_MIDDLE  0x07
> +#define IPMI_SSIF_SMBUS_CMD_MULTI_PART_WRITE_END   &nb= sp; 0x08
> +
> +// Read block
> +#define IPMI_SSIF_SMBUS_CMD_SINGLE_PART_READ    &= nbsp;   0x03
> +#define IPMI_SSIF_SMBUS_CMD_MULTI_PART_READ_START   0x03 > +#define IPMI_SSIF_SMBUS_CMD_MULTI_PART_READ_MIDDLE  0x09
> +#define IPMI_SSIF_SMBUS_CMD_MULTI_PART_READ_END   &nbs= p; 0x09
> +#define IPMI_SSIF_SMBUS_CMD_MULTI_PART_READ_RETRY   0x0A > +
> +///
> +/// Definitions for Multi-Part Read Transactions
> +/// Section 12.5
> +///
> +#define IPMI_SSIF_MULTI_PART_READ_START_SIZE    &= nbsp; 0x1E
> +#define IPMI_SSIF_MULTI_PART_READ_START_PATTERN1  0x00
> +#define IPMI_SSIF_MULTI_PART_READ_START_PATTERN2  0x01
> +#define IPMI_SSIF_MULTI_PART_READ_END_PATTERN    = 0xFF
> +
> +///
> +/// IPMI SSIF maximum message size
> +///
> +#define IPMI_SSIF_INPUT_MESSAGE_SIZE_MAX   0xFF
> +#define IPMI_SSIF_OUTPUT_MESSAGE_SIZE_MAX  0xFF
> +
> +///
> +/// IPMI SMBus system interface maximum packet size in byte
> +///
> +#define IPMI_SSIF_MAXIMUM_PACKET_SIZE_IN_BYTES  0x20
> +
> +typedef enum {
> +  IpmiSsifPacketStart =3D 0,
> +  IpmiSsifPacketMiddle,
> +  IpmiSsifPacketEnd,
> +  IpmiSsifPacketSingle,
> +  IpmiSsifPacketMax
> +} IPMI_SSIF_PACKET_ATTRIBUTE;
> +
> +#pragma pack (1)
> +///
> +/// IPMI SSIF Interface Request Format
> +/// Section 12.2 and 12.3
> +///
> +typedef struct {
> +  UINT8    NetFunc;
> +  UINT8    Command;
> +} IPMI_SSIF_REQUEST_HEADER;
> +
> +///
> +/// IPMI SSIF Interface Response Format
> +/// Section 12.4 and 12.5
> +///
> +typedef struct {
> +  UINT8    StartPattern[2];
> +  UINT8    NetFunc;
> +  UINT8    Command;
> +} IPMI_SSIF_RESPONSE_PACKET_START;
> +
> +typedef struct {
> +  UINT8    BlockNumber;
> +} IPMI_SSIF_RESPONSE_PACKET_MIDDLE;
> +
> +typedef struct {
> +  UINT8    EndPattern;
> +} IPMI_SSIF_RESPONSE_PACKET_END;
> +
> +typedef struct {
> +  UINT8    NetFunc;
> +  UINT8    Command;
> +} IPMI_SSIF_RESPONSE_SINGLE_PACKET;
> +
> +#pragma pack ()
> +
> +#endif /* IPMI_SSIF_H_ */
> --
> 2.40.0



--_000_DM5PR0102MB3336A4C0D77316C00EAFEB60EC6B9DM5PR0102MB3336_--