summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJi Luo <ji.luo@nxp.com>2018-12-10 14:41:23 +0800
committerJi Luo <ji.luo@nxp.com>2018-12-12 21:36:46 +0800
commitbcb82557f9731d5ea849400832e80e1589b2aeba (patch)
treed575fd7477274f69949025581465406928e072e1 /lib
parent02ae8f8df61540c11b84bd16120ead4a72cd4220 (diff)
MA-13759-1 imx8mm: Enable trusty support
Open configs to enable trusty for imx8mm_evk and also add new config imx8mm_evk_android_trusty_defconfig based on imx8mm_evk_android_defconfig. Test: Trusty starts ok. Change-Id: Iaea90de21f886ed23082a5e8e8d2fa7fb139a9cb Signed-off-by: Ji Luo <ji.luo@nxp.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/avb/fsl/fsl_avb.c8
-rw-r--r--lib/avb/fsl/fsl_avbkey.c8
-rw-r--r--lib/avb/fsl/fsl_avbkey.h2
-rw-r--r--lib/avb/libavb/avb_slot_verify.c4
-rw-r--r--lib/trusty/ql-tipc/libtipc.c8
5 files changed, 15 insertions, 15 deletions
diff --git a/lib/avb/fsl/fsl_avb.c b/lib/avb/fsl/fsl_avb.c
index a70d60a7b8..ff92654e8b 100644
--- a/lib/avb/fsl/fsl_avb.c
+++ b/lib/avb/fsl/fsl_avb.c
@@ -16,7 +16,7 @@
#include "utils.h"
#include "debug.h"
#include "trusty/avb.h"
-#if !defined(CONFIG_IMX_TRUSTY_OS) || !defined(CONFIG_ANDROID_AUTO_SUPPORT)
+#if !defined(CONFIG_IMX_TRUSTY_OS)
#include "fsl_public_key.h"
#endif
#include "fsl_atx_attributes.h"
@@ -606,7 +606,7 @@ AvbIOResult fsl_validate_vbmeta_public_key_rpmb(AvbOps* ops,
assert(ops != NULL && out_is_trusted != NULL);
*out_is_trusted = false;
-#if defined(CONFIG_IMX_TRUSTY_OS) && defined(CONFIG_ANDROID_AUTO_SUPPORT)
+#if defined(CONFIG_IMX_TRUSTY_OS) && !defined(CONFIG_AVB_ATX)
uint8_t public_key_buf[AVB_MAX_BUFFER_LENGTH];
if (trusty_read_vbmeta_public_key(public_key_buf,
public_key_length) != 0) {
@@ -650,7 +650,7 @@ AvbIOResult fsl_write_rollback_index_rpmb(AvbOps* ops, size_t rollback_index_slo
#ifdef CONFIG_IMX_TRUSTY_OS
if (trusty_write_rollback_index(rollback_index_slot, rollback_index)) {
ERR("write rollback from Trusty error!\n");
-#ifdef CONFIG_ANDROID_AUTO_SUPPORT
+#ifndef CONFIG_AVB_ATX
/* Read/write rollback index from rpmb will fail if the rpmb
* key hasn't been set, return AVB_IO_RESULT_OK in this case.
*/
@@ -747,7 +747,7 @@ AvbIOResult fsl_read_rollback_index_rpmb(AvbOps* ops, size_t rollback_index_slot
#ifdef CONFIG_IMX_TRUSTY_OS
if (trusty_read_rollback_index(rollback_index_slot, out_rollback_index)) {
ERR("read rollback from Trusty error!\n");
-#ifdef CONFIG_ANDROID_AUTO_SUPPORT
+#ifndef CONFIG_AVB_ATX
if (!rpmbkey_is_set()) {
*out_rollback_index = 0;
ret = AVB_IO_RESULT_OK;
diff --git a/lib/avb/fsl/fsl_avbkey.c b/lib/avb/fsl/fsl_avbkey.c
index 85428db029..5b58515fd5 100644
--- a/lib/avb/fsl/fsl_avbkey.c
+++ b/lib/avb/fsl/fsl_avbkey.c
@@ -651,7 +651,7 @@ int rbkidx_erase(void) {
#endif /* AVB_RPMB */
#ifdef CONFIG_SPL_BUILD
-#if defined(CONFIG_IMX_TRUSTY_OS) && defined(CONFIG_ANDROID_AUTO_SUPPORT)
+#if defined(CONFIG_IMX_TRUSTY_OS) && !defined(CONFIG_AVB_ATX)
int check_rpmb_blob(struct mmc *mmc)
{
int ret = 0;
@@ -691,7 +691,7 @@ fail:
return ret;
}
-#endif /* CONFIG_IMX_TRUSTY_OS && CONFIG_ANDROID_AUTO_SUPPORT */
+#endif /* CONFIG_IMX_TRUSTY_OS && !defined(CONFIG_AVB_ATX) */
#else /* CONFIG_SPL_BUILD */
#ifdef CONFIG_AVB_ATX
static int fsl_fuse_ops(uint32_t *buffer, uint32_t length, uint32_t offset,
@@ -982,7 +982,7 @@ int at_disable_vboot_unlock(void)
}
#endif /* CONFIG_AVB_ATX */
-#if defined(CONFIG_IMX_TRUSTY_OS) && defined(CONFIG_ANDROID_AUTO_SUPPORT)
+#if defined(CONFIG_IMX_TRUSTY_OS) && !defined(CONFIG_AVB_ATX)
bool rpmbkey_is_set(void)
{
int mmcc;
@@ -1143,5 +1143,5 @@ int avb_set_public_key(uint8_t *staged_buffer, uint32_t size) {
return 0;
}
-#endif /* CONFIG_IMX_TRUSTY_OS && CONFIG_ANDROID_AUTO_SUPPORT */
+#endif /* CONFIG_IMX_TRUSTY_OS && !defind(CONFIG_AVB_ATX) */
#endif /* CONFIG_SPL_BUILD */
diff --git a/lib/avb/fsl/fsl_avbkey.h b/lib/avb/fsl/fsl_avbkey.h
index ed497a99cb..8dd8746bf3 100644
--- a/lib/avb/fsl/fsl_avbkey.h
+++ b/lib/avb/fsl/fsl_avbkey.h
@@ -40,7 +40,7 @@ struct bl_rbindex_package {
};
#endif
-#ifdef CONFIG_ANDROID_AUTO_SUPPORT
+#ifndef CONFIG_AVB_ATX
#define RPMB_KEY_MAGIC "RPMB"
#endif
diff --git a/lib/avb/libavb/avb_slot_verify.c b/lib/avb/libavb/avb_slot_verify.c
index 4f2e3ce64f..bcb0357e3a 100644
--- a/lib/avb/libavb/avb_slot_verify.c
+++ b/lib/avb/libavb/avb_slot_verify.c
@@ -33,7 +33,7 @@
#include "avb_util.h"
#include "avb_vbmeta_image.h"
#include "avb_version.h"
-#if defined(CONFIG_IMX_TRUSTY_OS) && defined(CONFIG_ANDROID_AUTO_SUPPORT)
+#if defined(CONFIG_IMX_TRUSTY_OS) && !defined(CONFIG_AVB_ATX)
#include "trusty/hwcrypto.h"
#include <memalign.h>
#endif
@@ -298,7 +298,7 @@ static AvbSlotVerifyResult load_and_verify_hash_partition(
}
if (avb_strcmp((const char*)hash_desc.hash_algorithm, "sha256") == 0) {
-#if defined(CONFIG_IMX_TRUSTY_OS) && defined(CONFIG_ANDROID_AUTO_SUPPORT)
+#if defined(CONFIG_IMX_TRUSTY_OS) && !defined(CONFIG_AVB_ATX)
/* DMA requires cache aligned input/output buffer */
ALLOC_CACHE_ALIGN_BUFFER(uint8_t, hash_out, AVB_SHA256_DIGEST_SIZE);
uint32_t round_buf_size = ROUND(hash_desc.salt_len + hash_desc.image_size,
diff --git a/lib/trusty/ql-tipc/libtipc.c b/lib/trusty/ql-tipc/libtipc.c
index 33087b8d86..30d4bbf854 100644
--- a/lib/trusty/ql-tipc/libtipc.c
+++ b/lib/trusty/ql-tipc/libtipc.c
@@ -39,7 +39,7 @@ typedef uintptr_t vaddr_t;
static struct trusty_ipc_dev *_ipc_dev;
static struct trusty_dev _tdev; /* There should only be one trusty device */
static void *rpmb_ctx;
-#ifdef CONFIG_ANDROID_AUTO_SUPPORT
+#ifndef CONFIG_AVB_ATX
bool rpmbkey_is_set(void);
#endif
@@ -52,7 +52,7 @@ void trusty_ipc_shutdown(void)
(void)avb_tipc_shutdown(_ipc_dev);
(void)km_tipc_shutdown(_ipc_dev);
-#ifdef CONFIG_ANDROID_AUTO_SUPPORT
+#ifndef CONFIG_AVB_ATX
(void)hwcrypto_tipc_shutdown(_ipc_dev);
#endif
@@ -91,7 +91,7 @@ int trusty_ipc_init(void)
if (rc != 0) {
trusty_error("Initlializing RPMB storage proxy service failed (%d)\n",
rc);
-#ifdef CONFIG_ANDROID_AUTO_SUPPORT
+#ifndef CONFIG_AVB_ATX
/* check if rpmb key has been fused. */
if(rpmbkey_is_set()) {
/* Go to hang if the key has been destroyed. */
@@ -120,7 +120,7 @@ int trusty_ipc_init(void)
}
}
-#ifdef CONFIG_ANDROID_AUTO_SUPPORT
+#ifndef CONFIG_AVB_ATX
trusty_info("Initializing Trusty Hardware Crypto client\n");
rc = hwcrypto_tipc_init(_ipc_dev);
if (rc != 0) {