Lines Matching defs:context

87  * @process_ctx_payloads: callback handler to process payloads of isoc context
106 s->context = ERR_PTR(-1);
210 // context when total size of accumulated context header reaches
211 // PAGE_SIZE. This kicks work for the isoc context and brings
214 // IRQ, use the largest size of context header between IT/IR contexts.
215 // Here, use the value of context header in IR context is for both
309 // The CIP header is processed in context header apart from context payload.
616 // In software IRQ context for 1394 OHCI.
619 // In process context of ALSA PCM application under acquired lock of
636 err = fw_iso_context_queue(s->context, params, &s->buffer.iso_buffer,
660 // Queue one packet for IR context.
1077 // format of 1394 OHCI isochronous context.
1135 static void process_rx_packets(struct fw_iso_context *context, u32 tstamp, size_t header_length,
1168 // with some requests, instead of scheduled hardware IRQ of an IT context.
1209 static void skip_rx_packets(struct fw_iso_context *context, u32 tstamp, size_t header_length,
1241 static void irq_target_callback(struct fw_iso_context *context, u32 tstamp, size_t header_length,
1244 static void process_rx_packets_intermediately(struct fw_iso_context *context, u32 tstamp,
1272 skip_rx_packets(context, tstamp, length, ctx_header, private_data);
1287 process_rx_packets(context, tstamp, header_length, ctx_header, private_data);
1292 s->context->callback.sc = irq_target_callback;
1294 s->context->callback.sc = process_rx_packets;
1298 static void process_tx_packets(struct fw_iso_context *context, u32 tstamp, size_t header_length,
1345 static void drop_tx_packets(struct fw_iso_context *context, u32 tstamp, size_t header_length,
1373 static void process_tx_packets_intermediately(struct fw_iso_context *context, u32 tstamp,
1404 drop_tx_packets(context, tstamp, length, ctx_header, s);
1416 process_tx_packets(context, tstamp, header_length, ctx_header, s);
1420 context->callback.sc = process_tx_packets;
1424 static void drop_tx_packets_initially(struct fw_iso_context *context, u32 tstamp,
1477 drop_tx_packets(context, tstamp, header_length, header, s);
1509 s->context->callback.sc = process_tx_packets_intermediately;
1523 fw_iso_context_flush_completions(s->context);
1540 static void irq_target_callback(struct fw_iso_context *context, u32 tstamp, size_t header_length,
1546 process_rx_packets(context, tstamp, header_length, header, private_data);
1550 static void irq_target_callback_intermediately(struct fw_iso_context *context, u32 tstamp,
1556 process_rx_packets_intermediately(context, tstamp, header_length, header, private_data);
1560 static void irq_target_callback_skip(struct fw_iso_context *context, u32 tstamp,
1567 skip_rx_packets(context, tstamp, header_length, header, private_data);
1606 s->context->callback.sc = irq_target_callback_intermediately;
1608 s->context->callback.sc = process_rx_packets_intermediately;
1617 static void amdtp_stream_first_callback(struct fw_iso_context *context,
1625 context->callback.sc = drop_tx_packets_initially;
1628 context->callback.sc = irq_target_callback_skip;
1630 context->callback.sc = skip_rx_packets;
1633 context->callback.sc(context, tstamp, header_length, header, s);
1667 // NOTE: IT context should be used for constant IRQ.
1689 ctx_header_size = 0; // No effect for IT context.
1698 s->context = fw_iso_context_create(fw_parent_device(s->unit)->card,
1701 if (IS_ERR(s->context)) {
1702 err = PTR_ERR(s->context);
1812 err = fw_iso_context_start(s->context, -1, 0, tag);
1829 fw_iso_context_destroy(s->context);
1830 s->context = ERR_PTR(-1);
1853 // In software IRQ context, the call causes dead-lock to disable the tasklet
1856 fw_iso_context_flush_completions(irq_target->context);
1877 fw_iso_context_flush_completions(irq_target->context);
1911 fw_iso_context_stop(s->context);
1912 fw_iso_context_destroy(s->context);
1913 s->context = ERR_PTR(-1);
1971 * amdtp_domain_add_stream - register isoc context into the domain.
2044 * amdtp_domain_start - start sending packets for isoc context in the domain.
2048 * @replay_seq: whether to replay the sequence of packet in IR context for the sequence of packet in
2049 * IT context.
2071 // Select an IT context as IRQ target.
2103 // Starts immediately but actually DMA context starts several hundred cycles later.
2118 * amdtp_domain_stop - stop sending packets for isoc context in the same domain.