From nobody Mon Apr 29 04:10:34 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1591847825; cv=none; d=zohomail.com; s=zohoarc; b=OP8iPX/cziAtW33N1R0Cc7PO9ucNLWT55pbCKlek+d0K7YbYWHAMBk9KltlDZXlSxq0NMeIPR+a3tmZ4z25ctrgt9cFSIZ9flq/MEHV7XLWd6z928yBMkxhJcm+LvulAUioJedF9WSKj0YaUCmKxV6nG1KsyRlhj8WzYXWtQO1o= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1591847825; h=Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=OU+nObQIvnt6s+yMYrarv+yXbrDKSv9hdHPFd/1lbK0=; b=LifN10fEQCe9jIW45WeTZ+UbZQKPdc/us5LzM9/PXjGT/2A0HdiU/iooReDOYODO84eBUMU75HoFEU2tyz7N6oCS6TXrgdgfoEXSRKsy7ocJ0wx8YsWSYOBYMnAeaxuZgA653MaMLqn7kaZGuwBVwOKil9SynVRg0FLUHBnpaVw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1591847825134236.84653196810996; Wed, 10 Jun 2020 20:57:05 -0700 (PDT) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1jjEKS-0002Qt-7V; Thu, 11 Jun 2020 03:56:36 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1jjEKQ-0002Ql-1N for xen-devel@lists.xenproject.org; Thu, 11 Jun 2020 03:56:34 +0000 Received: from mail-qt1-x843.google.com (unknown [2607:f8b0:4864:20::843]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id 8a34553a-ab97-11ea-bca7-bc764e2007e4; Thu, 11 Jun 2020 03:56:33 +0000 (UTC) Received: by mail-qt1-x843.google.com with SMTP id g18so3604126qtu.13 for ; Wed, 10 Jun 2020 20:56:33 -0700 (PDT) Received: from shine.lan ([2001:470:8:67e:dd4d:2b5c:f471:f332]) by smtp.gmail.com with ESMTPSA id r77sm1281886qke.6.2020.06.10.20.56.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 10 Jun 2020 20:56:32 -0700 (PDT) X-Inumbo-ID: 8a34553a-ab97-11ea-bca7-bc764e2007e4 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=OU+nObQIvnt6s+yMYrarv+yXbrDKSv9hdHPFd/1lbK0=; b=samdq/KNhZ5i1J43ZZi7oKVjiOkQmBKpTdoAvI2HjMqAJ7JWBanrjmbzwYvvGJbtY1 2fOqudRCcB0NLEPnXTXgYNekmI5WLkX3xO/tQDkEI5XUd4IaGooD42XslZgCj8H0grnD 7Jzcn8NG7R93cot7pmJ+TdMO5dEXXOMgvX9r5+1sxasO1TkMMjyeRVNx65hS4eAq/26x RLSzcgRTVgjKytWyGZ2P1y4e/1jJEErimzdI7G/L+mdiafImruaat3qgRZqIQOqaaIA3 htTP+Sz8iTSgoKSMQRyS807T78lR08ZS8UN7GS0EdPagwuZtlk1eEAE8+QMWQC9wj95r BRfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=OU+nObQIvnt6s+yMYrarv+yXbrDKSv9hdHPFd/1lbK0=; b=DwuV2asfdVrXPD8qZh5obfILFLCGuAZhKru2VNWE+FDjgpGHp3kdGYIsH0ByQQMblX 0ddItiXq5EfBtxnBpyEGO6QPzZyXwiOMPOzexyr6pEozItaO28KiNtM8zYDdtK6F69kj wkN45FIXl4FkEm8VkDSphX/g2ZkNCWr62BhvNNQerF25KCePRvwFloq5J37fVlqSRQvo EiHbFKBoZoP1ZsQh/W7v0qlKDK2P3yp2D4/rJecsN9a/fgSc1APLGr3bNDqlKcXKhbah wKlsdl1t9i+D+pG18HQcFIb1yBYl1KDaOj/6R22Uvvwxvp5ppRZEh9W/8086TV9cxqUa embQ== X-Gm-Message-State: AOAM5311yjwhFBx9SxKrAOfypdBQlpSzqWo2T7eu4zUEkKBWRDSWsTms iZ9Zl68VJusnGD1sRui9CpLujRk/ X-Google-Smtp-Source: ABdhPJz9OjgoZ50jbFCdOhp5uZWr2reTHpFlhMgYHG0o4i85ef6y14huRzVCWDDmdjoxIabDP0R6cA== X-Received: by 2002:ac8:3808:: with SMTP id q8mr7041438qtb.297.1591847792945; Wed, 10 Jun 2020 20:56:32 -0700 (PDT) From: Jason Andryuk To: xen-devel@lists.xenproject.org Subject: [PATCH] libacpi: Widen TPM detection Date: Wed, 10 Jun 2020 23:55:18 -0400 Message-Id: <20200611035518.379297-1-jandryuk@gmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Ian Jackson , Wei Liu , Jan Beulich , Jason Andryuk Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" The hardcoded tpm_signature is too restrictive to detect many TPMs. For instance, it doesn't accept a QEMU emulated TPM (VID 0x1014 DID 0x0001). Make the TPM detection match that in rombios which accepts a wider range. With this change, the TPM's TCPA ACPI table is generated and the guest OS can automatically load the tpm_tis driver. It also allows seabios to detect and use the TPM. However, seabios skips some TPM initialization when running under Xen, so it will not populate any PCRs unless modified to run the initialization under Xen. Signed-off-by: Jason Andryuk Reviewed-by: Andrew Cooper --- tools/libacpi/build.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tools/libacpi/build.c b/tools/libacpi/build.c index fa7d14e090..a61dd5583a 100644 --- a/tools/libacpi/build.c +++ b/tools/libacpi/build.c @@ -351,7 +351,6 @@ static int construct_secondary_tables(struct acpi_ctxt = *ctxt, struct acpi_20_waet *waet; struct acpi_20_tcpa *tcpa; unsigned char *ssdt; - static const uint16_t tis_signature[] =3D {0x0001, 0x0001, 0x0001}; void *lasa; =20 /* MADT. */ @@ -413,9 +412,8 @@ static int construct_secondary_tables(struct acpi_ctxt = *ctxt, =20 /* TPM TCPA and SSDT. */ if ( (config->table_flags & ACPI_HAS_TCPA) && - (config->tis_hdr[0] =3D=3D tis_signature[0]) && - (config->tis_hdr[1] =3D=3D tis_signature[1]) && - (config->tis_hdr[2] =3D=3D tis_signature[2]) ) + (config->tis_hdr[0] !=3D 0 && config->tis_hdr[0] !=3D 0xffff) && + (config->tis_hdr[1] !=3D 0 && config->tis_hdr[1] !=3D 0xffff) ) { ssdt =3D ctxt->mem_ops.alloc(ctxt, sizeof(ssdt_tpm), 16); if (!ssdt) return -1; --=20 2.25.1