kernel: Add TPM Module support
authorChris Blake <chrisrblake93@gmail.com>
Sun, 26 Feb 2017 10:04:51 +0000 (04:04 -0600)
committerJohn Crispin <john@phrozen.org>
Mon, 27 Feb 2017 10:39:23 +0000 (11:39 +0100)
The following will enable the TPM kernel module, as well as support for
the atmel i2c TPM driver. Tested and confirmed working on an Aerohive
AP-121

Signed-off-by: Chris Blake <chrisrblake93@gmail.com>
package/kernel/linux/modules/other.mk
target/linux/generic/config-3.18
target/linux/generic/config-4.4
target/linux/generic/config-4.9

index b39a88be4d168b7e3f25533b96ce3bff824b3153..3b2d2e9667b09283ce7239769ce320aad5616eb5 100644 (file)
@@ -954,3 +954,50 @@ define KernelPackage/bmp085-spi/description
 endef
 
 $(eval $(call KernelPackage,bmp085-spi))
+
+define KernelPackage/tpm
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=TPM Hardware Support
+  KCONFIG:= CONFIG_TCG_TPM
+  FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm.ko
+  AUTOLOAD:=$(call AutoLoad,10,tpm,1)
+endef
+
+define KernelPackage/tpm/description
+       This enables TPM Hardware Support.
+endef
+
+$(eval $(call KernelPackage,tpm))
+
+define KernelPackage/tpm-tis
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=TPM TIS 1.2 Interface / TPM 2.0 FIFO Interface
+       DEPENDS:= @TARGET_x86 +kmod-tpm
+  KCONFIG:= CONFIG_TCG_TIS
+  FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_tis.ko
+  AUTOLOAD:=$(call AutoLoad,20,tpm_tis,1)
+endef
+
+define KernelPackage/tpm-tis/description
+       If you have a TPM security chip that is compliant with the
+       TCG TIS 1.2 TPM specification (TPM1.2) or the TCG PTP FIFO
+       specification (TPM2.0) say Yes and it will be accessible from
+       within Linux.
+endef
+
+$(eval $(call KernelPackage,tpm-tis))
+
+define KernelPackage/tpm-i2c-atmel
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=TPM I2C Atmel Support
+  DEPENDS:= +kmod-tpm +kmod-i2c-core
+  KCONFIG:= CONFIG_TCG_TIS_I2C_ATMEL
+  FILES:= $(LINUX_DIR)/drivers/char/tpm/tpm_i2c_atmel.ko
+  AUTOLOAD:=$(call AutoLoad,40,tpm_i2c_atmel,1)
+endef
+
+define KernelPackage/tpm-i2c-atmel/description
+       This enables the TPM Interface Specification 1.2 Interface (I2C - Atmel)
+endef
+
+$(eval $(call KernelPackage,tpm-i2c-atmel))
index 8103cabce04c50547fa3b8ede06115f100771581..fd24004991dcc658571e6ff9c76801125cedd54f 100644 (file)
@@ -3884,6 +3884,12 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_TASKS_RCU is not set
 # CONFIG_TC35815 is not set
 # CONFIG_TCG_TPM is not set
+# CONFIG_TCG_TIS is not set
+# CONFIG_TCG_TIS_I2C_ATMEL is not set
+# CONFIG_TCG_TIS_I2C_INFINEON is not set
+# CONFIG_TCG_TIS_I2C_NUVOTON is not set
+# CONFIG_TCG_ATMEL is not set
+# CONFIG_TCG_TIS_ST33ZP24 is not set
 # CONFIG_TCIC is not set
 CONFIG_TCP_CONG_ADVANCED=y
 # CONFIG_TCP_CONG_BIC is not set
index e76359a8aef7b9a584bcf8ec9eea75ccd7ed1a4e..021d8171c137d62abf2411c4f0bb1749bd5d5a46 100644 (file)
@@ -4077,6 +4077,12 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_TASKS_RCU is not set
 # CONFIG_TC35815 is not set
 # CONFIG_TCG_TPM is not set
+# CONFIG_TCG_TIS is not set
+# CONFIG_TCG_TIS_I2C_ATMEL is not set
+# CONFIG_TCG_TIS_I2C_INFINEON is not set
+# CONFIG_TCG_TIS_I2C_NUVOTON is not set
+# CONFIG_TCG_ATMEL is not set
+# CONFIG_TCG_TIS_ST33ZP24 is not set
 # CONFIG_TCIC is not set
 CONFIG_TCP_CONG_ADVANCED=y
 # CONFIG_TCP_CONG_BIC is not set
index e36d77c2074c8961f9bc70aeb419bc1bcc5f554c..da9408b64473b89a4b193554280f53bd018db918 100644 (file)
@@ -4394,6 +4394,12 @@ CONFIG_SYSVIPC_SYSCTL=y
 # CONFIG_TASK_XACCT is not set
 # CONFIG_TC35815 is not set
 # CONFIG_TCG_TPM is not set
+# CONFIG_TCG_TIS is not set
+# CONFIG_TCG_TIS_I2C_ATMEL is not set
+# CONFIG_TCG_TIS_I2C_INFINEON is not set
+# CONFIG_TCG_TIS_I2C_NUVOTON is not set
+# CONFIG_TCG_ATMEL is not set
+# CONFIG_TCG_TIS_ST33ZP24 is not set
 # CONFIG_TCIC is not set
 CONFIG_TCP_CONG_ADVANCED=y
 # CONFIG_TCP_CONG_BBR is not set