Lines Matching full:zc

573 static inline struct zcrypt_queue *zcrypt_pick_queue(struct zcrypt_card *zc,  in zcrypt_pick_queue()  argument
580 zcrypt_card_get(zc); in zcrypt_pick_queue()
583 atomic_add(weight, &zc->load); in zcrypt_pick_queue()
590 static inline void zcrypt_drop_queue(struct zcrypt_card *zc, in zcrypt_drop_queue() argument
596 atomic_sub(weight, &zc->load); in zcrypt_drop_queue()
600 zcrypt_card_put(zc); in zcrypt_drop_queue()
604 static inline bool zcrypt_card_compare(struct zcrypt_card *zc, in zcrypt_card_compare() argument
611 weight += atomic_read(&zc->load); in zcrypt_card_compare()
614 return atomic64_read(&zc->card->total_request_count) < in zcrypt_card_compare()
641 struct zcrypt_card *zc, *pref_zc; in zcrypt_rsa_modexpo() local
673 for_each_zcrypt_card(zc) { in zcrypt_rsa_modexpo()
675 if (!zc->online || !zc->card->config || zc->card->chkstop || in zcrypt_rsa_modexpo()
676 !(zc->card->hwinfo.accel || zc->card->hwinfo.cca)) in zcrypt_rsa_modexpo()
679 if (zc->min_mod_size > mex->inputdatalength || in zcrypt_rsa_modexpo()
680 zc->max_mod_size < mex->inputdatalength) in zcrypt_rsa_modexpo()
683 if (!zcrypt_check_card(perms, zc->card->id)) in zcrypt_rsa_modexpo()
686 wgt = zc->speed_rating[func_code]; in zcrypt_rsa_modexpo()
689 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in zcrypt_rsa_modexpo()
691 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in zcrypt_rsa_modexpo()
693 for_each_zcrypt_queue(zq, zc) { in zcrypt_rsa_modexpo()
709 pref_zc = zc; in zcrypt_rsa_modexpo()
745 struct zcrypt_card *zc, *pref_zc; in zcrypt_rsa_crt() local
777 for_each_zcrypt_card(zc) { in zcrypt_rsa_crt()
779 if (!zc->online || !zc->card->config || zc->card->chkstop || in zcrypt_rsa_crt()
780 !(zc->card->hwinfo.accel || zc->card->hwinfo.cca)) in zcrypt_rsa_crt()
783 if (zc->min_mod_size > crt->inputdatalength || in zcrypt_rsa_crt()
784 zc->max_mod_size < crt->inputdatalength) in zcrypt_rsa_crt()
787 if (!zcrypt_check_card(perms, zc->card->id)) in zcrypt_rsa_crt()
790 wgt = zc->speed_rating[func_code]; in zcrypt_rsa_crt()
793 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in zcrypt_rsa_crt()
795 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in zcrypt_rsa_crt()
797 for_each_zcrypt_queue(zq, zc) { in zcrypt_rsa_crt()
813 pref_zc = zc; in zcrypt_rsa_crt()
849 struct zcrypt_card *zc, *pref_zc; in _zcrypt_send_cprb() local
893 for_each_zcrypt_card(zc) { in _zcrypt_send_cprb()
895 if (!zc->online || !zc->card->config || zc->card->chkstop || in _zcrypt_send_cprb()
896 !zc->card->hwinfo.cca) in _zcrypt_send_cprb()
900 xcrb->user_defined != zc->card->id) in _zcrypt_send_cprb()
903 if (ap_msg.len > zc->card->maxmsgsize) in _zcrypt_send_cprb()
906 if (!zcrypt_check_card(perms, zc->card->id)) in _zcrypt_send_cprb()
909 wgt = speed_idx_cca(func_code) * zc->speed_rating[SECKEY]; in _zcrypt_send_cprb()
912 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in _zcrypt_send_cprb()
914 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in _zcrypt_send_cprb()
916 for_each_zcrypt_queue(zq, zc) { in _zcrypt_send_cprb()
934 pref_zc = zc; in _zcrypt_send_cprb()
1031 struct zcrypt_card *zc, *pref_zc; in _zcrypt_send_ep11_cprb() local
1089 for_each_zcrypt_card(zc) { in _zcrypt_send_ep11_cprb()
1091 if (!zc->online || !zc->card->config || zc->card->chkstop || in _zcrypt_send_ep11_cprb()
1092 !zc->card->hwinfo.ep11) in _zcrypt_send_ep11_cprb()
1096 !is_desired_ep11_card(zc->card->id, target_num, targets)) in _zcrypt_send_ep11_cprb()
1099 if (ap_msg.len > zc->card->maxmsgsize) in _zcrypt_send_ep11_cprb()
1102 if (!zcrypt_check_card(perms, zc->card->id)) in _zcrypt_send_ep11_cprb()
1105 wgt = speed_idx_ep11(func_code) * zc->speed_rating[SECKEY]; in _zcrypt_send_ep11_cprb()
1108 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in _zcrypt_send_ep11_cprb()
1110 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in _zcrypt_send_ep11_cprb()
1112 for_each_zcrypt_queue(zq, zc) { in _zcrypt_send_ep11_cprb()
1131 pref_zc = zc; in _zcrypt_send_ep11_cprb()
1204 struct zcrypt_card *zc, *pref_zc; in zcrypt_rng() local
1223 for_each_zcrypt_card(zc) { in zcrypt_rng()
1225 if (!zc->online || !zc->card->config || zc->card->chkstop || in zcrypt_rng()
1226 !zc->card->hwinfo.cca) in zcrypt_rng()
1229 wgt = zc->speed_rating[func_code]; in zcrypt_rng()
1230 if (!zcrypt_card_compare(zc, pref_zc, wgt, pref_wgt)) in zcrypt_rng()
1232 for_each_zcrypt_queue(zq, zc) { in zcrypt_rng()
1239 pref_zc = zc; in zcrypt_rng()
1269 struct zcrypt_card *zc; in zcrypt_device_status_mask() local
1278 for_each_zcrypt_card(zc) { in zcrypt_device_status_mask()
1279 for_each_zcrypt_queue(zq, zc) { in zcrypt_device_status_mask()
1285 stat->hwtype = zc->card->ap_dev.device_type; in zcrypt_device_status_mask()
1286 stat->functions = zc->card->hwinfo.fac >> 26; in zcrypt_device_status_mask()
1296 struct zcrypt_card *zc; in zcrypt_device_status_mask_ext() local
1302 for_each_zcrypt_card(zc) { in zcrypt_device_status_mask_ext()
1303 for_each_zcrypt_queue(zq, zc) { in zcrypt_device_status_mask_ext()
1307 stat->hwtype = zc->card->ap_dev.device_type; in zcrypt_device_status_mask_ext()
1308 stat->functions = zc->card->hwinfo.fac >> 26; in zcrypt_device_status_mask_ext()
1320 struct zcrypt_card *zc; in zcrypt_device_status_ext() local
1326 for_each_zcrypt_card(zc) { in zcrypt_device_status_ext()
1327 for_each_zcrypt_queue(zq, zc) { in zcrypt_device_status_ext()
1330 devstat->hwtype = zc->card->ap_dev.device_type; in zcrypt_device_status_ext()
1331 devstat->functions = zc->card->hwinfo.fac >> 26; in zcrypt_device_status_ext()
1347 struct zcrypt_card *zc; in zcrypt_status_mask() local
1353 for_each_zcrypt_card(zc) { in zcrypt_status_mask()
1354 for_each_zcrypt_queue(zq, zc) { in zcrypt_status_mask()
1359 status[card] = zc->online ? zc->user_space_type : 0x0d; in zcrypt_status_mask()
1367 struct zcrypt_card *zc; in zcrypt_qdepth_mask() local
1374 for_each_zcrypt_card(zc) { in zcrypt_qdepth_mask()
1375 for_each_zcrypt_queue(zq, zc) { in zcrypt_qdepth_mask()
1393 struct zcrypt_card *zc; in zcrypt_perdev_reqcnt() local
1401 for_each_zcrypt_card(zc) { in zcrypt_perdev_reqcnt()
1402 for_each_zcrypt_queue(zq, zc) { in zcrypt_perdev_reqcnt()
1419 struct zcrypt_card *zc; in zcrypt_pendingq_count() local
1426 for_each_zcrypt_card(zc) { in zcrypt_pendingq_count()
1427 for_each_zcrypt_queue(zq, zc) { in zcrypt_pendingq_count()
1442 struct zcrypt_card *zc; in zcrypt_requestq_count() local
1449 for_each_zcrypt_card(zc) { in zcrypt_requestq_count()
1450 for_each_zcrypt_queue(zq, zc) { in zcrypt_requestq_count()