Lines Matching +full:timeout +full:- +full:sec
7 * Copyright (c) 2003-2016 Cavium, Inc.
14 * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
47 * Bytes offset below assume worst-case of a 64-bit system.
50 /** Bytes 1-8. Pointer to network device private structure. */
53 /** Bytes 9-16. Pointer to sk_buff. */
56 /** Bytes 17-24. Pointer to gather list. */
59 /** Bytes 25-32. Physical address of skb->data or gather list. */
62 /** Bytes 33-47. Piggybacked soft command, if any */
66 /* BQL-related functions */
83 blocks--; in octeon_swap_8B_data()
95 dev_dbg(&oct->pci_dev->dev, "Freeing PCI mapped regions for Bar%d\n", in octeon_unmap_pci_barx()
98 if (oct->mmio[baridx].done) in octeon_unmap_pci_barx()
99 iounmap(oct->mmio[baridx].hw_addr); in octeon_unmap_pci_barx()
101 if (oct->mmio[baridx].start) in octeon_unmap_pci_barx()
102 pci_release_region(oct->pci_dev, baridx * 2); in octeon_unmap_pci_barx()
116 if (pci_request_region(oct->pci_dev, baridx * 2, DRV_NAME)) { in octeon_map_pci_barx()
117 dev_err(&oct->pci_dev->dev, "pci_request_region failed for bar %d\n", in octeon_map_pci_barx()
122 oct->mmio[baridx].start = pci_resource_start(oct->pci_dev, baridx * 2); in octeon_map_pci_barx()
123 oct->mmio[baridx].len = pci_resource_len(oct->pci_dev, baridx * 2); in octeon_map_pci_barx()
125 mapped_len = oct->mmio[baridx].len; in octeon_map_pci_barx()
132 oct->mmio[baridx].hw_addr = in octeon_map_pci_barx()
133 ioremap(oct->mmio[baridx].start, mapped_len); in octeon_map_pci_barx()
134 oct->mmio[baridx].mapped_len = mapped_len; in octeon_map_pci_barx()
136 dev_dbg(&oct->pci_dev->dev, "BAR%d start: 0x%llx mapped %u of %u bytes\n", in octeon_map_pci_barx()
137 baridx, oct->mmio[baridx].start, mapped_len, in octeon_map_pci_barx()
138 oct->mmio[baridx].len); in octeon_map_pci_barx()
140 if (!oct->mmio[baridx].hw_addr) { in octeon_map_pci_barx()
141 dev_err(&oct->pci_dev->dev, "error ioremap for bar %d\n", in octeon_map_pci_barx()
145 oct->mmio[baridx].done = 1; in octeon_map_pci_barx()
150 pci_release_region(oct->pci_dev, baridx * 2); in octeon_map_pci_barx()
156 * timeout: milli sec which an application wants to wait for the
159 * from the firmware within LIO_SC_MAX_TMO_MS milli sec.
161 * LIO_SC_MAX_TMO_MS milli sec, lio_process_ordered_list()
166 * errno -EINTR: user abort the command.
167 * errno -ETIME: user spefified timeout value has been expired.
168 * errno -EBUSY: the response of the request does not return in
173 * A request with non-zero return value, the sc->caller_is_done
176 * should mark sc->caller_is_done with 1 after examing the
180 * This is to fix the possible race condition of both timeout process
187 unsigned long timeout) in wait_for_sc_completion_timeout() argument
192 if (timeout) in wait_for_sc_completion_timeout()
193 timeout_jiff = msecs_to_jiffies(timeout); in wait_for_sc_completion_timeout()
198 wait_for_completion_interruptible_timeout(&sc->complete, in wait_for_sc_completion_timeout()
201 dev_err(&oct_dev->pci_dev->dev, "%s: sc is timeout\n", in wait_for_sc_completion_timeout()
203 WRITE_ONCE(sc->caller_is_done, true); in wait_for_sc_completion_timeout()
204 errno = -ETIME; in wait_for_sc_completion_timeout()
205 } else if (timeout_jiff == -ERESTARTSYS) { in wait_for_sc_completion_timeout()
206 dev_err(&oct_dev->pci_dev->dev, "%s: sc is interrupted\n", in wait_for_sc_completion_timeout()
208 WRITE_ONCE(sc->caller_is_done, true); in wait_for_sc_completion_timeout()
209 errno = -EINTR; in wait_for_sc_completion_timeout()
210 } else if (sc->sc_status == OCTEON_REQUEST_TIMEOUT) { in wait_for_sc_completion_timeout()
211 dev_err(&oct_dev->pci_dev->dev, "%s: sc has fatal timeout\n", in wait_for_sc_completion_timeout()
213 WRITE_ONCE(sc->caller_is_done, true); in wait_for_sc_completion_timeout()
214 errno = -EBUSY; in wait_for_sc_completion_timeout()