Lines Matching refs:zc

578 static inline struct zcrypt_queue *zcrypt_pick_queue(struct zcrypt_card *zc,  in zcrypt_pick_queue()  argument
585 zcrypt_card_get(zc); in zcrypt_pick_queue()
588 atomic_add(weight, &zc->load); in zcrypt_pick_queue()
595 static inline void zcrypt_drop_queue(struct zcrypt_card *zc, in zcrypt_drop_queue() argument
601 atomic_sub(weight, &zc->load); in zcrypt_drop_queue()
605 zcrypt_card_put(zc); in zcrypt_drop_queue()
609 static inline bool zcrypt_card_compare(struct zcrypt_card *zc, in zcrypt_card_compare() argument
616 weight += atomic_read(&zc->load); in zcrypt_card_compare()
619 return atomic64_read(&zc->card->total_request_count) < in zcrypt_card_compare()
646 struct zcrypt_card *zc, *pref_zc; in zcrypt_rsa_modexpo() local
679 for_each_zcrypt_card(zc) { in zcrypt_rsa_modexpo()
681 if (!zc->online || !zc->card->config || zc->card->chkstop || in zcrypt_rsa_modexpo()
682 !(zc->card->hwinfo.accel || zc->card->hwinfo.cca)) in zcrypt_rsa_modexpo()
685 if (zc->min_mod_size > mex->inputdatalength || in zcrypt_rsa_modexpo()
686 zc->max_mod_size < mex->inputdatalength) in zcrypt_rsa_modexpo()
689 if (!zcrypt_check_card(perms, zc->card->id)) in zcrypt_rsa_modexpo()
692 wgt = zc->speed_rating[func_code]; in zcrypt_rsa_modexpo()
695 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in zcrypt_rsa_modexpo()
697 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in zcrypt_rsa_modexpo()
699 for_each_zcrypt_queue(zq, zc) { in zcrypt_rsa_modexpo()
715 pref_zc = zc; in zcrypt_rsa_modexpo()
751 struct zcrypt_card *zc, *pref_zc; in zcrypt_rsa_crt() local
784 for_each_zcrypt_card(zc) { in zcrypt_rsa_crt()
786 if (!zc->online || !zc->card->config || zc->card->chkstop || in zcrypt_rsa_crt()
787 !(zc->card->hwinfo.accel || zc->card->hwinfo.cca)) in zcrypt_rsa_crt()
790 if (zc->min_mod_size > crt->inputdatalength || in zcrypt_rsa_crt()
791 zc->max_mod_size < crt->inputdatalength) in zcrypt_rsa_crt()
794 if (!zcrypt_check_card(perms, zc->card->id)) in zcrypt_rsa_crt()
797 wgt = zc->speed_rating[func_code]; in zcrypt_rsa_crt()
800 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in zcrypt_rsa_crt()
802 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in zcrypt_rsa_crt()
804 for_each_zcrypt_queue(zq, zc) { in zcrypt_rsa_crt()
820 pref_zc = zc; in zcrypt_rsa_crt()
857 struct zcrypt_card *zc, *pref_zc; in _zcrypt_send_cprb() local
905 for_each_zcrypt_card(zc) { in _zcrypt_send_cprb()
907 if (!zc->online || !zc->card->config || zc->card->chkstop || in _zcrypt_send_cprb()
908 !zc->card->hwinfo.cca) in _zcrypt_send_cprb()
912 xcrb->user_defined != zc->card->id) in _zcrypt_send_cprb()
915 if (ap_msg.len > zc->card->maxmsgsize) in _zcrypt_send_cprb()
918 if (!zcrypt_check_card(perms, zc->card->id)) in _zcrypt_send_cprb()
921 wgt = speed_idx_cca(func_code) * zc->speed_rating[SECKEY]; in _zcrypt_send_cprb()
924 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in _zcrypt_send_cprb()
926 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in _zcrypt_send_cprb()
928 for_each_zcrypt_queue(zq, zc) { in _zcrypt_send_cprb()
946 pref_zc = zc; in _zcrypt_send_cprb()
1044 struct zcrypt_card *zc, *pref_zc; in _zcrypt_send_ep11_cprb() local
1101 for_each_zcrypt_card(zc) { in _zcrypt_send_ep11_cprb()
1103 if (!zc->online || !zc->card->config || zc->card->chkstop || in _zcrypt_send_ep11_cprb()
1104 !zc->card->hwinfo.ep11) in _zcrypt_send_ep11_cprb()
1108 !is_desired_ep11_card(zc->card->id, target_num, targets)) in _zcrypt_send_ep11_cprb()
1111 if (ap_msg.len > zc->card->maxmsgsize) in _zcrypt_send_ep11_cprb()
1114 if (!zcrypt_check_card(perms, zc->card->id)) in _zcrypt_send_ep11_cprb()
1117 wgt = speed_idx_ep11(func_code) * zc->speed_rating[SECKEY]; in _zcrypt_send_ep11_cprb()
1120 AP_QID_CARD(tr->last_qid) == zc->card->id) ? in _zcrypt_send_ep11_cprb()
1122 if (!zcrypt_card_compare(zc, pref_zc, wgt + cpen, pref_wgt)) in _zcrypt_send_ep11_cprb()
1124 for_each_zcrypt_queue(zq, zc) { in _zcrypt_send_ep11_cprb()
1143 pref_zc = zc; in _zcrypt_send_ep11_cprb()
1216 struct zcrypt_card *zc, *pref_zc; in zcrypt_rng() local
1237 for_each_zcrypt_card(zc) { in zcrypt_rng()
1239 if (!zc->online || !zc->card->config || zc->card->chkstop || in zcrypt_rng()
1240 !zc->card->hwinfo.cca) in zcrypt_rng()
1243 wgt = zc->speed_rating[func_code]; in zcrypt_rng()
1244 if (!zcrypt_card_compare(zc, pref_zc, wgt, pref_wgt)) in zcrypt_rng()
1246 for_each_zcrypt_queue(zq, zc) { in zcrypt_rng()
1253 pref_zc = zc; in zcrypt_rng()
1283 struct zcrypt_card *zc; in zcrypt_device_status_mask() local
1292 for_each_zcrypt_card(zc) { in zcrypt_device_status_mask()
1293 for_each_zcrypt_queue(zq, zc) { in zcrypt_device_status_mask()
1299 stat->hwtype = zc->card->ap_dev.device_type; in zcrypt_device_status_mask()
1300 stat->functions = zc->card->hwinfo.fac >> 26; in zcrypt_device_status_mask()
1311 struct zcrypt_card *zc; in zcrypt_device_status_mask_ext() local
1320 for_each_zcrypt_card(zc) { in zcrypt_device_status_mask_ext()
1321 for_each_zcrypt_queue(zq, zc) { in zcrypt_device_status_mask_ext()
1327 stat->hwtype = zc->card->ap_dev.device_type; in zcrypt_device_status_mask_ext()
1328 stat->functions = zc->card->hwinfo.fac >> 26; in zcrypt_device_status_mask_ext()
1340 struct zcrypt_card *zc; in zcrypt_device_status_ext() local
1346 for_each_zcrypt_card(zc) { in zcrypt_device_status_ext()
1347 for_each_zcrypt_queue(zq, zc) { in zcrypt_device_status_ext()
1350 devstat->hwtype = zc->card->ap_dev.device_type; in zcrypt_device_status_ext()
1351 devstat->functions = zc->card->hwinfo.fac >> 26; in zcrypt_device_status_ext()
1367 struct zcrypt_card *zc; in zcrypt_status_mask() local
1373 for_each_zcrypt_card(zc) { in zcrypt_status_mask()
1374 for_each_zcrypt_queue(zq, zc) { in zcrypt_status_mask()
1379 status[card] = zc->online ? zc->user_space_type : 0x0d; in zcrypt_status_mask()
1387 struct zcrypt_card *zc; in zcrypt_qdepth_mask() local
1394 for_each_zcrypt_card(zc) { in zcrypt_qdepth_mask()
1395 for_each_zcrypt_queue(zq, zc) { in zcrypt_qdepth_mask()
1413 struct zcrypt_card *zc; in zcrypt_perdev_reqcnt() local
1421 for_each_zcrypt_card(zc) { in zcrypt_perdev_reqcnt()
1422 for_each_zcrypt_queue(zq, zc) { in zcrypt_perdev_reqcnt()
1439 struct zcrypt_card *zc; in zcrypt_pendingq_count() local
1446 for_each_zcrypt_card(zc) { in zcrypt_pendingq_count()
1447 for_each_zcrypt_queue(zq, zc) { in zcrypt_pendingq_count()
1462 struct zcrypt_card *zc; in zcrypt_requestq_count() local
1469 for_each_zcrypt_card(zc) { in zcrypt_requestq_count()
1470 for_each_zcrypt_queue(zq, zc) { in zcrypt_requestq_count()