req_mgr_h 88 drivers/crypto/ccree/cc_request_mgr.c struct cc_req_mgr_handle *req_mgr_h = drvdata->request_mgr_handle; req_mgr_h 91 drivers/crypto/ccree/cc_request_mgr.c if (!req_mgr_h) req_mgr_h 94 drivers/crypto/ccree/cc_request_mgr.c if (req_mgr_h->dummy_comp_buff_dma) { req_mgr_h 95 drivers/crypto/ccree/cc_request_mgr.c dma_free_coherent(dev, sizeof(u32), req_mgr_h->dummy_comp_buff, req_mgr_h 96 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->dummy_comp_buff_dma); req_mgr_h 99 drivers/crypto/ccree/cc_request_mgr.c dev_dbg(dev, "max_used_hw_slots=%d\n", (req_mgr_h->hw_queue_size - req_mgr_h 100 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->min_free_hw_slots)); req_mgr_h 101 drivers/crypto/ccree/cc_request_mgr.c dev_dbg(dev, "max_used_sw_slots=%d\n", req_mgr_h->max_used_sw_slots); req_mgr_h 104 drivers/crypto/ccree/cc_request_mgr.c flush_workqueue(req_mgr_h->workq); req_mgr_h 105 drivers/crypto/ccree/cc_request_mgr.c destroy_workqueue(req_mgr_h->workq); req_mgr_h 108 drivers/crypto/ccree/cc_request_mgr.c tasklet_kill(&req_mgr_h->comptask); req_mgr_h 110 drivers/crypto/ccree/cc_request_mgr.c kzfree(req_mgr_h); req_mgr_h 116 drivers/crypto/ccree/cc_request_mgr.c struct cc_req_mgr_handle *req_mgr_h; req_mgr_h 120 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h = kzalloc(sizeof(*req_mgr_h), GFP_KERNEL); req_mgr_h 121 drivers/crypto/ccree/cc_request_mgr.c if (!req_mgr_h) { req_mgr_h 126 drivers/crypto/ccree/cc_request_mgr.c drvdata->request_mgr_handle = req_mgr_h; req_mgr_h 128 drivers/crypto/ccree/cc_request_mgr.c spin_lock_init(&req_mgr_h->hw_lock); req_mgr_h 129 drivers/crypto/ccree/cc_request_mgr.c spin_lock_init(&req_mgr_h->bl_lock); req_mgr_h 130 drivers/crypto/ccree/cc_request_mgr.c INIT_LIST_HEAD(&req_mgr_h->backlog); req_mgr_h 134 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->workq = create_singlethread_workqueue("ccree"); req_mgr_h 135 drivers/crypto/ccree/cc_request_mgr.c if (!req_mgr_h->workq) { req_mgr_h 140 drivers/crypto/ccree/cc_request_mgr.c INIT_DELAYED_WORK(&req_mgr_h->compwork, comp_work_handler); req_mgr_h 143 drivers/crypto/ccree/cc_request_mgr.c tasklet_init(&req_mgr_h->comptask, comp_handler, req_mgr_h 146 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->hw_queue_size = cc_ioread(drvdata, req_mgr_h 148 drivers/crypto/ccree/cc_request_mgr.c dev_dbg(dev, "hw_queue_size=0x%08X\n", req_mgr_h->hw_queue_size); req_mgr_h 149 drivers/crypto/ccree/cc_request_mgr.c if (req_mgr_h->hw_queue_size < MIN_HW_QUEUE_SIZE) { req_mgr_h 151 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->hw_queue_size, MIN_HW_QUEUE_SIZE); req_mgr_h 155 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->min_free_hw_slots = req_mgr_h->hw_queue_size; req_mgr_h 156 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->max_used_sw_slots = 0; req_mgr_h 159 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->dummy_comp_buff = req_mgr_h 161 drivers/crypto/ccree/cc_request_mgr.c &req_mgr_h->dummy_comp_buff_dma, req_mgr_h 163 drivers/crypto/ccree/cc_request_mgr.c if (!req_mgr_h->dummy_comp_buff) { req_mgr_h 171 drivers/crypto/ccree/cc_request_mgr.c hw_desc_init(&req_mgr_h->compl_desc); req_mgr_h 172 drivers/crypto/ccree/cc_request_mgr.c set_din_const(&req_mgr_h->compl_desc, 0, sizeof(u32)); req_mgr_h 173 drivers/crypto/ccree/cc_request_mgr.c set_dout_dlli(&req_mgr_h->compl_desc, req_mgr_h->dummy_comp_buff_dma, req_mgr_h 175 drivers/crypto/ccree/cc_request_mgr.c set_flow_mode(&req_mgr_h->compl_desc, BYPASS); req_mgr_h 176 drivers/crypto/ccree/cc_request_mgr.c set_queue_last_ind(drvdata, &req_mgr_h->compl_desc); req_mgr_h 225 drivers/crypto/ccree/cc_request_mgr.c struct cc_req_mgr_handle *req_mgr_h, req_mgr_h 235 drivers/crypto/ccree/cc_request_mgr.c if (((req_mgr_h->req_queue_head + 1) & (MAX_REQUEST_QUEUE_SIZE - 1)) == req_mgr_h 236 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->req_queue_tail) { req_mgr_h 238 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->req_queue_head, MAX_REQUEST_QUEUE_SIZE); req_mgr_h 242 drivers/crypto/ccree/cc_request_mgr.c if (req_mgr_h->q_free_slots >= total_seq_len) req_mgr_h 247 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->q_free_slots = req_mgr_h 249 drivers/crypto/ccree/cc_request_mgr.c if (req_mgr_h->q_free_slots < req_mgr_h->min_free_hw_slots) req_mgr_h 250 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->min_free_hw_slots = req_mgr_h->q_free_slots; req_mgr_h 252 drivers/crypto/ccree/cc_request_mgr.c if (req_mgr_h->q_free_slots >= total_seq_len) { req_mgr_h 258 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->q_free_slots, total_seq_len); req_mgr_h 262 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->req_queue_head, MAX_REQUEST_QUEUE_SIZE, req_mgr_h 263 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->q_free_slots, total_seq_len); req_mgr_h 284 drivers/crypto/ccree/cc_request_mgr.c struct cc_req_mgr_handle *req_mgr_h = drvdata->request_mgr_handle; req_mgr_h 289 drivers/crypto/ccree/cc_request_mgr.c used_sw_slots = ((req_mgr_h->req_queue_head - req_mgr_h 290 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->req_queue_tail) & req_mgr_h 292 drivers/crypto/ccree/cc_request_mgr.c if (used_sw_slots > req_mgr_h->max_used_sw_slots) req_mgr_h 293 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->max_used_sw_slots = used_sw_slots; req_mgr_h 296 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->req_queue[req_mgr_h->req_queue_head] = *cc_req; req_mgr_h 297 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->req_queue_head = (req_mgr_h->req_queue_head + 1) & req_mgr_h 301 drivers/crypto/ccree/cc_request_mgr.c dev_dbg(dev, "Enqueue request head=%u\n", req_mgr_h->req_queue_head); req_mgr_h 315 drivers/crypto/ccree/cc_request_mgr.c enqueue_seq(drvdata, &req_mgr_h->compl_desc, 1); req_mgr_h 319 drivers/crypto/ccree/cc_request_mgr.c if (req_mgr_h->q_free_slots < total_seq_len) { req_mgr_h 325 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->q_free_slots = 0; req_mgr_h 328 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->q_free_slots -= total_seq_len; req_mgr_h 521 drivers/crypto/ccree/cc_request_mgr.c struct cc_req_mgr_handle *req_mgr_h = drvdata->request_mgr_handle; req_mgr_h 527 drivers/crypto/ccree/cc_request_mgr.c rc = cc_queues_status(drvdata, req_mgr_h, total_seq_len); req_mgr_h 542 drivers/crypto/ccree/cc_request_mgr.c req_mgr_h->q_free_slots =