diff options
-rw-r--r-- | drivers/crypto/caam/desc_constr.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/crypto/caam/desc_constr.h b/drivers/crypto/caam/desc_constr.h index 0d31e27b18ea..8e1056fac681 100644 --- a/drivers/crypto/caam/desc_constr.h +++ b/drivers/crypto/caam/desc_constr.h | |||
@@ -51,7 +51,7 @@ static inline void *sh_desc_pdb(u32 *desc) | |||
51 | 51 | ||
52 | static inline void init_desc(u32 *desc, u32 options) | 52 | static inline void init_desc(u32 *desc, u32 options) |
53 | { | 53 | { |
54 | *desc = options | HDR_ONE | 1; | 54 | *desc = (options | HDR_ONE) + 1; |
55 | } | 55 | } |
56 | 56 | ||
57 | static inline void init_sh_desc(u32 *desc, u32 options) | 57 | static inline void init_sh_desc(u32 *desc, u32 options) |
@@ -62,7 +62,7 @@ static inline void init_sh_desc(u32 *desc, u32 options) | |||
62 | 62 | ||
63 | static inline void init_sh_desc_pdb(u32 *desc, u32 options, size_t pdb_bytes) | 63 | static inline void init_sh_desc_pdb(u32 *desc, u32 options, size_t pdb_bytes) |
64 | { | 64 | { |
65 | u32 pdb_len = pdb_bytes / CAAM_CMD_SZ + 1; | 65 | u32 pdb_len = (pdb_bytes + CAAM_CMD_SZ - 1) / CAAM_CMD_SZ; |
66 | 66 | ||
67 | init_sh_desc(desc, (((pdb_len + 1) << HDR_START_IDX_SHIFT) + pdb_len) | | 67 | init_sh_desc(desc, (((pdb_len + 1) << HDR_START_IDX_SHIFT) + pdb_len) | |
68 | options); | 68 | options); |