80 lines
2.4 KiB
Diff
80 lines
2.4 KiB
Diff
|
From 5d4a46fe8847d26112764c5768ff00f839fb3810 Mon Sep 17 00:00:00 2001
|
||
|
From: Sumit Garg <sumit.garg@nxp.com>
|
||
|
Date: Tue, 12 Jul 2016 14:05:34 -0400
|
||
|
Subject: [PATCH 81/93] crypto/fsl: Update blob cmd to accept 64bit addresses
|
||
|
|
||
|
Update blob cmd to accept 64bit source, key modifier and destination
|
||
|
addresses. Also correct output result print format for fsl specific
|
||
|
implementation of blob cmd.
|
||
|
|
||
|
Signed-off-by: Sumit Garg <sumit.garg@nxp.com>
|
||
|
---
|
||
|
common/cmd_blob.c | 2 +-
|
||
|
drivers/crypto/fsl/fsl_blob.c | 13 ++++++++++---
|
||
|
2 files changed, 11 insertions(+), 4 deletions(-)
|
||
|
|
||
|
diff --git a/common/cmd_blob.c b/common/cmd_blob.c
|
||
|
index ac8b268..bdd4cfd 100644
|
||
|
--- a/common/cmd_blob.c
|
||
|
+++ b/common/cmd_blob.c
|
||
|
@@ -54,7 +54,7 @@ __weak int blob_encap(u8 *key_mod, u8 *src, u8 *dst, u32 len)
|
||
|
*/
|
||
|
static int do_blob(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[])
|
||
|
{
|
||
|
- uint32_t key_addr, src_addr, dst_addr, len;
|
||
|
+ ulong key_addr, src_addr, dst_addr, len;
|
||
|
uint8_t *km_ptr, *src_ptr, *dst_ptr;
|
||
|
int enc, ret = 0;
|
||
|
|
||
|
diff --git a/drivers/crypto/fsl/fsl_blob.c b/drivers/crypto/fsl/fsl_blob.c
|
||
|
index 8b25921..d24b8fc 100644
|
||
|
--- a/drivers/crypto/fsl/fsl_blob.c
|
||
|
+++ b/drivers/crypto/fsl/fsl_blob.c
|
||
|
@@ -18,7 +18,7 @@ int blob_decap(u8 *key_mod, u8 *src, u8 *dst, u32 len)
|
||
|
int ret, i = 0;
|
||
|
u32 *desc;
|
||
|
|
||
|
- printf("\nDecapsulating data to form blob\n");
|
||
|
+ printf("\nDecapsulating blob to get data\n");
|
||
|
desc = malloc(sizeof(int) * MAX_CAAM_DESCSIZE);
|
||
|
if (!desc) {
|
||
|
debug("Not enough memory for descriptor allocation\n");
|
||
|
@@ -27,12 +27,15 @@ int blob_decap(u8 *key_mod, u8 *src, u8 *dst, u32 len)
|
||
|
|
||
|
inline_cnstr_jobdesc_blob_decap(desc, key_mod, src, dst, len);
|
||
|
|
||
|
+ debug("Descriptor dump:\n");
|
||
|
for (i = 0; i < 14; i++)
|
||
|
- printf("%x\n", *(desc + i));
|
||
|
+ debug("Word[%d]: %08x\n", i, *(desc + i));
|
||
|
ret = run_descriptor_jr(desc);
|
||
|
|
||
|
if (ret)
|
||
|
printf("Error in Decapsulation %d\n", ret);
|
||
|
+ else
|
||
|
+ printf("Decapsulation Success\n");
|
||
|
|
||
|
free(desc);
|
||
|
return ret;
|
||
|
@@ -51,12 +54,16 @@ int blob_encap(u8 *key_mod, u8 *src, u8 *dst, u32 len)
|
||
|
}
|
||
|
|
||
|
inline_cnstr_jobdesc_blob_encap(desc, key_mod, src, dst, len);
|
||
|
+
|
||
|
+ debug("Descriptor dump:\n");
|
||
|
for (i = 0; i < 14; i++)
|
||
|
- printf("%x\n", *(desc + i));
|
||
|
+ debug("Word[%d]: %08x\n", i, *(desc + i));
|
||
|
ret = run_descriptor_jr(desc);
|
||
|
|
||
|
if (ret)
|
||
|
printf("Error in Encapsulation %d\n", ret);
|
||
|
+ else
|
||
|
+ printf("Encapsulation Success\n");
|
||
|
|
||
|
free(desc);
|
||
|
return ret;
|
||
|
--
|
||
|
1.7.9.5
|
||
|
|