2 * caam - Freescale FSL CAAM support for Public Key Cryptography descriptors
4 * Copyright 2016 Freescale Semiconductor, Inc.
6 * There is no Shared Descriptor for PKC so that the Job Descriptor must carry
7 * all the desired key parameters, input and output pointers.
10 #include "desc_constr.h"
12 /* Descriptor for RSA Public operation */
13 void init_rsa_pub_desc(u32
*desc
, struct rsa_pub_pdb
*pdb
)
15 init_job_desc_pdb(desc
, 0, sizeof(*pdb
));
16 append_cmd(desc
, pdb
->sgf
);
17 append_ptr(desc
, pdb
->f_dma
);
18 append_ptr(desc
, pdb
->g_dma
);
19 append_ptr(desc
, pdb
->n_dma
);
20 append_ptr(desc
, pdb
->e_dma
);
21 append_cmd(desc
, pdb
->f_len
);
22 append_operation(desc
, OP_TYPE_UNI_PROTOCOL
| OP_PCLID_RSAENC_PUBKEY
);
25 /* Descriptor for RSA Private operation - Private Key Form #1 */
26 void init_rsa_priv_f1_desc(u32
*desc
, struct rsa_priv_f1_pdb
*pdb
)
28 init_job_desc_pdb(desc
, 0, sizeof(*pdb
));
29 append_cmd(desc
, pdb
->sgf
);
30 append_ptr(desc
, pdb
->g_dma
);
31 append_ptr(desc
, pdb
->f_dma
);
32 append_ptr(desc
, pdb
->n_dma
);
33 append_ptr(desc
, pdb
->d_dma
);
34 append_operation(desc
, OP_TYPE_UNI_PROTOCOL
| OP_PCLID_RSADEC_PRVKEY
|