Lines Matching refs:cr
78 static int ccp_do_cmd(struct ccp_op *op, u32 *cr, unsigned int cr_count) in ccp_do_cmd() argument
111 iowrite32(*(cr + i), cr_addr); in ccp_do_cmd()
154 u32 cr[6]; in ccp_perform_aes() local
157 cr[0] = (CCP_ENGINE_AES << REQ1_ENGINE_SHIFT) in ccp_perform_aes()
162 cr[1] = op->src.u.dma.length - 1; in ccp_perform_aes()
163 cr[2] = ccp_addr_lo(&op->src.u.dma); in ccp_perform_aes()
164 cr[3] = (op->sb_ctx << REQ4_KSB_SHIFT) in ccp_perform_aes()
167 cr[4] = ccp_addr_lo(&op->dst.u.dma); in ccp_perform_aes()
168 cr[5] = (CCP_MEMTYPE_SYSTEM << REQ6_MEMTYPE_SHIFT) in ccp_perform_aes()
172 cr[0] |= ((0x7f) << REQ1_AES_CFB_SIZE_SHIFT); in ccp_perform_aes()
175 cr[0] |= REQ1_EOM; in ccp_perform_aes()
178 cr[0] |= REQ1_INIT; in ccp_perform_aes()
180 return ccp_do_cmd(op, cr, ARRAY_SIZE(cr)); in ccp_perform_aes()
185 u32 cr[6]; in ccp_perform_xts_aes() local
188 cr[0] = (CCP_ENGINE_XTS_AES_128 << REQ1_ENGINE_SHIFT) in ccp_perform_xts_aes()
192 cr[1] = op->src.u.dma.length - 1; in ccp_perform_xts_aes()
193 cr[2] = ccp_addr_lo(&op->src.u.dma); in ccp_perform_xts_aes()
194 cr[3] = (op->sb_ctx << REQ4_KSB_SHIFT) in ccp_perform_xts_aes()
197 cr[4] = ccp_addr_lo(&op->dst.u.dma); in ccp_perform_xts_aes()
198 cr[5] = (CCP_MEMTYPE_SYSTEM << REQ6_MEMTYPE_SHIFT) in ccp_perform_xts_aes()
202 cr[0] |= REQ1_EOM; in ccp_perform_xts_aes()
205 cr[0] |= REQ1_INIT; in ccp_perform_xts_aes()
207 return ccp_do_cmd(op, cr, ARRAY_SIZE(cr)); in ccp_perform_xts_aes()
212 u32 cr[6]; in ccp_perform_sha() local
215 cr[0] = (CCP_ENGINE_SHA << REQ1_ENGINE_SHIFT) in ccp_perform_sha()
218 cr[1] = op->src.u.dma.length - 1; in ccp_perform_sha()
219 cr[2] = ccp_addr_lo(&op->src.u.dma); in ccp_perform_sha()
220 cr[3] = (op->sb_ctx << REQ4_KSB_SHIFT) in ccp_perform_sha()
225 cr[0] |= REQ1_EOM; in ccp_perform_sha()
226 cr[4] = lower_32_bits(op->u.sha.msg_bits); in ccp_perform_sha()
227 cr[5] = upper_32_bits(op->u.sha.msg_bits); in ccp_perform_sha()
229 cr[4] = 0; in ccp_perform_sha()
230 cr[5] = 0; in ccp_perform_sha()
233 return ccp_do_cmd(op, cr, ARRAY_SIZE(cr)); in ccp_perform_sha()
238 u32 cr[6]; in ccp_perform_rsa() local
241 cr[0] = (CCP_ENGINE_RSA << REQ1_ENGINE_SHIFT) in ccp_perform_rsa()
245 cr[1] = op->u.rsa.input_len - 1; in ccp_perform_rsa()
246 cr[2] = ccp_addr_lo(&op->src.u.dma); in ccp_perform_rsa()
247 cr[3] = (op->sb_ctx << REQ4_KSB_SHIFT) in ccp_perform_rsa()
250 cr[4] = ccp_addr_lo(&op->dst.u.dma); in ccp_perform_rsa()
251 cr[5] = (CCP_MEMTYPE_SYSTEM << REQ6_MEMTYPE_SHIFT) in ccp_perform_rsa()
254 return ccp_do_cmd(op, cr, ARRAY_SIZE(cr)); in ccp_perform_rsa()
259 u32 cr[6]; in ccp_perform_passthru() local
262 cr[0] = (CCP_ENGINE_PASSTHRU << REQ1_ENGINE_SHIFT) in ccp_perform_passthru()
267 cr[1] = op->src.u.dma.length - 1; in ccp_perform_passthru()
269 cr[1] = op->dst.u.dma.length - 1; in ccp_perform_passthru()
272 cr[2] = ccp_addr_lo(&op->src.u.dma); in ccp_perform_passthru()
273 cr[3] = (CCP_MEMTYPE_SYSTEM << REQ4_MEMTYPE_SHIFT) in ccp_perform_passthru()
277 cr[3] |= (op->sb_key << REQ4_KSB_SHIFT); in ccp_perform_passthru()
279 cr[2] = op->src.u.sb * CCP_SB_BYTES; in ccp_perform_passthru()
280 cr[3] = (CCP_MEMTYPE_SB << REQ4_MEMTYPE_SHIFT); in ccp_perform_passthru()
284 cr[4] = ccp_addr_lo(&op->dst.u.dma); in ccp_perform_passthru()
285 cr[5] = (CCP_MEMTYPE_SYSTEM << REQ6_MEMTYPE_SHIFT) in ccp_perform_passthru()
288 cr[4] = op->dst.u.sb * CCP_SB_BYTES; in ccp_perform_passthru()
289 cr[5] = (CCP_MEMTYPE_SB << REQ6_MEMTYPE_SHIFT); in ccp_perform_passthru()
293 cr[0] |= REQ1_EOM; in ccp_perform_passthru()
295 return ccp_do_cmd(op, cr, ARRAY_SIZE(cr)); in ccp_perform_passthru()
300 u32 cr[6]; in ccp_perform_ecc() local
303 cr[0] = REQ1_ECC_AFFINE_CONVERT in ccp_perform_ecc()
307 cr[1] = op->src.u.dma.length - 1; in ccp_perform_ecc()
308 cr[2] = ccp_addr_lo(&op->src.u.dma); in ccp_perform_ecc()
309 cr[3] = (CCP_MEMTYPE_SYSTEM << REQ4_MEMTYPE_SHIFT) in ccp_perform_ecc()
311 cr[4] = ccp_addr_lo(&op->dst.u.dma); in ccp_perform_ecc()
312 cr[5] = (CCP_MEMTYPE_SYSTEM << REQ6_MEMTYPE_SHIFT) in ccp_perform_ecc()
315 return ccp_do_cmd(op, cr, ARRAY_SIZE(cr)); in ccp_perform_ecc()