From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: None (no SPF record) identity=mailfrom; client-ip=15.241.140.73; helo=g4t3427.houston.hpe.com; envelope-from=derek.lin2@hpe.com; receiver=edk2-devel@lists.01.org Received: from g4t3427.houston.hpe.com (g4t3427.houston.hpe.com [15.241.140.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id ECE6D20955F19 for ; Sun, 25 Feb 2018 18:26:39 -0800 (PST) Received: from G1W8106.americas.hpqcorp.net (g1w8106.austin.hp.com [16.193.72.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by g4t3427.houston.hpe.com (Postfix) with ESMTPS id 4E1846A for ; Mon, 26 Feb 2018 02:32:43 +0000 (UTC) Received: from G9W8675.americas.hpqcorp.net (16.220.49.22) by G1W8106.americas.hpqcorp.net (16.193.72.61) with Microsoft SMTP Server (TLS) id 15.0.1178.4; Mon, 26 Feb 2018 02:32:37 +0000 Received: from G4W10205.americas.hpqcorp.net (2002:10cf:520f::10cf:520f) by G9W8675.americas.hpqcorp.net (2002:10dc:3116::10dc:3116) with Microsoft SMTP Server (TLS) id 15.0.1178.4; Mon, 26 Feb 2018 02:32:37 +0000 Received: from NAM03-CO1-obe.outbound.protection.outlook.com (15.241.52.10) by G4W10205.americas.hpqcorp.net (16.207.82.15) with Microsoft SMTP Server (TLS) id 15.0.1178.4 via Frontend Transport; Mon, 26 Feb 2018 02:32:36 +0000 Received: from TU4PR8401MB1199.NAMPRD84.PROD.OUTLOOK.COM (10.169.48.149) by TU4PR8401MB0701.NAMPRD84.PROD.OUTLOOK.COM (10.169.45.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.527.15; Mon, 26 Feb 2018 02:32:34 +0000 Received: from TU4PR8401MB1199.NAMPRD84.PROD.OUTLOOK.COM ([fe80::9937:9c33:86e1:2704]) by TU4PR8401MB1199.NAMPRD84.PROD.OUTLOOK.COM ([fe80::9937:9c33:86e1:2704%14]) with mapi id 15.20.0527.021; Mon, 26 Feb 2018 02:32:34 +0000 From: "Lin, Derek (HPS UEFI Dev)" To: "Zhang, Chao B" , "edk2-devel@lists.01.org" CC: "Yao, Jiewen" , "Zeng, Star" Thread-Topic: TPM 2.0 Manufacutre ID wrong byte order Thread-Index: AdOrz7VEcbbsZcIoT4ukA4PvAGJIIQAgZLyAAApqgIAALo1P0ABdGdNQ Date: Mon, 26 Feb 2018 02:32:34 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=derek.lin2@hpe.com; x-originating-ip: [16.242.247.133] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; TU4PR8401MB0701; 7:l0B/K1ZT2pj6Xj7aar4fBaDlUD5aKIFPihItZn0URCBId/QMA91LTZ7JmCWIhHhRRMOmqVOw5kqQzkWG5b0ligwKVtgEM/sY10nHWpDiw2SQDXvBF8kq/GtEJMzHduuMzVsHgPzr+UL/Fs73aPTLPgOnGGUOYellO7XA5+x00h8cZrpP2Myvtq2pCQnFxNT+9cqlnqBmCR9yKBk5lA0QZe0ZUpqU+fIfRKxPAg4/KlMjqqQBlxwzp+kkvdIXBQ0l x-ms-exchange-antispam-srfa-diagnostics: SSOS; x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 56f3b818-f608-48af-1e86-08d57cc131a6 x-microsoft-antispam: UriScan:(222181515654134); BCL:0; PCL:0; RULEID:(7020095)(4652020)(8989060)(4534165)(4627221)(201703031133081)(201702281549075)(8990040)(48565401081)(5600026)(4604075)(3008032)(2017052603307)(7153060)(7193020); SRVR:TU4PR8401MB0701; x-ms-traffictypediagnostic: TU4PR8401MB0701: x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(227479698468861)(166708455590820)(162533806227266)(222181515654134)(228905959029699); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040501)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3231220)(944501161)(52105095)(3002001)(6055026)(6041288)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123564045)(20161123558120)(6072148)(201708071742011); SRVR:TU4PR8401MB0701; BCL:0; PCL:0; RULEID:; SRVR:TU4PR8401MB0701; x-forefront-prvs: 05954A7C45 x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(39380400002)(396003)(39860400002)(366004)(376002)(346002)(199004)(189003)(13464003)(345774005)(110136005)(7696005)(54906003)(76176011)(6436002)(316002)(106356001)(3846002)(8936002)(26005)(81156014)(81166006)(8676002)(2900100001)(5660300001)(186003)(6506007)(25786009)(74316002)(305945005)(102836004)(6116002)(4326008)(59450400001)(14454004)(3280700002)(53936002)(966005)(229853002)(97736004)(2950100002)(5250100002)(9686003)(7736002)(66066001)(53546011)(86362001)(68736007)(6246003)(55016002)(93886005)(105586002)(2906002)(3660700001)(99286004)(6306002)(478600001)(2501003)(33656002)(19627235001); DIR:OUT; SFP:1102; SCL:1; SRVR:TU4PR8401MB0701; H:TU4PR8401MB1199.NAMPRD84.PROD.OUTLOOK.COM; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; received-spf: None (protection.outlook.com: hpe.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: jJX/+HeoHpg4xK1wFuELPBln989stXgVuUpMXduFIfGOvP+mzVt54+8oMSlE8arVmen/snUo3+2WAe419sdACwKejuYS1QS8uNyPfALYzWE/sBoYPlKUMbt3midZVnXpAM9BG+2wTH5kuYdthkjsihu1V3Hy7RliWJjybJILSb8= spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 56f3b818-f608-48af-1e86-08d57cc131a6 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Feb 2018 02:32:34.5827 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-Transport-CrossTenantHeadersStamped: TU4PR8401MB0701 X-OriginatorOrg: hpe.com Subject: Re: TPM 2.0 Manufacutre ID wrong byte order X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 26 Feb 2018 02:26:40 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable I agree. Add comments to make this clear seems good. It's good enough for me. Thanks, Derek -----Original Message----- From: Zhang, Chao B [mailto:chao.b.zhang@intel.com]=20 Sent: Saturday, February 24, 2018 2:26 PM To: Lin, Derek (HPS UEFI Dev) ; edk2-devel@lists.01.org Cc: Yao, Jiewen ; Zeng, Star Subject: RE: TPM 2.0 Manufacutre ID wrong byte order Derek: Thank you for the info. TPM Library spec 1.38. Page 342 defines each pro= perty to be a 32-bit value. Endian conversion only applies to those 32-bit = value that are interpreted as 16-bit, 32-bit data outside.=20 It doesn't apply to the PT_MANFACTURER case. We can add comments to make th= is interface clearer. But I think current implementation is good from spec = point of view. =20 =20 -----Original Message----- From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Lin,= Derek (HPS UEFI Dev) Sent: Friday, February 23, 2018 4:08 PM To: Zhang, Chao B ; edk2-devel@lists.01.org Cc: Yao, Jiewen ; Zeng, Star Subject: Re: [edk2] TPM 2.0 Manufacutre ID wrong byte order Hi Chao B, I think you are right, the Manufacture ID is a byte array. The order in ACP= I HID is correct. But Tpm2GetCapabilityManufactureID return a UINT32 value. EFI_STATUS EFIAPI Tpm2GetCapabilityManufactureID ( OUT UINT32 *ManufactureId ) This is confused . When the caller use ManufactureId as UINT32, the byte or= der is confused. For example in Tcg2Dxe.c, it print: Tpm2GetCapabilityManufactureID - 204D5453 Which should be "53544D20" in the case. Status =3D Tpm2GetCapabilityManufactureID (&mTcgDxeData.BsCap.Manufacture= rID); if (EFI_ERROR (Status)) { DEBUG ((EFI_D_ERROR, "Tpm2GetCapabilityManufactureID fail!\n")); } else { DEBUG ((EFI_D_INFO, "Tpm2GetCapabilityManufactureID - %08x\n", mTcgDxeD= ata.BsCap.ManufacturerID)); } How about changing the returning value to a 4 bytes array? Thanks, Derek From: Zhang, Chao B [mailto:chao.b.zhang@intel.com] Sent: Friday, February 23, 2018 11:03 AM To: Lin, Derek (HPS UEFI Dev) ; edk2-devel@lists.01.org Cc: Yao, Jiewen ; Zeng, Star Subject: RE: TPM 2.0 Manufacutre ID wrong byte order Hi Derek: Can you specify the "reversed" ManufactureId issue? What did you get f= rom this interface? The implementation follows Vendor ID registry spec. The vendor ID is octet = array. There is no endian issue here. We haven't seen any disorder before. From: Lin, Derek (HPS UEFI Dev) [mailto:derek.lin2@hpe.com] Sent: Thursday, February 22, 2018 7:25 PM To: edk2-devel@lists.01.org; Zhang, Chao B = > Cc: Yao, Jiewen >; Zeng, = Star > Subject: TPM 2.0 Manufacutre ID wrong byte order Hi TPM expert, The line in https://github.com/tianocore/edk2/commit/73126ac2bd9804632255b2= fddd4d7633537c9620#diff-76abe1c1ebf05982ed72eaf56f489029R192 change the byt= e order of Manufacture ID in Tpm2GetCapabilityManufactureID (). I see it return "reversed" ManufactureId for two TPM vendor's module. Also, all other Capability data in Tpm2Capability.c use SwapBytes32 since T= PM is big-endian, which seems correct. Can you check this and confirm? Thanks, Derek _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel