aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/crypto
diff options
context:
space:
mode:
authorTadeusz Struk <tadeusz.struk@intel.com>2014-07-25 18:55:46 -0400
committerHerbert Xu <herbert@gondor.apana.org.au>2014-08-01 10:36:06 -0400
commit9a147cb3232fd8dbd44ed4628c6c0d05033d4c61 (patch)
tree56b4b76ad144e0960b04d07402256afbf78d9819 /drivers/crypto
parent8c1f8e3bbf60d0d06190be81f55d5199d52a463f (diff)
crypto: qat - change ae_num to ae_id
Change the logic how acceleration engines are indexed to make it easier to read. Aslo some return code values updates to better reflect what failed. Signed-off-by: Pingchao Yang <pingchao.yang@intel.com> Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto')
-rw-r--r--drivers/crypto/qat/qat_common/qat_hal.c26
-rw-r--r--drivers/crypto/qat/qat_common/qat_uclo.c67
2 files changed, 45 insertions, 48 deletions
diff --git a/drivers/crypto/qat/qat_common/qat_hal.c b/drivers/crypto/qat/qat_common/qat_hal.c
index 28da876ee268..da9626b6b6b4 100644
--- a/drivers/crypto/qat/qat_common/qat_hal.c
+++ b/drivers/crypto/qat/qat_common/qat_hal.c
@@ -424,7 +424,7 @@ static void qat_hal_reset_timestamp(struct icp_qat_fw_loader_handle *handle)
424 SET_GLB_CSR(handle, MISC_CONTROL, misc_ctl & 424 SET_GLB_CSR(handle, MISC_CONTROL, misc_ctl &
425 (~MC_TIMESTAMP_ENABLE)); 425 (~MC_TIMESTAMP_ENABLE));
426 426
427 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 427 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
428 if (!(handle->hal_handle->ae_mask & (1 << ae))) 428 if (!(handle->hal_handle->ae_mask & (1 << ae)))
429 continue; 429 continue;
430 qat_hal_wr_ae_csr(handle, ae, TIMESTAMP_LOW, 0); 430 qat_hal_wr_ae_csr(handle, ae, TIMESTAMP_LOW, 0);
@@ -492,7 +492,7 @@ int qat_hal_clr_reset(struct icp_qat_fw_loader_handle *handle)
492 goto out_err; 492 goto out_err;
493 493
494 /* Set undefined power-up/reset states to reasonable default values */ 494 /* Set undefined power-up/reset states to reasonable default values */
495 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 495 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
496 if (!(handle->hal_handle->ae_mask & (1 << ae))) 496 if (!(handle->hal_handle->ae_mask & (1 << ae)))
497 continue; 497 continue;
498 qat_hal_wr_ae_csr(handle, ae, CTX_ENABLES, 498 qat_hal_wr_ae_csr(handle, ae, CTX_ENABLES,
@@ -608,7 +608,7 @@ static int qat_hal_clear_gpr(struct icp_qat_fw_loader_handle *handle)
608 unsigned int savctx = 0; 608 unsigned int savctx = 0;
609 int ret = 0; 609 int ret = 0;
610 610
611 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 611 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
612 if (!(handle->hal_handle->ae_mask & (1 << ae))) 612 if (!(handle->hal_handle->ae_mask & (1 << ae)))
613 continue; 613 continue;
614 for (reg = 0; reg < ICP_QAT_UCLO_MAX_GPR_REG; reg++) { 614 for (reg = 0; reg < ICP_QAT_UCLO_MAX_GPR_REG; reg++) {
@@ -637,7 +637,7 @@ static int qat_hal_clear_gpr(struct icp_qat_fw_loader_handle *handle)
637 qat_hal_wr_ae_csr(handle, ae, CTX_SIG_EVENTS_ACTIVE, 0); 637 qat_hal_wr_ae_csr(handle, ae, CTX_SIG_EVENTS_ACTIVE, 0);
638 qat_hal_enable_ctx(handle, ae, ctx_mask); 638 qat_hal_enable_ctx(handle, ae, ctx_mask);
639 } 639 }
640 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 640 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
641 if (!(handle->hal_handle->ae_mask & (1 << ae))) 641 if (!(handle->hal_handle->ae_mask & (1 << ae)))
642 continue; 642 continue;
643 /* wait for AE to finish */ 643 /* wait for AE to finish */
@@ -674,17 +674,16 @@ static int qat_hal_clear_gpr(struct icp_qat_fw_loader_handle *handle)
674#define ICP_DH895XCC_PMISC_BAR 1 674#define ICP_DH895XCC_PMISC_BAR 1
675int qat_hal_init(struct adf_accel_dev *accel_dev) 675int qat_hal_init(struct adf_accel_dev *accel_dev)
676{ 676{
677 unsigned char ae = 0; 677 unsigned char ae;
678 unsigned int csr_val = 0; 678 unsigned int max_en_ae_id = 0;
679 unsigned int max_en_ae_num = 0; 679 struct icp_qat_fw_loader_handle *handle;
680 struct icp_qat_fw_loader_handle *handle = NULL;
681 struct adf_accel_pci *pci_info = &accel_dev->accel_pci_dev; 680 struct adf_accel_pci *pci_info = &accel_dev->accel_pci_dev;
682 struct adf_hw_device_data *hw_data = accel_dev->hw_device; 681 struct adf_hw_device_data *hw_data = accel_dev->hw_device;
683 struct adf_bar *bar = &pci_info->pci_bars[ADF_DH895XCC_PMISC_BAR]; 682 struct adf_bar *bar = &pci_info->pci_bars[ADF_DH895XCC_PMISC_BAR];
684 683
685 handle = kzalloc(sizeof(*handle), GFP_KERNEL); 684 handle = kzalloc(sizeof(*handle), GFP_KERNEL);
686 if (!handle) 685 if (!handle)
687 goto out_handle; 686 return -ENOMEM;
688 687
689 handle->hal_cap_g_ctl_csr_addr_v = bar->virt_addr + 688 handle->hal_cap_g_ctl_csr_addr_v = bar->virt_addr +
690 ICP_DH895XCC_CAP_OFFSET; 689 ICP_DH895XCC_CAP_OFFSET;
@@ -713,9 +712,9 @@ int qat_hal_init(struct adf_accel_dev *accel_dev)
713 handle->hal_handle->max_ustore; 712 handle->hal_handle->max_ustore;
714 handle->hal_handle->aes[ae].live_ctx_mask = 713 handle->hal_handle->aes[ae].live_ctx_mask =
715 ICP_QAT_UCLO_AE_ALL_CTX; 714 ICP_QAT_UCLO_AE_ALL_CTX;
716 max_en_ae_num = ae; 715 max_en_ae_id = ae;
717 } 716 }
718 handle->hal_handle->ae_max_num = max_en_ae_num; 717 handle->hal_handle->ae_max_num = max_en_ae_id + 1;
719 /* take all AEs out of reset */ 718 /* take all AEs out of reset */
720 if (qat_hal_clr_reset(handle)) { 719 if (qat_hal_clr_reset(handle)) {
721 pr_err("QAT: qat_hal_clr_reset error\n"); 720 pr_err("QAT: qat_hal_clr_reset error\n");
@@ -724,7 +723,9 @@ int qat_hal_init(struct adf_accel_dev *accel_dev)
724 if (qat_hal_clear_gpr(handle)) 723 if (qat_hal_clear_gpr(handle))
725 goto out_err; 724 goto out_err;
726 /* Set SIGNATURE_ENABLE[0] to 0x1 in order to enable ALU_OUT csr */ 725 /* Set SIGNATURE_ENABLE[0] to 0x1 in order to enable ALU_OUT csr */
727 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 726 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
727 unsigned int csr_val = 0;
728
728 if (!(hw_data->ae_mask & (1 << ae))) 729 if (!(hw_data->ae_mask & (1 << ae)))
729 continue; 730 continue;
730 qat_hal_rd_ae_csr(handle, ae, SIGNATURE_ENABLE, &csr_val); 731 qat_hal_rd_ae_csr(handle, ae, SIGNATURE_ENABLE, &csr_val);
@@ -738,7 +739,6 @@ out_err:
738 kfree(handle->hal_handle); 739 kfree(handle->hal_handle);
739out_hal_handle: 740out_hal_handle:
740 kfree(handle); 741 kfree(handle);
741out_handle:
742 return -EFAULT; 742 return -EFAULT;
743} 743}
744 744
diff --git a/drivers/crypto/qat/qat_common/qat_uclo.c b/drivers/crypto/qat/qat_common/qat_uclo.c
index 557fa606da89..ebd5da03dc71 100644
--- a/drivers/crypto/qat/qat_common/qat_uclo.c
+++ b/drivers/crypto/qat/qat_common/qat_uclo.c
@@ -214,11 +214,10 @@ qat_uclo_cleanup_batch_init_list(struct icp_qat_fw_loader_handle *handle,
214 214
215static int qat_uclo_parse_num(char *str, unsigned int *num) 215static int qat_uclo_parse_num(char *str, unsigned int *num)
216{ 216{
217 char buf[16]; 217 char buf[16] = {0};
218 unsigned long ae = 0; 218 unsigned long ae = 0;
219 int i; 219 int i;
220 220
221 memset(buf, '\0', 16);
222 strncpy(buf, str, 15); 221 strncpy(buf, str, 15);
223 for (i = 0; i < 16; i++) { 222 for (i = 0; i < 16; i++) {
224 if (!isdigit(buf[i])) { 223 if (!isdigit(buf[i])) {
@@ -418,13 +417,13 @@ static int qat_uclo_init_ustore(struct icp_qat_fw_loader_handle *handle,
418 fill_data = kcalloc(ICP_QAT_UCLO_MAX_USTORE, sizeof(uint64_t), 417 fill_data = kcalloc(ICP_QAT_UCLO_MAX_USTORE, sizeof(uint64_t),
419 GFP_KERNEL); 418 GFP_KERNEL);
420 if (!fill_data) 419 if (!fill_data)
421 return -EFAULT; 420 return -ENOMEM;
422 for (i = 0; i < ICP_QAT_UCLO_MAX_USTORE; i++) 421 for (i = 0; i < ICP_QAT_UCLO_MAX_USTORE; i++)
423 memcpy(&fill_data[i], &uof_image->fill_pattern, 422 memcpy(&fill_data[i], &uof_image->fill_pattern,
424 sizeof(uint64_t)); 423 sizeof(uint64_t));
425 page = image->page; 424 page = image->page;
426 425
427 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 426 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
428 if (!test_bit(ae, (unsigned long *)&uof_image->ae_assigned)) 427 if (!test_bit(ae, (unsigned long *)&uof_image->ae_assigned))
429 continue; 428 continue;
430 ustore_size = obj_handle->ae_data[ae].eff_ustore_size; 429 ustore_size = obj_handle->ae_data[ae].eff_ustore_size;
@@ -442,11 +441,9 @@ static int qat_uclo_init_ustore(struct icp_qat_fw_loader_handle *handle,
442 441
443static int qat_uclo_init_memory(struct icp_qat_fw_loader_handle *handle) 442static int qat_uclo_init_memory(struct icp_qat_fw_loader_handle *handle)
444{ 443{
445 unsigned int i; 444 int i, ae;
446 int status = 0;
447 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle; 445 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle;
448 struct icp_qat_uof_initmem *initmem = obj_handle->init_mem_tab.init_mem; 446 struct icp_qat_uof_initmem *initmem = obj_handle->init_mem_tab.init_mem;
449 int ae;
450 447
451 for (i = 0; i < obj_handle->init_mem_tab.entry_num; i++) { 448 for (i = 0; i < obj_handle->init_mem_tab.entry_num; i++) {
452 if (initmem->num_in_bytes) { 449 if (initmem->num_in_bytes) {
@@ -473,7 +470,7 @@ static int qat_uclo_init_memory(struct icp_qat_fw_loader_handle *handle)
473 &obj_handle-> 470 &obj_handle->
474 umem_init_tab[ae]); 471 umem_init_tab[ae]);
475 } 472 }
476 return status; 473 return 0;
477} 474}
478 475
479static void *qat_uclo_find_chunk(struct icp_qat_uof_objhdr *obj_hdr, 476static void *qat_uclo_find_chunk(struct icp_qat_uof_objhdr *obj_hdr,
@@ -526,7 +523,7 @@ qat_uclo_map_chunk(char *buf, struct icp_qat_uof_filehdr *file_hdr,
526{ 523{
527 struct icp_qat_uof_filechunkhdr *file_chunk; 524 struct icp_qat_uof_filechunkhdr *file_chunk;
528 struct icp_qat_uclo_objhdr *obj_hdr; 525 struct icp_qat_uclo_objhdr *obj_hdr;
529 void *chunk; 526 char *chunk;
530 int i; 527 int i;
531 528
532 file_chunk = (struct icp_qat_uof_filechunkhdr *) 529 file_chunk = (struct icp_qat_uof_filechunkhdr *)
@@ -536,7 +533,7 @@ qat_uclo_map_chunk(char *buf, struct icp_qat_uof_filehdr *file_hdr,
536 ICP_QAT_UOF_OBJID_LEN)) { 533 ICP_QAT_UOF_OBJID_LEN)) {
537 chunk = buf + file_chunk->offset; 534 chunk = buf + file_chunk->offset;
538 if (file_chunk->checksum != qat_uclo_calc_str_checksum( 535 if (file_chunk->checksum != qat_uclo_calc_str_checksum(
539 (char *)chunk, file_chunk->size)) 536 chunk, file_chunk->size))
540 break; 537 break;
541 obj_hdr = kzalloc(sizeof(*obj_hdr), GFP_KERNEL); 538 obj_hdr = kzalloc(sizeof(*obj_hdr), GFP_KERNEL);
542 if (!obj_hdr) 539 if (!obj_hdr)
@@ -595,7 +592,7 @@ qat_uclo_check_image_compat(struct icp_qat_uof_encap_obj *encap_uof_obj,
595 return 0; 592 return 0;
596} 593}
597 594
598static void qat_uclo_map_image_pages(struct icp_qat_uof_encap_obj 595static void qat_uclo_map_image_page(struct icp_qat_uof_encap_obj
599 *encap_uof_obj, 596 *encap_uof_obj,
600 struct icp_qat_uof_image *img, 597 struct icp_qat_uof_image *img,
601 struct icp_qat_uclo_encap_page *page) 598 struct icp_qat_uclo_encap_page *page)
@@ -631,7 +628,7 @@ static int qat_uclo_map_uimage(struct icp_qat_uclo_objhandle *obj_handle,
631 struct icp_qat_uclo_encapme *ae_uimage, 628 struct icp_qat_uclo_encapme *ae_uimage,
632 int max_image) 629 int max_image)
633{ 630{
634 int a = 0, i; 631 int i, j;
635 struct icp_qat_uof_chunkhdr *chunk_hdr = NULL; 632 struct icp_qat_uof_chunkhdr *chunk_hdr = NULL;
636 struct icp_qat_uof_image *image; 633 struct icp_qat_uof_image *image;
637 struct icp_qat_uof_objtable *ae_regtab; 634 struct icp_qat_uof_objtable *ae_regtab;
@@ -640,7 +637,7 @@ static int qat_uclo_map_uimage(struct icp_qat_uclo_objhandle *obj_handle,
640 struct icp_qat_uof_encap_obj *encap_uof_obj = 637 struct icp_qat_uof_encap_obj *encap_uof_obj =
641 &obj_handle->encap_uof_obj; 638 &obj_handle->encap_uof_obj;
642 639
643 for (a = 0; a < max_image; a++) { 640 for (j = 0; j < max_image; j++) {
644 chunk_hdr = qat_uclo_find_chunk(encap_uof_obj->obj_hdr, 641 chunk_hdr = qat_uclo_find_chunk(encap_uof_obj->obj_hdr,
645 ICP_QAT_UOF_IMAG, chunk_hdr); 642 ICP_QAT_UOF_IMAG, chunk_hdr);
646 if (!chunk_hdr) 643 if (!chunk_hdr)
@@ -650,37 +647,37 @@ static int qat_uclo_map_uimage(struct icp_qat_uclo_objhandle *obj_handle,
650 ae_regtab = (struct icp_qat_uof_objtable *) 647 ae_regtab = (struct icp_qat_uof_objtable *)
651 (image->reg_tab_offset + 648 (image->reg_tab_offset +
652 obj_handle->obj_hdr->file_buff); 649 obj_handle->obj_hdr->file_buff);
653 ae_uimage[a].ae_reg_num = ae_regtab->entry_num; 650 ae_uimage[j].ae_reg_num = ae_regtab->entry_num;
654 ae_uimage[a].ae_reg = (struct icp_qat_uof_ae_reg *) 651 ae_uimage[j].ae_reg = (struct icp_qat_uof_ae_reg *)
655 (((char *)ae_regtab) + 652 (((char *)ae_regtab) +
656 sizeof(struct icp_qat_uof_objtable)); 653 sizeof(struct icp_qat_uof_objtable));
657 init_reg_sym_tab = (struct icp_qat_uof_objtable *) 654 init_reg_sym_tab = (struct icp_qat_uof_objtable *)
658 (image->init_reg_sym_tab + 655 (image->init_reg_sym_tab +
659 obj_handle->obj_hdr->file_buff); 656 obj_handle->obj_hdr->file_buff);
660 ae_uimage[a].init_regsym_num = init_reg_sym_tab->entry_num; 657 ae_uimage[j].init_regsym_num = init_reg_sym_tab->entry_num;
661 ae_uimage[a].init_regsym = (struct icp_qat_uof_init_regsym *) 658 ae_uimage[j].init_regsym = (struct icp_qat_uof_init_regsym *)
662 (((char *)init_reg_sym_tab) + 659 (((char *)init_reg_sym_tab) +
663 sizeof(struct icp_qat_uof_objtable)); 660 sizeof(struct icp_qat_uof_objtable));
664 sbreak_tab = (struct icp_qat_uof_objtable *) 661 sbreak_tab = (struct icp_qat_uof_objtable *)
665 (image->sbreak_tab + obj_handle->obj_hdr->file_buff); 662 (image->sbreak_tab + obj_handle->obj_hdr->file_buff);
666 ae_uimage[a].sbreak_num = sbreak_tab->entry_num; 663 ae_uimage[j].sbreak_num = sbreak_tab->entry_num;
667 ae_uimage[a].sbreak = (struct icp_qat_uof_sbreak *) 664 ae_uimage[j].sbreak = (struct icp_qat_uof_sbreak *)
668 (((char *)sbreak_tab) + 665 (((char *)sbreak_tab) +
669 sizeof(struct icp_qat_uof_objtable)); 666 sizeof(struct icp_qat_uof_objtable));
670 ae_uimage[a].img_ptr = image; 667 ae_uimage[j].img_ptr = image;
671 if (qat_uclo_check_image_compat(encap_uof_obj, image)) 668 if (qat_uclo_check_image_compat(encap_uof_obj, image))
672 goto out_err; 669 goto out_err;
673 ae_uimage[a].page = 670 ae_uimage[j].page =
674 kzalloc(sizeof(struct icp_qat_uclo_encap_page), 671 kzalloc(sizeof(struct icp_qat_uclo_encap_page),
675 GFP_KERNEL); 672 GFP_KERNEL);
676 if (!ae_uimage[a].page) 673 if (!ae_uimage[j].page)
677 goto out_err; 674 goto out_err;
678 qat_uclo_map_image_pages(encap_uof_obj, image, 675 qat_uclo_map_image_page(encap_uof_obj, image,
679 ae_uimage[a].page); 676 ae_uimage[j].page);
680 } 677 }
681 return a; 678 return j;
682out_err: 679out_err:
683 for (i = 0; i < a; i++) 680 for (i = 0; i < j; i++)
684 kfree(ae_uimage[i].page); 681 kfree(ae_uimage[i].page);
685 return 0; 682 return 0;
686} 683}
@@ -875,7 +872,7 @@ static int qat_uclo_init_globals(struct icp_qat_fw_loader_handle *handle)
875 return -EINVAL; 872 return -EINVAL;
876 } 873 }
877 } 874 }
878 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 875 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
879 for (s = 0; s < obj_handle->ae_data[ae].slice_num; s++) { 876 for (s = 0; s < obj_handle->ae_data[ae].slice_num; s++) {
880 if (!obj_handle->ae_data[ae].ae_slices[s].encap_image) 877 if (!obj_handle->ae_data[ae].ae_slices[s].encap_image)
881 continue; 878 continue;
@@ -896,7 +893,7 @@ static int qat_uclo_set_ae_mode(struct icp_qat_fw_loader_handle *handle)
896 struct icp_qat_uclo_aedata *ae_data; 893 struct icp_qat_uclo_aedata *ae_data;
897 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle; 894 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle;
898 895
899 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 896 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
900 if (!test_bit(ae, 897 if (!test_bit(ae,
901 (unsigned long *)&handle->hal_handle->ae_mask)) 898 (unsigned long *)&handle->hal_handle->ae_mask))
902 continue; 899 continue;
@@ -1041,7 +1038,7 @@ out_objbuf_err:
1041void qat_uclo_del_uof_obj(struct icp_qat_fw_loader_handle *handle) 1038void qat_uclo_del_uof_obj(struct icp_qat_fw_loader_handle *handle)
1042{ 1039{
1043 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle; 1040 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle;
1044 int a; 1041 unsigned int a;
1045 1042
1046 if (!obj_handle) 1043 if (!obj_handle)
1047 return; 1044 return;
@@ -1050,7 +1047,7 @@ void qat_uclo_del_uof_obj(struct icp_qat_fw_loader_handle *handle)
1050 for (a = 0; a < obj_handle->uimage_num; a++) 1047 for (a = 0; a < obj_handle->uimage_num; a++)
1051 kfree(obj_handle->ae_uimage[a].page); 1048 kfree(obj_handle->ae_uimage[a].page);
1052 1049
1053 for (a = 0; a <= (int)handle->hal_handle->ae_max_num; a++) 1050 for (a = 0; a < handle->hal_handle->ae_max_num; a++)
1054 qat_uclo_free_ae_data(&obj_handle->ae_data[a]); 1051 qat_uclo_free_ae_data(&obj_handle->ae_data[a]);
1055 1052
1056 kfree(obj_handle->obj_hdr); 1053 kfree(obj_handle->obj_hdr);
@@ -1127,8 +1124,8 @@ static void qat_uclo_wr_uimage_raw_page(struct icp_qat_fw_loader_handle *handle,
1127 } 1124 }
1128} 1125}
1129 1126
1130static void qat_uclo_wr_uimage_pages(struct icp_qat_fw_loader_handle *handle, 1127static void qat_uclo_wr_uimage_page(struct icp_qat_fw_loader_handle *handle,
1131 struct icp_qat_uof_image *image) 1128 struct icp_qat_uof_image *image)
1132{ 1129{
1133 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle; 1130 struct icp_qat_uclo_objhandle *obj_handle = handle->obj_handle;
1134 unsigned int ctx_mask, s; 1131 unsigned int ctx_mask, s;
@@ -1142,7 +1139,7 @@ static void qat_uclo_wr_uimage_pages(struct icp_qat_fw_loader_handle *handle,
1142 ctx_mask = 0x55; 1139 ctx_mask = 0x55;
1143 /* load the default page and set assigned CTX PC 1140 /* load the default page and set assigned CTX PC
1144 * to the entrypoint address */ 1141 * to the entrypoint address */
1145 for (ae = 0; ae <= handle->hal_handle->ae_max_num; ae++) { 1142 for (ae = 0; ae < handle->hal_handle->ae_max_num; ae++) {
1146 if (!test_bit(ae, (unsigned long *)&image->ae_assigned)) 1143 if (!test_bit(ae, (unsigned long *)&image->ae_assigned))
1147 continue; 1144 continue;
1148 /* find the slice to which this image is assigned */ 1145 /* find the slice to which this image is assigned */
@@ -1181,8 +1178,8 @@ int qat_uclo_wr_all_uimage(struct icp_qat_fw_loader_handle *handle)
1181 return -EINVAL; 1178 return -EINVAL;
1182 if (qat_uclo_init_ustore(handle, &obj_handle->ae_uimage[i])) 1179 if (qat_uclo_init_ustore(handle, &obj_handle->ae_uimage[i]))
1183 return -EINVAL; 1180 return -EINVAL;
1184 qat_uclo_wr_uimage_pages(handle, 1181 qat_uclo_wr_uimage_page(handle,
1185 obj_handle->ae_uimage[i].img_ptr); 1182 obj_handle->ae_uimage[i].img_ptr);
1186 } 1183 }
1187 return 0; 1184 return 0;
1188} 1185}