Lines Matching refs:reply_q

929 	struct adapter_reply_queue *reply_q = bus_id;  in _base_interrupt()  local
936 u8 msix_index = reply_q->msix_index; in _base_interrupt()
937 struct MPT3SAS_ADAPTER *ioc = reply_q->ioc; in _base_interrupt()
944 if (!atomic_add_unless(&reply_q->busy, 1, 1)) in _base_interrupt()
947 rpf = &reply_q->reply_post_free[reply_q->reply_post_host_index]; in _base_interrupt()
951 atomic_dec(&reply_q->busy); in _base_interrupt()
1014 reply_q->reply_post_host_index = in _base_interrupt()
1015 (reply_q->reply_post_host_index == in _base_interrupt()
1017 reply_q->reply_post_host_index + 1; in _base_interrupt()
1019 reply_q->reply_post_free[reply_q->reply_post_host_index]. in _base_interrupt()
1024 if (!reply_q->reply_post_host_index) in _base_interrupt()
1025 rpf = reply_q->reply_post_free; in _base_interrupt()
1033 atomic_dec(&reply_q->busy); in _base_interrupt()
1039 writel(reply_q->reply_post_host_index, in _base_interrupt()
1041 atomic_dec(&reply_q->busy); in _base_interrupt()
1061 writel(reply_q->reply_post_host_index | ((msix_index & 7) << in _base_interrupt()
1065 writel(reply_q->reply_post_host_index | (msix_index << in _base_interrupt()
1068 atomic_dec(&reply_q->busy); in _base_interrupt()
1098 struct adapter_reply_queue *reply_q; in mpt3sas_base_flush_reply_queues() local
1106 list_for_each_entry(reply_q, &ioc->reply_queue_list, list) { in mpt3sas_base_flush_reply_queues()
1110 if (reply_q->msix_index == 0) in mpt3sas_base_flush_reply_queues()
1112 _base_interrupt(reply_q->vector, (void *)reply_q); in mpt3sas_base_flush_reply_queues()
1793 struct adapter_reply_queue *reply_q, *next; in _base_free_irq() local
1798 list_for_each_entry_safe(reply_q, next, &ioc->reply_queue_list, list) { in _base_free_irq()
1799 list_del(&reply_q->list); in _base_free_irq()
1800 irq_set_affinity_hint(reply_q->vector, NULL); in _base_free_irq()
1801 free_cpumask_var(reply_q->affinity_hint); in _base_free_irq()
1802 synchronize_irq(reply_q->vector); in _base_free_irq()
1803 free_irq(reply_q->vector, reply_q); in _base_free_irq()
1804 kfree(reply_q); in _base_free_irq()
1819 struct adapter_reply_queue *reply_q; in _base_request_irq() local
1822 reply_q = kzalloc(sizeof(struct adapter_reply_queue), GFP_KERNEL); in _base_request_irq()
1823 if (!reply_q) { in _base_request_irq()
1828 reply_q->ioc = ioc; in _base_request_irq()
1829 reply_q->msix_index = index; in _base_request_irq()
1830 reply_q->vector = vector; in _base_request_irq()
1832 if (!alloc_cpumask_var(&reply_q->affinity_hint, GFP_KERNEL)) in _base_request_irq()
1834 cpumask_clear(reply_q->affinity_hint); in _base_request_irq()
1836 atomic_set(&reply_q->busy, 0); in _base_request_irq()
1838 snprintf(reply_q->name, MPT_NAME_LENGTH, "%s%d-msix%d", in _base_request_irq()
1841 snprintf(reply_q->name, MPT_NAME_LENGTH, "%s%d", in _base_request_irq()
1843 r = request_irq(vector, _base_interrupt, IRQF_SHARED, reply_q->name, in _base_request_irq()
1844 reply_q); in _base_request_irq()
1847 reply_q->name, vector); in _base_request_irq()
1848 kfree(reply_q); in _base_request_irq()
1852 INIT_LIST_HEAD(&reply_q->list); in _base_request_irq()
1853 list_add_tail(&reply_q->list, &ioc->reply_queue_list); in _base_request_irq()
1870 struct adapter_reply_queue *reply_q; in _base_assign_reply_queues() local
1885 list_for_each_entry(reply_q, &ioc->reply_queue_list, list) { in _base_assign_reply_queues()
1897 cpumask_or(reply_q->affinity_hint, in _base_assign_reply_queues()
1898 reply_q->affinity_hint, get_cpu_mask(cpu)); in _base_assign_reply_queues()
1902 if (irq_set_affinity_hint(reply_q->vector, in _base_assign_reply_queues()
1903 reply_q->affinity_hint)) in _base_assign_reply_queues()
1906 ioc->name, reply_q->vector)); in _base_assign_reply_queues()
2053 struct adapter_reply_queue *reply_q; in mpt3sas_base_map_resources() local
2158 list_for_each_entry(reply_q, &ioc->reply_queue_list, list) in mpt3sas_base_map_resources()
2160 reply_q->name, ((ioc->msix_enable) ? "PCI-MSI-X enabled" : in mpt3sas_base_map_resources()
2161 "IO-APIC enabled"), reply_q->vector); in mpt3sas_base_map_resources()
4975 struct adapter_reply_queue *reply_q; in _base_make_ioc_operational() local
5052 list_for_each_entry(reply_q, &ioc->reply_queue_list, list) { in _base_make_ioc_operational()
5053 reply_q->reply_post_host_index = 0; in _base_make_ioc_operational()
5054 reply_q->reply_post_free = (Mpi2ReplyDescriptorsUnion_t *) in _base_make_ioc_operational()
5057 reply_q->reply_post_free[i].Words = in _base_make_ioc_operational()
5082 list_for_each_entry(reply_q, &ioc->reply_queue_list, list) { in _base_make_ioc_operational()
5084 writel((reply_q->msix_index & 7)<< in _base_make_ioc_operational()
5086 ioc->replyPostRegisterIndex[reply_q->msix_index/8]); in _base_make_ioc_operational()
5088 writel(reply_q->msix_index << in _base_make_ioc_operational()