Re: [PATCH 1/2] TPM: Nuvoton I2C driver

From: Stefan Berger
Date: Fri Feb 10 2012 - 13:33:03 EST


On 02/07/2012 08:06 AM, Rajiv Andrade wrote:
From: Dan.Morav@xxxxxxxxxxx<Dan.Morav@xxxxxxxxxxx>

Below are the additions for WPCT301/NPCT501 Nuvoton Technology
TPM with I2C interface device driver. This driver uses Linux I2C
bus driver to interface with the I2C bus and Linux TPM driver (tpm.ko),
to export the standard Linux TPM interface. This driver requires an
I2C bus driver and TPM driver (tpm.ko) to be loaded prior to its loading.
This driver tested on Linux kernel version 3.3 on an x86 based platform.

Signed-off-by: Dan Morav<dmorav@xxxxxxxxxxx>
Signed-off-by: Rajiv Andrade<srajiv@xxxxxxxxxxxxxxxxxx>
[...]
+
endif # TCG_TPM
diff --git a/drivers/char/tpm/Makefile b/drivers/char/tpm/Makefile
index ea3a1e0..064669a 100644
--- a/drivers/char/tpm/Makefile
+++ b/drivers/char/tpm/Makefile
@@ -9,3 +9,4 @@ obj-$(CONFIG_TCG_TIS) += tpm_tis.o
obj-$(CONFIG_TCG_NSC) += tpm_nsc.o
obj-$(CONFIG_TCG_ATMEL) += tpm_atmel.o
obj-$(CONFIG_TCG_INFINEON) += tpm_infineon.o
+obj-$(CONFIG_TCG_NUVOTON_I2C) += tpm_nuvoton_i2c.o
diff --git a/drivers/char/tpm/tpm_nuvoton_i2c.c b/drivers/char/tpm/tpm_nuvoton_i2c.c
new file mode 100644
index 0000000..daf0d49
--- /dev/null
+++ b/drivers/char/tpm/tpm_nuvoton_i2c.c
@@ -0,0 +1,718 @@
+/******************************************************************************
+ * Nuvoton TPM I2C Device Driver Interface for WPCT301/NPCT501,
+ * based on the TCG TPM Interface Spec version 1.2.
+ * Specifications at www.trustedcomputinggroup.org

Since it's implemented following non-proprietary specs, would this driver qualify as the generic tpm_i2c driver or is there anything besides the device-id,vendor-id + firmware work-around in the driver specific to this particular device implementation.

Regards,
Stefan

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/