Lines Matching refs:queue_group

61 	struct pqi_queue_group *queue_group, enum pqi_io_path path,
68 unsigned int cdb_length, struct pqi_queue_group *queue_group,
2246 struct pqi_queue_group *queue_group) in pqi_raid_bypass_submit_scsi_cmd() argument
2567 cdb, cdb_length, queue_group, encryption_info_ptr, true); in pqi_raid_bypass_submit_scsi_cmd()
2890 static int pqi_process_io_intr(struct pqi_ctrl_info *ctrl_info, struct pqi_queue_group *queue_group) in pqi_process_io_intr() argument
2900 oq_ci = queue_group->oq_ci_copy; in pqi_process_io_intr()
2903 oq_pi = readl(queue_group->oq_pi); in pqi_process_io_intr()
2915 response = queue_group->oq_element_array + in pqi_process_io_intr()
2984 queue_group->oq_ci_copy = oq_ci; in pqi_process_io_intr()
2985 writel(oq_ci, queue_group->oq_ci); in pqi_process_io_intr()
3011 struct pqi_queue_group *queue_group; in pqi_send_event_ack() local
3013 queue_group = &ctrl_info->queue_groups[PQI_DEFAULT_QUEUE_GROUP]; in pqi_send_event_ack()
3014 put_unaligned_le16(queue_group->oq_id, &iu->header.response_queue_id); in pqi_send_event_ack()
3017 spin_lock_irqsave(&queue_group->submit_lock[RAID_PATH], flags); in pqi_send_event_ack()
3019 iq_pi = queue_group->iq_pi_copy[RAID_PATH]; in pqi_send_event_ack()
3020 iq_ci = readl(queue_group->iq_ci[RAID_PATH]); in pqi_send_event_ack()
3027 &queue_group->submit_lock[RAID_PATH], flags); in pqi_send_event_ack()
3033 next_element = queue_group->iq_element_array[RAID_PATH] + in pqi_send_event_ack()
3039 queue_group->iq_pi_copy[RAID_PATH] = iq_pi; in pqi_send_event_ack()
3045 writel(iq_pi, queue_group->iq_pi[RAID_PATH]); in pqi_send_event_ack()
3047 spin_unlock_irqrestore(&queue_group->submit_lock[RAID_PATH], flags); in pqi_send_event_ack()
3445 struct pqi_queue_group *queue_group; in pqi_irq_handler() local
3449 queue_group = data; in pqi_irq_handler()
3450 ctrl_info = queue_group->ctrl_info; in pqi_irq_handler()
3455 num_io_responses_handled = pqi_process_io_intr(ctrl_info, queue_group); in pqi_irq_handler()
3470 pqi_start_io(ctrl_info, queue_group, RAID_PATH, NULL); in pqi_irq_handler()
3471 pqi_start_io(ctrl_info, queue_group, AIO_PATH, NULL); in pqi_irq_handler()
3550 struct pqi_queue_group *queue_group; in pqi_alloc_operational_queues() local
3606 queue_group = &ctrl_info->queue_groups[i]; in pqi_alloc_operational_queues()
3607 queue_group->iq_element_array[RAID_PATH] = element_array; in pqi_alloc_operational_queues()
3608 queue_group->iq_element_array_bus_addr[RAID_PATH] = in pqi_alloc_operational_queues()
3614 queue_group->iq_element_array[AIO_PATH] = element_array; in pqi_alloc_operational_queues()
3615 queue_group->iq_element_array_bus_addr[AIO_PATH] = in pqi_alloc_operational_queues()
3624 queue_group = &ctrl_info->queue_groups[i]; in pqi_alloc_operational_queues()
3625 queue_group->oq_element_array = element_array; in pqi_alloc_operational_queues()
3626 queue_group->oq_element_array_bus_addr = in pqi_alloc_operational_queues()
3645 queue_group = &ctrl_info->queue_groups[i]; in pqi_alloc_operational_queues()
3646 queue_group->iq_ci[RAID_PATH] = next_queue_index; in pqi_alloc_operational_queues()
3647 queue_group->iq_ci_bus_addr[RAID_PATH] = in pqi_alloc_operational_queues()
3654 queue_group->iq_ci[AIO_PATH] = next_queue_index; in pqi_alloc_operational_queues()
3655 queue_group->iq_ci_bus_addr[AIO_PATH] = in pqi_alloc_operational_queues()
3662 queue_group->oq_pi = next_queue_index; in pqi_alloc_operational_queues()
3663 queue_group->oq_pi_bus_addr = in pqi_alloc_operational_queues()
3892 struct pqi_queue_group *queue_group, enum pqi_io_path path, in pqi_start_io() argument
3906 spin_lock_irqsave(&queue_group->submit_lock[path], flags); in pqi_start_io()
3909 io_request->queue_group = queue_group; in pqi_start_io()
3911 &queue_group->request_list[path]); in pqi_start_io()
3914 iq_pi = queue_group->iq_pi_copy[path]; in pqi_start_io()
3917 &queue_group->request_list[path], request_list_entry) { in pqi_start_io()
3927 iq_ci = readl(queue_group->iq_ci[path]); in pqi_start_io()
3933 put_unaligned_le16(queue_group->oq_id, in pqi_start_io()
3936 next_element = queue_group->iq_element_array[path] + in pqi_start_io()
3948 memcpy(queue_group->iq_element_array[path], in pqi_start_io()
3959 if (iq_pi != queue_group->iq_pi_copy[path]) { in pqi_start_io()
3960 queue_group->iq_pi_copy[path] = iq_pi; in pqi_start_io()
3965 writel(iq_pi, queue_group->iq_pi[path]); in pqi_start_io()
3968 spin_unlock_irqrestore(&queue_group->submit_lock[path], flags); in pqi_start_io()
4338 struct pqi_queue_group *queue_group; in pqi_create_queue_group() local
4342 queue_group = &ctrl_info->queue_groups[group_number]; in pqi_create_queue_group()
4353 put_unaligned_le16(queue_group->iq_id[RAID_PATH], in pqi_create_queue_group()
4356 (u64)queue_group->iq_element_array_bus_addr[RAID_PATH], in pqi_create_queue_group()
4358 put_unaligned_le64((u64)queue_group->iq_ci_bus_addr[RAID_PATH], in pqi_create_queue_group()
4374 queue_group->iq_pi[RAID_PATH] = ctrl_info->iomem_base + in pqi_create_queue_group()
4388 put_unaligned_le16(queue_group->iq_id[AIO_PATH], in pqi_create_queue_group()
4390 put_unaligned_le64((u64)queue_group-> in pqi_create_queue_group()
4393 put_unaligned_le64((u64)queue_group->iq_ci_bus_addr[AIO_PATH], in pqi_create_queue_group()
4409 queue_group->iq_pi[AIO_PATH] = ctrl_info->iomem_base + in pqi_create_queue_group()
4424 put_unaligned_le16(queue_group->iq_id[AIO_PATH], in pqi_create_queue_group()
4445 put_unaligned_le16(queue_group->oq_id, in pqi_create_queue_group()
4447 put_unaligned_le64((u64)queue_group->oq_element_array_bus_addr, in pqi_create_queue_group()
4449 put_unaligned_le64((u64)queue_group->oq_pi_bus_addr, in pqi_create_queue_group()
4456 put_unaligned_le16(queue_group->int_msg_num, in pqi_create_queue_group()
4467 queue_group->oq_ci = ctrl_info->iomem_base + in pqi_create_queue_group()
4943 struct pqi_queue_group *queue_group) in pqi_raid_submit_scsi_cmd_with_io_request() argument
5025 pqi_start_io(ctrl_info, queue_group, RAID_PATH, io_request); in pqi_raid_submit_scsi_cmd_with_io_request()
5032 struct pqi_queue_group *queue_group) in pqi_raid_submit_scsi_cmd() argument
5039 device, scmd, queue_group); in pqi_raid_submit_scsi_cmd()
5119 struct pqi_queue_group *queue_group; in pqi_retry_raid_bypass() local
5131 queue_group = io_request->queue_group; in pqi_retry_raid_bypass()
5136 device, scmd, queue_group); in pqi_retry_raid_bypass()
5219 struct pqi_queue_group *queue_group) in pqi_aio_submit_scsi_cmd() argument
5222 scmd->cmnd, scmd->cmd_len, queue_group, NULL, false); in pqi_aio_submit_scsi_cmd()
5227 unsigned int cdb_length, struct pqi_queue_group *queue_group, in pqi_aio_submit_io() argument
5290 pqi_start_io(ctrl_info, queue_group, AIO_PATH, io_request); in pqi_aio_submit_io()
5337 struct pqi_queue_group *queue_group; in pqi_scsi_queue_command() local
5372 queue_group = &ctrl_info->queue_groups[hw_queue]; in pqi_scsi_queue_command()
5379 scmd, queue_group); in pqi_scsi_queue_command()
5386 rc = pqi_raid_submit_scsi_cmd(ctrl_info, device, scmd, queue_group); in pqi_scsi_queue_command()
5389 rc = pqi_aio_submit_scsi_cmd(ctrl_info, device, scmd, queue_group); in pqi_scsi_queue_command()
5391 rc = pqi_raid_submit_scsi_cmd(ctrl_info, device, scmd, queue_group); in pqi_scsi_queue_command()
5403 struct pqi_queue_group *queue_group) in pqi_wait_until_queued_io_drained() argument
5412 &queue_group->submit_lock[path], flags); in pqi_wait_until_queued_io_drained()
5414 list_empty(&queue_group->request_list[path]); in pqi_wait_until_queued_io_drained()
5416 &queue_group->submit_lock[path], flags); in pqi_wait_until_queued_io_drained()
5434 struct pqi_queue_group *queue_group; in pqi_wait_until_inbound_queues_empty() local
5439 queue_group = &ctrl_info->queue_groups[i]; in pqi_wait_until_inbound_queues_empty()
5441 rc = pqi_wait_until_queued_io_drained(ctrl_info, queue_group); in pqi_wait_until_inbound_queues_empty()
5446 iq_pi = queue_group->iq_pi_copy[path]; in pqi_wait_until_inbound_queues_empty()
5449 iq_ci = readl(queue_group->iq_ci[path]); in pqi_wait_until_inbound_queues_empty()
5468 struct pqi_queue_group *queue_group; in pqi_fail_io_queued_for_device() local
5476 queue_group = &ctrl_info->queue_groups[i]; in pqi_fail_io_queued_for_device()
5480 &queue_group->submit_lock[path], flags); in pqi_fail_io_queued_for_device()
5483 &queue_group->request_list[path], in pqi_fail_io_queued_for_device()
5501 &queue_group->submit_lock[path], flags); in pqi_fail_io_queued_for_device()
5510 struct pqi_queue_group *queue_group; in pqi_fail_io_queued_for_all_devices() local
5517 queue_group = &ctrl_info->queue_groups[i]; in pqi_fail_io_queued_for_all_devices()
5520 spin_lock_irqsave(&queue_group->submit_lock[path], in pqi_fail_io_queued_for_all_devices()
5524 &queue_group->request_list[path], in pqi_fail_io_queued_for_all_devices()
5539 &queue_group->submit_lock[path], flags); in pqi_fail_io_queued_for_all_devices()