Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1379831 > unrolled thread

[PATCH v10 2/5] tpm: Introduce TPM_CHIP_FLAG_VIRTUAL

Started byStefan Berger <stefanb@linux.vnet.ibm.com>
First post2016-04-15 16:00 +0200
Last post2016-04-15 18:50 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH v10 2/5] tpm: Introduce TPM_CHIP_FLAG_VIRTUAL Stefan Berger <stefanb@linux.vnet.ibm.com> - 2016-04-15 16:00 +0200
    Re: [PATCH v10 2/5] tpm: Introduce TPM_CHIP_FLAG_VIRTUAL Jason Gunthorpe <jgunthorpe@obsidianresearch.com> - 2016-04-15 18:50 +0200

#1379831 — [PATCH v10 2/5] tpm: Introduce TPM_CHIP_FLAG_VIRTUAL

FromStefan Berger <stefanb@linux.vnet.ibm.com>
Date2016-04-15 16:00 +0200
Subject[PATCH v10 2/5] tpm: Introduce TPM_CHIP_FLAG_VIRTUAL
Message-ID<rocrU-3PD-17@gated-at.bofh.it>
Introduce TPM_CHIP_FLAG_VIRTUAL to be used when the chip device has no
parent device.

Prevent sysfs entries requiring a parent device from being created.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
---
 drivers/char/tpm/tpm-chip.c | 7 +++++--
 drivers/char/tpm/tpm.h      | 1 +
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c
index 7e2c9cf..a12db8e 100644
--- a/drivers/char/tpm/tpm-chip.c
+++ b/drivers/char/tpm/tpm-chip.c
@@ -181,6 +181,9 @@ struct tpm_chip *tpm_chip_alloc(struct device *dev,
 	if (rc)
 		goto out;
 
+	if (!dev)
+		chip->flags |= TPM_CHIP_FLAG_VIRTUAL;
+
 	cdev_init(&chip->cdev, &tpm_fops);
 	chip->cdev.owner = THIS_MODULE;
 	chip->cdev.kobj.parent = &chip->dev.kobj;
@@ -297,7 +300,7 @@ static void tpm_del_legacy_sysfs(struct tpm_chip *chip)
 {
 	struct attribute **i;
 
-	if (chip->flags & TPM_CHIP_FLAG_TPM2)
+	if (chip->flags & (TPM_CHIP_FLAG_TPM2 | TPM_CHIP_FLAG_VIRTUAL))
 		return;
 
 	sysfs_remove_link(&chip->dev.parent->kobj, "ppi");
@@ -315,7 +318,7 @@ static int tpm_add_legacy_sysfs(struct tpm_chip *chip)
 	struct attribute **i;
 	int rc;
 
-	if (chip->flags & TPM_CHIP_FLAG_TPM2)
+	if (chip->flags & (TPM_CHIP_FLAG_TPM2 | TPM_CHIP_FLAG_VIRTUAL))
 		return 0;
 
 	rc = __compat_only_sysfs_link_entry_to_kobj(
diff --git a/drivers/char/tpm/tpm.h b/drivers/char/tpm/tpm.h
index 508e8e0..ff4e53c 100644
--- a/drivers/char/tpm/tpm.h
+++ b/drivers/char/tpm/tpm.h
@@ -138,6 +138,7 @@ enum tpm_chip_flags {
 	TPM_CHIP_FLAG_REGISTERED	= BIT(0),
 	TPM_CHIP_FLAG_TPM2		= BIT(1),
 	TPM_CHIP_FLAG_IRQ		= BIT(2),
+	TPM_CHIP_FLAG_VIRTUAL		= BIT(3),
 };
 
 struct tpm_chip {
-- 
2.4.3

[toc] | [next] | [standalone]


#1380002

FromJason Gunthorpe <jgunthorpe@obsidianresearch.com>
Date2016-04-15 18:50 +0200
Message-ID<rof6p-63Q-9@gated-at.bofh.it>
In reply to#1379831
On Fri, Apr 15, 2016 at 09:50:13AM -0400, Stefan Berger wrote:
> Introduce TPM_CHIP_FLAG_VIRTUAL to be used when the chip device has no
> parent device.
> 
> Prevent sysfs entries requiring a parent device from being created.
> 
> Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
>  drivers/char/tpm/tpm-chip.c | 7 +++++--
>  drivers/char/tpm/tpm.h      | 1 +
>  2 files changed, 6 insertions(+), 2 deletions(-)

Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>

Jason

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web