From: Jarkko Sakkinen <jarkko.sakkinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
To: Stefan Berger
<stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
Cc: tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: Re: [PATCH v3 02/11] tpm: Get rid of chip->pdev
Date: Mon, 22 Feb 2016 21:25:17 +0200 [thread overview]
Message-ID: <20160222192517.GB32667@intel.com> (raw)
In-Reply-To: <1455885728-10315-3-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
On Fri, Feb 19, 2016 at 07:41:59AM -0500, Stefan Berger wrote:
> From: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
>
> This is a hold over from before the struct device conversion.
>
> - All prints should be using &chip->dev, which is the Linux
> standard. This changes prints to use tpm0 as the device name,
> not the PnP/etc ID.
> - The few places involving sysfs/modules that really do need the
> parent just use chip->dev.parent instead
> - We no longer need to get_device(pdev) in any places since it is no
> longer used by any of the code. The kref on the parent is held
> by the device core during device_add and dropped in device_del
>
> Signed-off-by: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
There was couple of places where I would adjust identation but that's
not really a major issue (and it passes checkpatch.pl anyway).
> ---
> drivers/char/tpm/tpm-chip.c | 15 ++++++---------
> drivers/char/tpm/tpm-dev.c | 4 +---
> drivers/char/tpm/tpm-interface.c | 30 ++++++++++++++++--------------
> drivers/char/tpm/tpm-sysfs.c | 6 +++---
> drivers/char/tpm/tpm.h | 3 +--
> drivers/char/tpm/tpm2-cmd.c | 8 ++++----
> drivers/char/tpm/tpm_atmel.c | 14 +++++++-------
> drivers/char/tpm/tpm_i2c_atmel.c | 16 ++++++++--------
> drivers/char/tpm/tpm_i2c_infineon.c | 6 +++---
> drivers/char/tpm/tpm_i2c_nuvoton.c | 22 +++++++++++-----------
> drivers/char/tpm/tpm_infineon.c | 22 +++++++++++-----------
> drivers/char/tpm/tpm_nsc.c | 20 ++++++++++----------
> drivers/char/tpm/tpm_tis.c | 14 +++++++-------
> 13 files changed, 88 insertions(+), 92 deletions(-)
>
> diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c
> index ab32437..5ed9bed 100644
> --- a/drivers/char/tpm/tpm-chip.c
> +++ b/drivers/char/tpm/tpm-chip.c
> @@ -49,7 +49,7 @@ struct tpm_chip *tpm_chip_find_get(int chip_num)
> if (chip_num != TPM_ANY_NUM && chip_num != pos->dev_num)
> continue;
>
> - if (try_module_get(pos->pdev->driver->owner)) {
> + if (try_module_get(pos->dev.parent->driver->owner)) {
> chip = pos;
> break;
> }
> @@ -113,13 +113,11 @@ struct tpm_chip *tpmm_chip_alloc(struct device *dev,
>
> scnprintf(chip->devname, sizeof(chip->devname), "tpm%d", chip->dev_num);
>
> - chip->pdev = dev;
> -
> dev_set_drvdata(dev, chip);
>
> chip->dev.class = tpm_class;
> chip->dev.release = tpm_dev_release;
> - chip->dev.parent = chip->pdev;
> + chip->dev.parent = dev;
> #ifdef CONFIG_ACPI
> chip->dev.groups = chip->groups;
> #endif
> @@ -134,7 +132,7 @@ struct tpm_chip *tpmm_chip_alloc(struct device *dev,
> device_initialize(&chip->dev);
>
> cdev_init(&chip->cdev, &tpm_fops);
> - chip->cdev.owner = chip->pdev->driver->owner;
> + chip->cdev.owner = dev->driver->owner;
> chip->cdev.kobj.parent = &chip->dev.kobj;
>
> err = devm_add_action(dev, (void (*)(void *)) put_device, &chip->dev);
> @@ -241,9 +239,8 @@ int tpm_chip_register(struct tpm_chip *chip)
> chip->flags |= TPM_CHIP_FLAG_REGISTERED;
>
> if (!(chip->flags & TPM_CHIP_FLAG_TPM2)) {
> - rc = __compat_only_sysfs_link_entry_to_kobj(&chip->pdev->kobj,
> - &chip->dev.kobj,
> - "ppi");
> + rc = __compat_only_sysfs_link_entry_to_kobj(
> + &chip->dev.parent->kobj, &chip->dev.kobj, "ppi");
> if (rc && rc != -ENOENT) {
> tpm_chip_unregister(chip);
> return rc;
> @@ -278,7 +275,7 @@ void tpm_chip_unregister(struct tpm_chip *chip)
> synchronize_rcu();
>
> if (!(chip->flags & TPM_CHIP_FLAG_TPM2))
> - sysfs_remove_link(&chip->pdev->kobj, "ppi");
> + sysfs_remove_link(&chip->dev.parent->kobj, "ppi");
>
> tpm1_chip_unregister(chip);
> tpm_dev_del_device(chip);
> diff --git a/drivers/char/tpm/tpm-dev.c b/drivers/char/tpm/tpm-dev.c
> index de0337e..4009765 100644
> --- a/drivers/char/tpm/tpm-dev.c
> +++ b/drivers/char/tpm/tpm-dev.c
> @@ -61,7 +61,7 @@ static int tpm_open(struct inode *inode, struct file *file)
> * by the check of is_open variable, which is protected
> * by driver_lock. */
> if (test_and_set_bit(0, &chip->is_open)) {
> - dev_dbg(chip->pdev, "Another process owns this TPM\n");
> + dev_dbg(&chip->dev, "Another process owns this TPM\n");
> return -EBUSY;
> }
>
> @@ -79,7 +79,6 @@ static int tpm_open(struct inode *inode, struct file *file)
> INIT_WORK(&priv->work, timeout_work);
>
> file->private_data = priv;
> - get_device(chip->pdev);
> return 0;
> }
>
> @@ -166,7 +165,6 @@ static int tpm_release(struct inode *inode, struct file *file)
> file->private_data = NULL;
> atomic_set(&priv->data_pending, 0);
> clear_bit(0, &priv->chip->is_open);
> - put_device(priv->chip->pdev);
> kfree(priv);
> return 0;
> }
> diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c
> index c50637d..65dc7fd 100644
> --- a/drivers/char/tpm/tpm-interface.c
> +++ b/drivers/char/tpm/tpm-interface.c
> @@ -343,7 +343,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, const char *buf,
> if (count == 0)
> return -ENODATA;
> if (count > bufsiz) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "invalid count value %x %zx\n", count, bufsiz);
> return -E2BIG;
> }
> @@ -352,7 +352,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, const char *buf,
>
> rc = chip->ops->send(chip, (u8 *) buf, count);
> if (rc < 0) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "tpm_transmit: tpm_send: error %zd\n", rc);
> goto out;
> }
> @@ -371,7 +371,7 @@ ssize_t tpm_transmit(struct tpm_chip *chip, const char *buf,
> goto out_recv;
>
> if (chip->ops->req_canceled(chip, status)) {
> - dev_err(chip->pdev, "Operation Canceled\n");
> + dev_err(&chip->dev, "Operation Canceled\n");
> rc = -ECANCELED;
> goto out;
> }
> @@ -381,14 +381,14 @@ ssize_t tpm_transmit(struct tpm_chip *chip, const char *buf,
> } while (time_before(jiffies, stop));
>
> chip->ops->cancel(chip);
> - dev_err(chip->pdev, "Operation Timed out\n");
> + dev_err(&chip->dev, "Operation Timed out\n");
> rc = -ETIME;
> goto out;
>
> out_recv:
> rc = chip->ops->recv(chip, (u8 *) buf, bufsiz);
> if (rc < 0)
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "tpm_transmit: tpm_recv: error %zd\n", rc);
> out:
> mutex_unlock(&chip->tpm_mutex);
> @@ -414,7 +414,7 @@ ssize_t tpm_transmit_cmd(struct tpm_chip *chip, void *cmd,
>
> err = be32_to_cpu(header->return_code);
> if (err != 0 && desc)
> - dev_err(chip->pdev, "A TPM error (%d) occurred %s\n", err,
> + dev_err(&chip->dev, "A TPM error (%d) occurred %s\n", err,
> desc);
>
> return err;
> @@ -510,7 +510,7 @@ int tpm_get_timeouts(struct tpm_chip *chip)
> if (rc == TPM_ERR_INVALID_POSTINIT) {
> /* The TPM is not started, we are the first to talk to it.
> Execute a startup command. */
> - dev_info(chip->pdev, "Issuing TPM_STARTUP");
> + dev_info(&chip->dev, "Issuing TPM_STARTUP");
> if (tpm_startup(chip, TPM_ST_CLEAR))
> return rc;
>
> @@ -522,7 +522,7 @@ int tpm_get_timeouts(struct tpm_chip *chip)
> NULL);
> }
> if (rc) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "A TPM error (%zd) occurred attempting to determine the timeouts\n",
> rc);
> goto duration;
> @@ -561,7 +561,7 @@ int tpm_get_timeouts(struct tpm_chip *chip)
>
> /* Report adjusted timeouts */
> if (chip->vendor.timeout_adjusted) {
> - dev_info(chip->pdev,
> + dev_info(&chip->dev,
> HW_ERR "Adjusting reported timeouts: A %lu->%luus B %lu->%luus C %lu->%luus D %lu->%luus\n",
> old_timeout[0], new_timeout[0],
> old_timeout[1], new_timeout[1],
> @@ -608,7 +608,7 @@ duration:
> chip->vendor.duration[TPM_MEDIUM] *= 1000;
> chip->vendor.duration[TPM_LONG] *= 1000;
> chip->vendor.duration_adjusted = true;
> - dev_info(chip->pdev, "Adjusting TPM timeout parameters.");
> + dev_info(&chip->dev, "Adjusting TPM timeout parameters.");
> }
> return 0;
> }
> @@ -798,7 +798,9 @@ int tpm_do_selftest(struct tpm_chip *chip)
> * around 300ms while the self test is ongoing, keep trying
> * until the self test duration expires. */
> if (rc == -ETIME) {
> - dev_info(chip->pdev, HW_ERR "TPM command timed out during continue self test");
> + dev_info(
> + &chip->dev, HW_ERR
> + "TPM command timed out during continue self test");
> msleep(delay_msec);
> continue;
> }
> @@ -808,7 +810,7 @@ int tpm_do_selftest(struct tpm_chip *chip)
>
> rc = be32_to_cpu(cmd.header.out.return_code);
> if (rc == TPM_ERR_DISABLED || rc == TPM_ERR_DEACTIVATED) {
> - dev_info(chip->pdev,
> + dev_info(&chip->dev,
> "TPM is disabled/deactivated (0x%X)\n", rc);
> /* TPM is disabled and/or deactivated; driver can
> * proceed and TPM does handle commands for
> @@ -961,10 +963,10 @@ int tpm_pm_suspend(struct device *dev)
> }
>
> if (rc)
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "Error (%d) sending savestate before suspend\n", rc);
> else if (try > 0)
> - dev_warn(chip->pdev, "TPM savestate took %dms\n",
> + dev_warn(&chip->dev, "TPM savestate took %dms\n",
> try * TPM_TIMEOUT_RETRY);
>
> return rc;
> diff --git a/drivers/char/tpm/tpm-sysfs.c b/drivers/char/tpm/tpm-sysfs.c
> index ee66fd4..d93736a 100644
> --- a/drivers/char/tpm/tpm-sysfs.c
> +++ b/drivers/char/tpm/tpm-sysfs.c
> @@ -284,16 +284,16 @@ static const struct attribute_group tpm_dev_group = {
> int tpm_sysfs_add_device(struct tpm_chip *chip)
> {
> int err;
> - err = sysfs_create_group(&chip->pdev->kobj,
> + err = sysfs_create_group(&chip->dev.parent->kobj,
> &tpm_dev_group);
>
> if (err)
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "failed to create sysfs attributes, %d\n", err);
> return err;
> }
>
> void tpm_sysfs_del_device(struct tpm_chip *chip)
> {
> - sysfs_remove_group(&chip->pdev->kobj, &tpm_dev_group);
> + sysfs_remove_group(&chip->dev.parent->kobj, &tpm_dev_group);
> }
> diff --git a/drivers/char/tpm/tpm.h b/drivers/char/tpm/tpm.h
> index a4257a3..1ce6547 100644
> --- a/drivers/char/tpm/tpm.h
> +++ b/drivers/char/tpm/tpm.h
> @@ -171,7 +171,6 @@ enum tpm_chip_flags {
> };
>
> struct tpm_chip {
> - struct device *pdev; /* Device stuff */
> struct device dev;
> struct cdev cdev;
>
> @@ -203,7 +202,7 @@ struct tpm_chip {
>
> static inline void tpm_chip_put(struct tpm_chip *chip)
> {
> - module_put(chip->pdev->driver->owner);
> + module_put(chip->dev.parent->driver->owner);
> }
>
> static inline int tpm_read_index(int base, int index)
> diff --git a/drivers/char/tpm/tpm2-cmd.c b/drivers/char/tpm/tpm2-cmd.c
> index c121304..68508d4 100644
> --- a/drivers/char/tpm/tpm2-cmd.c
> +++ b/drivers/char/tpm/tpm2-cmd.c
> @@ -553,7 +553,7 @@ static void tpm2_flush_context(struct tpm_chip *chip, u32 handle)
>
> rc = tpm_buf_init(&buf, TPM2_ST_NO_SESSIONS, TPM2_CC_FLUSH_CONTEXT);
> if (rc) {
> - dev_warn(chip->pdev, "0x%08x was not flushed, out of memory\n",
> + dev_warn(&chip->dev, "0x%08x was not flushed, out of memory\n",
> handle);
> return;
> }
> @@ -562,7 +562,7 @@ static void tpm2_flush_context(struct tpm_chip *chip, u32 handle)
>
> rc = tpm_transmit_cmd(chip, buf.data, PAGE_SIZE, "flushing context");
> if (rc)
> - dev_warn(chip->pdev, "0x%08x was not flushed, rc=%d\n", handle,
> + dev_warn(&chip->dev, "0x%08x was not flushed, rc=%d\n", handle,
> rc);
>
> tpm_buf_destroy(&buf);
> @@ -724,7 +724,7 @@ void tpm2_shutdown(struct tpm_chip *chip, u16 shutdown_type)
> * except print the error code on a system failure.
> */
> if (rc < 0)
> - dev_warn(chip->pdev, "transmit returned %d while stopping the TPM",
> + dev_warn(&chip->dev, "transmit returned %d while stopping the TPM",
> rc);
> }
> EXPORT_SYMBOL_GPL(tpm2_shutdown);
> @@ -791,7 +791,7 @@ static int tpm2_start_selftest(struct tpm_chip *chip, bool full)
> * immediately. This is a workaround for that.
> */
> if (rc == TPM2_RC_TESTING) {
> - dev_warn(chip->pdev, "Got RC_TESTING, ignoring\n");
> + dev_warn(&chip->dev, "Got RC_TESTING, ignoring\n");
> rc = 0;
> }
>
> diff --git a/drivers/char/tpm/tpm_atmel.c b/drivers/char/tpm/tpm_atmel.c
> index dfadad0..a48a878 100644
> --- a/drivers/char/tpm/tpm_atmel.c
> +++ b/drivers/char/tpm/tpm_atmel.c
> @@ -49,7 +49,7 @@ static int tpm_atml_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> for (i = 0; i < 6; i++) {
> status = ioread8(chip->vendor.iobase + 1);
> if ((status & ATML_STATUS_DATA_AVAIL) == 0) {
> - dev_err(chip->pdev, "error reading header\n");
> + dev_err(&chip->dev, "error reading header\n");
> return -EIO;
> }
> *buf++ = ioread8(chip->vendor.iobase);
> @@ -60,12 +60,12 @@ static int tpm_atml_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> size = be32_to_cpu(*native_size);
>
> if (count < size) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "Recv size(%d) less than available space\n", size);
> for (; i < size; i++) { /* clear the waiting data anyway */
> status = ioread8(chip->vendor.iobase + 1);
> if ((status & ATML_STATUS_DATA_AVAIL) == 0) {
> - dev_err(chip->pdev, "error reading data\n");
> + dev_err(&chip->dev, "error reading data\n");
> return -EIO;
> }
> }
> @@ -76,7 +76,7 @@ static int tpm_atml_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> for (; i < size; i++) {
> status = ioread8(chip->vendor.iobase + 1);
> if ((status & ATML_STATUS_DATA_AVAIL) == 0) {
> - dev_err(chip->pdev, "error reading data\n");
> + dev_err(&chip->dev, "error reading data\n");
> return -EIO;
> }
> *buf++ = ioread8(chip->vendor.iobase);
> @@ -86,7 +86,7 @@ static int tpm_atml_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> status = ioread8(chip->vendor.iobase + 1);
>
> if (status & ATML_STATUS_DATA_AVAIL) {
> - dev_err(chip->pdev, "data available is stuck\n");
> + dev_err(&chip->dev, "data available is stuck\n");
> return -EIO;
> }
>
> @@ -97,9 +97,9 @@ static int tpm_atml_send(struct tpm_chip *chip, u8 *buf, size_t count)
> {
> int i;
>
> - dev_dbg(chip->pdev, "tpm_atml_send:\n");
> + dev_dbg(&chip->dev, "tpm_atml_send:\n");
> for (i = 0; i < count; i++) {
> - dev_dbg(chip->pdev, "%d 0x%x(%d)\n", i, buf[i], buf[i]);
> + dev_dbg(&chip->dev, "%d 0x%x(%d)\n", i, buf[i], buf[i]);
> iowrite8(buf[i], chip->vendor.iobase);
> }
>
> diff --git a/drivers/char/tpm/tpm_i2c_atmel.c b/drivers/char/tpm/tpm_i2c_atmel.c
> index 8dfb88b..dd8f0eb 100644
> --- a/drivers/char/tpm/tpm_i2c_atmel.c
> +++ b/drivers/char/tpm/tpm_i2c_atmel.c
> @@ -52,7 +52,7 @@ struct priv_data {
> static int i2c_atmel_send(struct tpm_chip *chip, u8 *buf, size_t len)
> {
> struct priv_data *priv = chip->vendor.priv;
> - struct i2c_client *client = to_i2c_client(chip->pdev);
> + struct i2c_client *client = to_i2c_client(chip->dev.parent);
> s32 status;
>
> priv->len = 0;
> @@ -62,7 +62,7 @@ static int i2c_atmel_send(struct tpm_chip *chip, u8 *buf, size_t len)
>
> status = i2c_master_send(client, buf, len);
>
> - dev_dbg(chip->pdev,
> + dev_dbg(&chip->dev,
> "%s(buf=%*ph len=%0zx) -> sts=%d\n", __func__,
> (int)min_t(size_t, 64, len), buf, len, status);
> return status;
> @@ -71,7 +71,7 @@ static int i2c_atmel_send(struct tpm_chip *chip, u8 *buf, size_t len)
> static int i2c_atmel_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> {
> struct priv_data *priv = chip->vendor.priv;
> - struct i2c_client *client = to_i2c_client(chip->pdev);
> + struct i2c_client *client = to_i2c_client(chip->dev.parent);
> struct tpm_output_header *hdr =
> (struct tpm_output_header *)priv->buffer;
> u32 expected_len;
> @@ -88,7 +88,7 @@ static int i2c_atmel_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> return -ENOMEM;
>
> if (priv->len >= expected_len) {
> - dev_dbg(chip->pdev,
> + dev_dbg(&chip->dev,
> "%s early(buf=%*ph count=%0zx) -> ret=%d\n", __func__,
> (int)min_t(size_t, 64, expected_len), buf, count,
> expected_len);
> @@ -97,7 +97,7 @@ static int i2c_atmel_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> }
>
> rc = i2c_master_recv(client, buf, expected_len);
> - dev_dbg(chip->pdev,
> + dev_dbg(&chip->dev,
> "%s reread(buf=%*ph count=%0zx) -> ret=%d\n", __func__,
> (int)min_t(size_t, 64, expected_len), buf, count,
> expected_len);
> @@ -106,13 +106,13 @@ static int i2c_atmel_recv(struct tpm_chip *chip, u8 *buf, size_t count)
>
> static void i2c_atmel_cancel(struct tpm_chip *chip)
> {
> - dev_err(chip->pdev, "TPM operation cancellation was requested, but is not supported");
> + dev_err(&chip->dev, "TPM operation cancellation was requested, but is not supported");
> }
>
> static u8 i2c_atmel_read_status(struct tpm_chip *chip)
> {
> struct priv_data *priv = chip->vendor.priv;
> - struct i2c_client *client = to_i2c_client(chip->pdev);
> + struct i2c_client *client = to_i2c_client(chip->dev.parent);
> int rc;
>
> /* The TPM fails the I2C read until it is ready, so we do the entire
> @@ -125,7 +125,7 @@ static u8 i2c_atmel_read_status(struct tpm_chip *chip)
> /* Once the TPM has completed the command the command remains readable
> * until another command is issued. */
> rc = i2c_master_recv(client, priv->buffer, sizeof(priv->buffer));
> - dev_dbg(chip->pdev,
> + dev_dbg(&chip->dev,
> "%s: sts=%d", __func__, rc);
> if (rc <= 0)
> return 0;
> diff --git a/drivers/char/tpm/tpm_i2c_infineon.c b/drivers/char/tpm/tpm_i2c_infineon.c
> index 63d5d22..f2aa99e 100644
> --- a/drivers/char/tpm/tpm_i2c_infineon.c
> +++ b/drivers/char/tpm/tpm_i2c_infineon.c
> @@ -446,7 +446,7 @@ static int tpm_tis_i2c_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> /* read first 10 bytes, including tag, paramsize, and result */
> size = recv_data(chip, buf, TPM_HEADER_SIZE);
> if (size < TPM_HEADER_SIZE) {
> - dev_err(chip->pdev, "Unable to read header\n");
> + dev_err(&chip->dev, "Unable to read header\n");
> goto out;
> }
>
> @@ -459,14 +459,14 @@ static int tpm_tis_i2c_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> size += recv_data(chip, &buf[TPM_HEADER_SIZE],
> expected - TPM_HEADER_SIZE);
> if (size < expected) {
> - dev_err(chip->pdev, "Unable to read remainder of result\n");
> + dev_err(&chip->dev, "Unable to read remainder of result\n");
> size = -ETIME;
> goto out;
> }
>
> wait_for_stat(chip, TPM_STS_VALID, chip->vendor.timeout_c, &status);
> if (status & TPM_STS_DATA_AVAIL) { /* retry? */
> - dev_err(chip->pdev, "Error left over data\n");
> + dev_err(&chip->dev, "Error left over data\n");
> size = -EIO;
> goto out;
> }
> diff --git a/drivers/char/tpm/tpm_i2c_nuvoton.c b/drivers/char/tpm/tpm_i2c_nuvoton.c
> index 847f159..a1e1474 100644
> --- a/drivers/char/tpm/tpm_i2c_nuvoton.c
> +++ b/drivers/char/tpm/tpm_i2c_nuvoton.c
> @@ -96,13 +96,13 @@ static s32 i2c_nuvoton_write_buf(struct i2c_client *client, u8 offset, u8 size,
> /* read TPM_STS register */
> static u8 i2c_nuvoton_read_status(struct tpm_chip *chip)
> {
> - struct i2c_client *client = to_i2c_client(chip->pdev);
> + struct i2c_client *client = to_i2c_client(chip->dev.parent);
> s32 status;
> u8 data;
>
> status = i2c_nuvoton_read_buf(client, TPM_STS, 1, &data);
> if (status <= 0) {
> - dev_err(chip->pdev, "%s() error return %d\n", __func__,
> + dev_err(&chip->dev, "%s() error return %d\n", __func__,
> status);
> data = TPM_STS_ERR_VAL;
> }
> @@ -127,13 +127,13 @@ static s32 i2c_nuvoton_write_status(struct i2c_client *client, u8 data)
> /* write commandReady to TPM_STS register */
> static void i2c_nuvoton_ready(struct tpm_chip *chip)
> {
> - struct i2c_client *client = to_i2c_client(chip->pdev);
> + struct i2c_client *client = to_i2c_client(chip->dev.parent);
> s32 status;
>
> /* this causes the current command to be aborted */
> status = i2c_nuvoton_write_status(client, TPM_STS_COMMAND_READY);
> if (status < 0)
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "%s() fail to write TPM_STS.commandReady\n", __func__);
> }
>
> @@ -212,7 +212,7 @@ static int i2c_nuvoton_wait_for_stat(struct tpm_chip *chip, u8 mask, u8 value,
> return 0;
> } while (time_before(jiffies, stop));
> }
> - dev_err(chip->pdev, "%s(%02x, %02x) -> timeout\n", __func__, mask,
> + dev_err(&chip->dev, "%s(%02x, %02x) -> timeout\n", __func__, mask,
> value);
> return -ETIMEDOUT;
> }
> @@ -240,7 +240,7 @@ static int i2c_nuvoton_recv_data(struct i2c_client *client,
> &chip->vendor.read_queue) == 0) {
> burst_count = i2c_nuvoton_get_burstcount(client, chip);
> if (burst_count < 0) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "%s() fail to read burstCount=%d\n", __func__,
> burst_count);
> return -EIO;
> @@ -249,12 +249,12 @@ static int i2c_nuvoton_recv_data(struct i2c_client *client,
> rc = i2c_nuvoton_read_buf(client, TPM_DATA_FIFO_R,
> bytes2read, &buf[size]);
> if (rc < 0) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "%s() fail on i2c_nuvoton_read_buf()=%d\n",
> __func__, rc);
> return -EIO;
> }
> - dev_dbg(chip->pdev, "%s(%d):", __func__, bytes2read);
> + dev_dbg(&chip->dev, "%s(%d):", __func__, bytes2read);
> size += bytes2read;
> }
>
> @@ -264,7 +264,7 @@ static int i2c_nuvoton_recv_data(struct i2c_client *client,
> /* Read TPM command results */
> static int i2c_nuvoton_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> {
> - struct device *dev = chip->pdev;
> + struct device *dev = chip->dev.parent;
> struct i2c_client *client = to_i2c_client(dev);
> s32 rc;
> int expected, status, burst_count, retries, size = 0;
> @@ -334,7 +334,7 @@ static int i2c_nuvoton_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> break;
> }
> i2c_nuvoton_ready(chip);
> - dev_dbg(chip->pdev, "%s() -> %d\n", __func__, size);
> + dev_dbg(&chip->dev, "%s() -> %d\n", __func__, size);
> return size;
> }
>
> @@ -347,7 +347,7 @@ static int i2c_nuvoton_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> */
> static int i2c_nuvoton_send(struct tpm_chip *chip, u8 *buf, size_t len)
> {
> - struct device *dev = chip->pdev;
> + struct device *dev = chip->dev.parent;
> struct i2c_client *client = to_i2c_client(dev);
> u32 ordinal;
> size_t count = 0;
> diff --git a/drivers/char/tpm/tpm_infineon.c b/drivers/char/tpm/tpm_infineon.c
> index 6c488e6..e3cf9f3 100644
> --- a/drivers/char/tpm/tpm_infineon.c
> +++ b/drivers/char/tpm/tpm_infineon.c
> @@ -195,9 +195,9 @@ static int wait(struct tpm_chip *chip, int wait_for_bit)
> }
> if (i == TPM_MAX_TRIES) { /* timeout occurs */
> if (wait_for_bit == STAT_XFE)
> - dev_err(chip->pdev, "Timeout in wait(STAT_XFE)\n");
> + dev_err(&chip->dev, "Timeout in wait(STAT_XFE)\n");
> if (wait_for_bit == STAT_RDA)
> - dev_err(chip->pdev, "Timeout in wait(STAT_RDA)\n");
> + dev_err(&chip->dev, "Timeout in wait(STAT_RDA)\n");
> return -EIO;
> }
> return 0;
> @@ -220,7 +220,7 @@ static void wait_and_send(struct tpm_chip *chip, u8 sendbyte)
> static void tpm_wtx(struct tpm_chip *chip)
> {
> number_of_wtx++;
> - dev_info(chip->pdev, "Granting WTX (%02d / %02d)\n",
> + dev_info(&chip->dev, "Granting WTX (%02d / %02d)\n",
> number_of_wtx, TPM_MAX_WTX_PACKAGES);
> wait_and_send(chip, TPM_VL_VER);
> wait_and_send(chip, TPM_CTRL_WTX);
> @@ -231,7 +231,7 @@ static void tpm_wtx(struct tpm_chip *chip)
>
> static void tpm_wtx_abort(struct tpm_chip *chip)
> {
> - dev_info(chip->pdev, "Aborting WTX\n");
> + dev_info(&chip->dev, "Aborting WTX\n");
> wait_and_send(chip, TPM_VL_VER);
> wait_and_send(chip, TPM_CTRL_WTX_ABORT);
> wait_and_send(chip, 0x00);
> @@ -257,7 +257,7 @@ recv_begin:
> }
>
> if (buf[0] != TPM_VL_VER) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "Wrong transport protocol implementation!\n");
> return -EIO;
> }
> @@ -272,7 +272,7 @@ recv_begin:
> }
>
> if ((size == 0x6D00) && (buf[1] == 0x80)) {
> - dev_err(chip->pdev, "Error handling on vendor layer!\n");
> + dev_err(&chip->dev, "Error handling on vendor layer!\n");
> return -EIO;
> }
>
> @@ -284,7 +284,7 @@ recv_begin:
> }
>
> if (buf[1] == TPM_CTRL_WTX) {
> - dev_info(chip->pdev, "WTX-package received\n");
> + dev_info(&chip->dev, "WTX-package received\n");
> if (number_of_wtx < TPM_MAX_WTX_PACKAGES) {
> tpm_wtx(chip);
> goto recv_begin;
> @@ -295,14 +295,14 @@ recv_begin:
> }
>
> if (buf[1] == TPM_CTRL_WTX_ABORT_ACK) {
> - dev_info(chip->pdev, "WTX-abort acknowledged\n");
> + dev_info(&chip->dev, "WTX-abort acknowledged\n");
> return size;
> }
>
> if (buf[1] == TPM_CTRL_ERROR) {
> - dev_err(chip->pdev, "ERROR-package received:\n");
> + dev_err(&chip->dev, "ERROR-package received:\n");
> if (buf[4] == TPM_INF_NAK)
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "-> Negative acknowledgement"
> " - retransmit command!\n");
> return -EIO;
> @@ -321,7 +321,7 @@ static int tpm_inf_send(struct tpm_chip *chip, u8 * buf, size_t count)
>
> ret = empty_fifo(chip, 1);
> if (ret) {
> - dev_err(chip->pdev, "Timeout while clearing FIFO\n");
> + dev_err(&chip->dev, "Timeout while clearing FIFO\n");
> return -EIO;
> }
>
> diff --git a/drivers/char/tpm/tpm_nsc.c b/drivers/char/tpm/tpm_nsc.c
> index 289389e..766370b 100644
> --- a/drivers/char/tpm/tpm_nsc.c
> +++ b/drivers/char/tpm/tpm_nsc.c
> @@ -113,7 +113,7 @@ static int nsc_wait_for_ready(struct tpm_chip *chip)
> }
> while (time_before(jiffies, stop));
>
> - dev_info(chip->pdev, "wait for ready failed\n");
> + dev_info(&chip->dev, "wait for ready failed\n");
> return -EBUSY;
> }
>
> @@ -129,12 +129,12 @@ static int tpm_nsc_recv(struct tpm_chip *chip, u8 * buf, size_t count)
> return -EIO;
>
> if (wait_for_stat(chip, NSC_STATUS_F0, NSC_STATUS_F0, &data) < 0) {
> - dev_err(chip->pdev, "F0 timeout\n");
> + dev_err(&chip->dev, "F0 timeout\n");
> return -EIO;
> }
> if ((data =
> inb(chip->vendor.base + NSC_DATA)) != NSC_COMMAND_NORMAL) {
> - dev_err(chip->pdev, "not in normal mode (0x%x)\n",
> + dev_err(&chip->dev, "not in normal mode (0x%x)\n",
> data);
> return -EIO;
> }
> @@ -143,7 +143,7 @@ static int tpm_nsc_recv(struct tpm_chip *chip, u8 * buf, size_t count)
> for (p = buffer; p < &buffer[count]; p++) {
> if (wait_for_stat
> (chip, NSC_STATUS_OBF, NSC_STATUS_OBF, &data) < 0) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "OBF timeout (while reading data)\n");
> return -EIO;
> }
> @@ -154,11 +154,11 @@ static int tpm_nsc_recv(struct tpm_chip *chip, u8 * buf, size_t count)
>
> if ((data & NSC_STATUS_F0) == 0 &&
> (wait_for_stat(chip, NSC_STATUS_F0, NSC_STATUS_F0, &data) < 0)) {
> - dev_err(chip->pdev, "F0 not set\n");
> + dev_err(&chip->dev, "F0 not set\n");
> return -EIO;
> }
> if ((data = inb(chip->vendor.base + NSC_DATA)) != NSC_COMMAND_EOC) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "expected end of command(0x%x)\n", data);
> return -EIO;
> }
> @@ -189,19 +189,19 @@ static int tpm_nsc_send(struct tpm_chip *chip, u8 * buf, size_t count)
> return -EIO;
>
> if (wait_for_stat(chip, NSC_STATUS_IBF, 0, &data) < 0) {
> - dev_err(chip->pdev, "IBF timeout\n");
> + dev_err(&chip->dev, "IBF timeout\n");
> return -EIO;
> }
>
> outb(NSC_COMMAND_NORMAL, chip->vendor.base + NSC_COMMAND);
> if (wait_for_stat(chip, NSC_STATUS_IBR, NSC_STATUS_IBR, &data) < 0) {
> - dev_err(chip->pdev, "IBR timeout\n");
> + dev_err(&chip->dev, "IBR timeout\n");
> return -EIO;
> }
>
> for (i = 0; i < count; i++) {
> if (wait_for_stat(chip, NSC_STATUS_IBF, 0, &data) < 0) {
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> "IBF timeout (while writing data)\n");
> return -EIO;
> }
> @@ -209,7 +209,7 @@ static int tpm_nsc_send(struct tpm_chip *chip, u8 * buf, size_t count)
> }
>
> if (wait_for_stat(chip, NSC_STATUS_IBF, 0, &data) < 0) {
> - dev_err(chip->pdev, "IBF timeout\n");
> + dev_err(&chip->dev, "IBF timeout\n");
> return -EIO;
> }
> outb(NSC_COMMAND_EOC, chip->vendor.base + NSC_COMMAND);
> diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
> index 65f7eec..0b5fc41 100644
> --- a/drivers/char/tpm/tpm_tis.c
> +++ b/drivers/char/tpm/tpm_tis.c
> @@ -293,7 +293,7 @@ static int tpm_tis_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> /* read first 10 bytes, including tag, paramsize, and result */
> if ((size =
> recv_data(chip, buf, TPM_HEADER_SIZE)) < TPM_HEADER_SIZE) {
> - dev_err(chip->pdev, "Unable to read header\n");
> + dev_err(&chip->dev, "Unable to read header\n");
> goto out;
> }
>
> @@ -306,7 +306,7 @@ static int tpm_tis_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> if ((size +=
> recv_data(chip, &buf[TPM_HEADER_SIZE],
> expected - TPM_HEADER_SIZE)) < expected) {
> - dev_err(chip->pdev, "Unable to read remainder of result\n");
> + dev_err(&chip->dev, "Unable to read remainder of result\n");
> size = -ETIME;
> goto out;
> }
> @@ -315,7 +315,7 @@ static int tpm_tis_recv(struct tpm_chip *chip, u8 *buf, size_t count)
> &chip->vendor.int_queue, false);
> status = tpm_tis_status(chip);
> if (status & TPM_STS_DATA_AVAIL) { /* retry? */
> - dev_err(chip->pdev, "Error left over data\n");
> + dev_err(&chip->dev, "Error left over data\n");
> size = -EIO;
> goto out;
> }
> @@ -463,7 +463,7 @@ static int tpm_tis_send(struct tpm_chip *chip, u8 *buf, size_t len)
> msleep(1);
> if (!priv->irq_tested) {
> disable_interrupts(chip);
> - dev_err(chip->pdev,
> + dev_err(&chip->dev,
> FW_BUG "TPM interrupt not working, polling instead\n");
> }
> priv->irq_tested = true;
> @@ -533,7 +533,7 @@ static int probe_itpm(struct tpm_chip *chip)
>
> rc = tpm_tis_send_data(chip, cmd_getticks, len);
> if (rc == 0) {
> - dev_info(chip->pdev, "Detected an iTPM.\n");
> + dev_info(&chip->dev, "Detected an iTPM.\n");
> rc = 1;
> } else
> rc = -EFAULT;
> @@ -766,7 +766,7 @@ static int tpm_tis_init(struct device *dev, struct tpm_info *tpm_info,
> if (devm_request_irq
> (dev, i, tis_int_probe, IRQF_SHARED,
> chip->devname, chip) != 0) {
> - dev_info(chip->pdev,
> + dev_info(&chip->dev,
> "Unable to request irq: %d for probe\n",
> i);
> continue;
> @@ -818,7 +818,7 @@ static int tpm_tis_init(struct device *dev, struct tpm_info *tpm_info,
> if (devm_request_irq
> (dev, chip->vendor.irq, tis_int_handler, IRQF_SHARED,
> chip->devname, chip) != 0) {
> - dev_info(chip->pdev,
> + dev_info(&chip->dev,
> "Unable to request irq: %d for use\n",
> chip->vendor.irq);
> chip->vendor.irq = 0;
> --
> 2.4.3
>
------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
next prev parent reply other threads:[~2016-02-22 19:25 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-19 12:41 [PATCH v3 00/11] Multi-instance vTPM driver Stefan Berger
2016-02-19 12:41 ` [PATCH v3 01/11] tpm: fix the cleanup of struct tpm_chip Stefan Berger
[not found] ` <1455885728-10315-1-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-19 12:41 ` [PATCH v3 02/11] tpm: Get rid of chip->pdev Stefan Berger
[not found] ` <1455885728-10315-3-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 19:25 ` Jarkko Sakkinen [this message]
2016-02-19 12:42 ` [PATCH v3 03/11] tpm: Get rid of devname Stefan Berger
[not found] ` <1455885728-10315-4-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 18:19 ` Jason Gunthorpe
[not found] ` <20160222181929.GB22088-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-22 19:42 ` Jarkko Sakkinen
[not found] ` <20160222194202.GC32667-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-02-22 19:58 ` Jason Gunthorpe
[not found] ` <20160222195816.GL22088-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-22 20:34 ` Jason Gunthorpe
2016-02-23 0:22 ` Stefan Berger
2016-02-19 12:42 ` [PATCH v3 04/11] tpm: Provide strong locking for device removal Stefan Berger
[not found] ` <1455885728-10315-5-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 21:08 ` Jarkko Sakkinen
[not found] ` <20160222210844.GA3310-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-02-22 22:20 ` Jason Gunthorpe
[not found] ` <20160222222017.GC27228-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 19:40 ` Jarkko Sakkinen
[not found] ` <20160223194014.GA5241-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-02-23 19:52 ` Jason Gunthorpe
[not found] ` <20160223195246.GC389-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 20:36 ` Jarkko Sakkinen
2016-02-23 20:43 ` Jarkko Sakkinen
2016-02-19 12:42 ` [PATCH v3 05/11] tpm: Get rid of module locking Stefan Berger
[not found] ` <1455885728-10315-6-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 18:22 ` Jason Gunthorpe
[not found] ` <20160222182245.GC22088-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 0:26 ` Stefan Berger
2016-02-22 21:11 ` Jarkko Sakkinen
[not found] ` <20160222211141.GB3310-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-02-22 22:15 ` Jason Gunthorpe
2016-02-19 12:42 ` [PATCH v3 06/11] tpm: Split out the devm stuff from tpmm_chip_alloc Stefan Berger
[not found] ` <1455885728-10315-7-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 18:24 ` Jason Gunthorpe
2016-02-22 21:14 ` Jarkko Sakkinen
[not found] ` <20160222211414.GC3310-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-02-22 22:13 ` Jason Gunthorpe
[not found] ` <20160222221328.GA27228-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 0:45 ` Stefan Berger
2016-02-23 11:31 ` Jarkko Sakkinen
2016-02-19 12:42 ` [PATCH v3 07/11] tpm: Replace device number bitmap with IDR Stefan Berger
[not found] ` <1455885728-10315-8-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 19:06 ` Jason Gunthorpe
[not found] ` <20160222190629.GE22088-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 1:15 ` Stefan Berger
2016-02-23 2:16 ` Stefan Berger
[not found] ` <201602230116.u1N1G4iu012263@d03av02.boulder.ibm.com>
[not found] ` <201602230116.u1N1G4iu012263-nNA/7dmquNI+UXBhvPuGgqsjOiXwFzmk@public.gmane.org>
2016-02-23 2:16 ` Jason Gunthorpe
[not found] ` <20160223021606.GC26177-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 23:04 ` Stefan Berger
[not found] ` <201602232305.u1NN521L020589@d03av01.boulder.ibm.com>
[not found] ` <201602232305.u1NN521L020589-Rn83F4s8Lwc+UXBhvPuGgqsjOiXwFzmk@public.gmane.org>
2016-02-23 23:18 ` Jason Gunthorpe
[not found] ` <201602230217.u1N2HIJT003183@d03av05.boulder.ibm.com>
[not found] ` <201602230217.u1N2HIJT003183-3MP/CPU4Muo+UXBhvPuGgqsjOiXwFzmk@public.gmane.org>
2016-02-23 2:18 ` Jason Gunthorpe
2016-02-19 12:42 ` [PATCH v3 08/11] tpm: Introduce TPM_CHIP_FLAG_VIRTUAL Stefan Berger
[not found] ` <1455885728-10315-9-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 19:19 ` Jason Gunthorpe
[not found] ` <20160222191922.GH22088-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 1:20 ` [PATCH v3 08/11] tpm: IntroduceTPM_CHIP_FLAG_VIRTUAL Stefan Berger
2016-02-23 1:21 ` Stefan Berger
[not found] ` <201602230121.u1N1LYk2024786@d01av01.pok.ibm.com>
[not found] ` <201602230121.u1N1LYk2024786-4ZtxiNBBw+3ImUpY6SP3GEEOCMrvLtNR@public.gmane.org>
2016-02-23 2:05 ` Jason Gunthorpe
[not found] ` <20160223020515.GA26177-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 3:40 ` Stefan Berger
[not found] ` <201602230116.u1N1Ghac006778@d01av05.pok.ibm.com>
[not found] ` <201602230116.u1N1Ghac006778-8DuMPbUlb4HImUpY6SP3GEEOCMrvLtNR@public.gmane.org>
2016-02-23 2:06 ` Jason Gunthorpe
2016-02-19 12:42 ` [PATCH v3 09/11] tpm: Driver for supporting multiple emulated TPMs Stefan Berger
[not found] ` <1455885728-10315-10-git-send-email-stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
2016-02-22 19:27 ` Jason Gunthorpe
[not found] ` <20160222192741.GI22088-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-23 1:45 ` Stefan Berger
[not found] ` <201602230142.u1N1gSuF029481@d01av05.pok.ibm.com>
[not found] ` <201602230142.u1N1gSuF029481-8DuMPbUlb4HImUpY6SP3GEEOCMrvLtNR@public.gmane.org>
2016-02-23 2:17 ` Jason Gunthorpe
[not found] ` <20160223021730.GD26177-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-24 23:10 ` Stefan Berger
[not found] ` <201602242306.u1ON6qGP030251-8DuMPbUlb4HImUpY6SP3GEEOCMrvLtNR@public.gmane.org>
2016-02-25 13:17 ` Jarkko Sakkinen
[not found] ` <20160225131732.GA20860-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-02-25 14:12 ` Stefan Berger
[not found] ` <201602251409.u1PE98LH012367@d01av05.pok.ibm.com>
[not found] ` <201602251409.u1PE98LH012367-8DuMPbUlb4HImUpY6SP3GEEOCMrvLtNR@public.gmane.org>
2016-02-25 17:39 ` Jason Gunthorpe
[not found] ` <20160225173956.GA1407-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-25 18:42 ` Stefan Berger
[not found] ` <201602251842.u1PIgEuL014249@d03av03.boulder.ibm.com>
[not found] ` <201602251842.u1PIgEuL014249-MijUUJkLaQs+UXBhvPuGgqsjOiXwFzmk@public.gmane.org>
2016-02-25 20:31 ` Jason Gunthorpe
[not found] ` <20160225203117.GA22984-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-02-25 22:11 ` Stefan Berger
2016-02-23 10:22 ` Jarkko Sakkinen
[not found] ` <20160223102211.GA9474-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-02-23 12:09 ` Stefan Berger
[not found] ` <201602231210.u1NCAD6D017196@d01av03.pok.ibm.com>
[not found] ` <201602231210.u1NCAD6D017196-CUdSWdNILC7ImUpY6SP3GEEOCMrvLtNR@public.gmane.org>
2016-02-23 18:36 ` Jarkko Sakkinen
2016-02-19 12:42 ` [PATCH v3 10/11] tpm: Initialize TPM and get durations and timeouts Stefan Berger
2016-02-19 12:42 ` [PATCH v3 11/11] A test program for vTPM device creation Stefan Berger
2016-02-22 19:20 ` [PATCH v3 00/11] Multi-instance vTPM driver Jarkko Sakkinen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160222192517.GB32667@intel.com \
--to=jarkko.sakkinen-vuqaysv1563yd54fqh9/ca@public.gmane.org \
--cc=stefanb-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
--cc=tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).