summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/tee/tee_driver.c2
-rw-r--r--include/linux/tee.h36
2 files changed, 37 insertions, 1 deletions
diff --git a/drivers/tee/tee_driver.c b/drivers/tee/tee_driver.c
index 73c62871ddc..5ae0cc9508b 100644
--- a/drivers/tee/tee_driver.c
+++ b/drivers/tee/tee_driver.c
@@ -636,7 +636,7 @@ static void __exit tee_exit(void)
misc_deregister(&tee_dev);
}
-module_init(tee_init);
+subsys_initcall(tee_init);
module_exit(tee_exit);
MODULE_LICENSE("Dual BSD/GPL");
diff --git a/include/linux/tee.h b/include/linux/tee.h
index 4928e4dca1f..8b71224ac77 100644
--- a/include/linux/tee.h
+++ b/include/linux/tee.h
@@ -74,8 +74,44 @@
/*
* Exposed functions (command_id) in the static TA
*/
+#define TEE_STA_GET_PRODUCT_CONFIG 10
#define TEE_STA_SET_L2CC_PREFETCH_CTRL_REGISTER 11
+/* Flags indicating run-time environment */
+#define TEE_RT_FLAGS_NORMAL 0x00000000
+#define TEE_RT_FLAGS_MASK_ITP_PROD 0x00000001
+#define TEE_RT_FLAGS_MODEM_DEBUG 0x00000002
+#define TEE_RT_FLAGS_RNG_REG_PUBLIC 0x00000004
+#define TEE_RT_FLAGS_JTAG_ENABLED 0x00000008
+
+/*
+ * Product id numbers
+ */
+#define TEE_PRODUCT_ID_UNKNOWN 0
+#define TEE_PRODUCT_ID_8400 1
+#define TEE_PRODUCT_ID_8500 2
+#define TEE_PRODUCT_ID_9500 3
+#define TEE_PRODUCT_ID_5500 4
+#define TEE_PRODUCT_ID_7400 5
+#define TEE_PRODUCT_ID_8500C 6
+
+/* Flags indicating fuses */
+#define TEE_FUSE_FLAGS_MODEM_DISABLE 0x00000001
+
+/**
+ * struct tee_product_config - System configuration structure.
+ *
+ * @product_id: Product identification.
+ * @rt_flags: Runtime configuration flags.
+ * @fuse_flags: Fuse flags.
+ *
+ */
+struct tee_product_config {
+ uint32_t product_id;
+ uint32_t rt_flags;
+ uint32_t fuse_flags;
+};
+
/**
* struct tee_uuid - Structure that represent an uuid.
* @timeLow: The low field of the time stamp.