Merge "msm: crypto: set CLR_CNTXT bit for crypto operations"
This commit is contained in:
commit
0f596458d4
1 changed files with 26 additions and 21 deletions
|
@ -1347,7 +1347,8 @@ go_proc:
|
|||
CRYPTO_CONFIG_REG));
|
||||
/* issue go to crypto */
|
||||
if (use_hw_key == false) {
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)),
|
||||
pce_dev->iobase + CRYPTO_GOPROC_REG);
|
||||
} else {
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
|
@ -1528,7 +1529,8 @@ static int _ce_setup_aead_direct(struct qce_device *pce_dev,
|
|||
|
||||
CRYPTO_CONFIG_REG));
|
||||
/* issue go to crypto */
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)),
|
||||
pce_dev->iobase + CRYPTO_GOPROC_REG);
|
||||
/*
|
||||
* Ensure previous instructions (setting the GO register)
|
||||
|
@ -1847,7 +1849,8 @@ static int _ce_setup_cipher_direct(struct qce_device *pce_dev,
|
|||
CRYPTO_CONFIG_REG));
|
||||
/* issue go to crypto */
|
||||
if (use_hw_key == false) {
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)),
|
||||
pce_dev->iobase + CRYPTO_GOPROC_REG);
|
||||
} else {
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
|
@ -1935,7 +1938,8 @@ static int _ce_f9_setup_direct(struct qce_device *pce_dev,
|
|||
QCE_WRITE_REG(pce_dev->reg.crypto_cfg_le, (pce_dev->iobase +
|
||||
CRYPTO_CONFIG_REG));
|
||||
/* write go */
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)),
|
||||
pce_dev->iobase + CRYPTO_GOPROC_REG);
|
||||
/*
|
||||
* Ensure previous instructions (setting the GO register)
|
||||
|
@ -2012,7 +2016,8 @@ static int _ce_f8_setup_direct(struct qce_device *pce_dev,
|
|||
QCE_WRITE_REG(pce_dev->reg.crypto_cfg_le, (pce_dev->iobase +
|
||||
CRYPTO_CONFIG_REG));
|
||||
/* write go */
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
QCE_WRITE_REG(((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)),
|
||||
pce_dev->iobase + CRYPTO_GOPROC_REG);
|
||||
/*
|
||||
* Ensure previous instructions (setting the GO register)
|
||||
|
@ -3336,8 +3341,8 @@ static int _setup_cipher_aes_cmdlistptrs(struct qce_device *pdev, int cri_index,
|
|||
pdev->reg.crypto_cfg_le, NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
@ -3450,8 +3455,8 @@ static int _setup_cipher_des_cmdlistptrs(struct qce_device *pdev, int cri_index,
|
|||
pdev->reg.crypto_cfg_le, NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
@ -3494,8 +3499,8 @@ static int _setup_cipher_null_cmdlistptrs(struct qce_device *pdev,
|
|||
NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
@ -3672,8 +3677,8 @@ static int _setup_auth_cmdlistptrs(struct qce_device *pdev, int cri_index,
|
|||
pdev->reg.crypto_cfg_le, NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
@ -3889,8 +3894,8 @@ static int _setup_aead_cmdlistptrs(struct qce_device *pdev,
|
|||
pdev->reg.crypto_cfg_le, NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
@ -4022,8 +4027,8 @@ static int _setup_aead_ccm_cmdlistptrs(struct qce_device *pdev, int cri_index,
|
|||
pdev->reg.crypto_cfg_le, NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
@ -4108,8 +4113,8 @@ static int _setup_f8_cmdlistptrs(struct qce_device *pdev, int cri_index,
|
|||
pdev->reg.crypto_cfg_le, NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
@ -4190,8 +4195,8 @@ static int _setup_f9_cmdlistptrs(struct qce_device *pdev, int cri_index,
|
|||
pdev->reg.crypto_cfg_le, NULL);
|
||||
|
||||
qce_add_cmd_element(pdev, &ce_vaddr, CRYPTO_GOPROC_REG,
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP)),
|
||||
&pcl_info->go_proc);
|
||||
((1 << CRYPTO_GO) | (1 << CRYPTO_RESULTS_DUMP) |
|
||||
(1 << CRYPTO_CLR_CNTXT)), &pcl_info->go_proc);
|
||||
|
||||
pcl_info->size = (uintptr_t)ce_vaddr - (uintptr_t)ce_vaddr_start;
|
||||
*pvaddr = (unsigned char *) ce_vaddr;
|
||||
|
|
Loading…
Add table
Reference in a new issue