Lines Matching defs:orphan
51 * if orphan->tx_mask does not match with orphan->rx_mask
55 struct bundle_orphan_ring *orphan,
62 struct resource *csr_base = orphan->csr_base;
63 int bank = orphan->bank;
66 if (test_bit(i, &orphan->tx_mask)) {
69 if (!test_bit(rx_ring, &orphan->rx_mask)) {
70 __clear_bit(i, &orphan->tx_mask);
83 } else if (test_bit(i, &orphan->rx_mask)) {
86 if (!test_bit(tx_ring, &orphan->tx_mask)) {
87 __clear_bit(i, &orphan->rx_mask);
186 struct bundle_orphan_ring *orphan)
189 struct resource *csr_base = orphan->csr_base;
190 unsigned long mask = orphan->rx_mask | orphan->tx_mask;
195 int bank = orphan->bank;
197 mutex_lock(&orphan->bundle->lock);
198 orphan->bundle->rings_enabled &= ~mask;
199 adf_update_uio_ring_arb(orphan->bundle);
200 mutex_unlock(&orphan->bundle->lock);
286 cleanup_orphan_ring(struct bundle_orphan_ring *orphan,
295 csr_ops->write_csr_int_col_en(orphan->csr_base, orphan->bank, 0);
303 adf_disable_ring_arb(accel_dev, orphan->csr_base, 0, orphan->tx_mask);
305 if (!is_all_resp_recvd(csr_ops, orphan, number_rings_per_bank)) {
307 "Failed to clean up orphan rings");
317 cleanup_all_ring(accel, orphan);
326 /* orphan is local pointer allocated and deallocated in this function */
327 struct bundle_orphan_ring *orphan = NULL;
334 ret = get_orphan_bundle(bank, accel, &orphan);
346 accel_dev, orphan->bundle->hardware_bundle_number);
354 orphan->bundle->rings_enabled &=
355 ~(orphan->rx_mask | orphan->tx_mask);
359 if (!orphan->tx_mask && !orphan->rx_mask)
363 "Process %d %s exit with orphan rings %lx:%lx\n",
366 orphan->tx_mask,
367 orphan->rx_mask);
370 cleanup_orphan_ring(orphan, accel);
373 put_orphan_bundle(orphan);