Lines Matching full:output

25  * struct gth_output - GTH view on an output port
27 * @output: link to output device's output descriptor
28 * @index: output port number
30 * @master: bitmap of masters configured for this output
34 struct intel_th_output *output; member
44 * @output_group: attributes describing output ports
46 * @output: output ports
47 * @master: master/output port assignments
56 struct gth_output output[TH_POSSIBLE_OUTPUTS]; member
181 /* disconnect from the previous output port, if any */ in master_attr_store()
185 clear_bit(ma->master, gth->output[old_port].master); in master_attr_store()
191 if (gth->output[old_port].output->active) in master_attr_store()
195 /* connect to the new output port, if any */ in master_attr_store()
198 if (!gth->output[port].output) { in master_attr_store()
203 set_bit(ma->master, gth->output[port].master); in master_attr_store()
206 if (gth->output[port].output->active) in master_attr_store()
242 OUTPUT_PARM(port, 0x7, 1, 0, output),
243 OUTPUT_PARM(null, BIT(3), 1, 1, output),
244 OUTPUT_PARM(drop, BIT(4), 1, 1, output),
245 OUTPUT_PARM(reset, BIT(5), 1, 0, output),
246 OUTPUT_PARM(flush, BIT(7), 0, 1, output),
291 /* output ports */ in intel_th_gth_reset()
465 * intel_th_gth_stop() - stop tracing to an output device
467 * @output: output device's descriptor
471 * pipelines to be empty for the corresponding output port.
474 struct intel_th_output *output, in intel_th_gth_stop() argument
478 container_of(output, struct intel_th_device, output); in intel_th_gth_stop()
490 count && !(reg & BIT(output->port)); count--) { in intel_th_gth_stop()
497 output->port); in intel_th_gth_stop()
499 /* wait on output piepline empty */ in intel_th_gth_stop()
508 * intel_th_gth_start() - start tracing to an output device
510 * @output: output device's descriptor
515 struct intel_th_output *output) in intel_th_gth_start() argument
519 if (output->multiblock) in intel_th_gth_start()
527 * intel_th_gth_disable() - disable tracing to an output device
529 * @output: output device's descriptor
531 * This will deconfigure all masters set to output to this device,
533 * "pipeline empty" bit for corresponding output port.
536 struct intel_th_output *output) in intel_th_gth_disable() argument
543 output->active = false; in intel_th_gth_disable()
545 for_each_set_bit(master, gth->output[output->port].master, in intel_th_gth_disable()
551 intel_th_gth_stop(gth, output, true); in intel_th_gth_disable()
554 reg &= ~output->scratchpad; in intel_th_gth_disable()
568 * intel_th_gth_enable() - enable tracing to an output device
570 * @output: output device's descriptor
572 * This will configure all masters set to output to this device and
576 struct intel_th_output *output) in intel_th_gth_enable() argument
584 for_each_set_bit(master, gth->output[output->port].master, in intel_th_gth_enable()
586 gth_master_set(gth, master, output->port); in intel_th_gth_enable()
589 output->active = true; in intel_th_gth_enable()
596 scrpd |= output->scratchpad; in intel_th_gth_enable()
599 intel_th_gth_start(gth, output); in intel_th_gth_enable()
605 * @output: output device's descriptor
611 struct intel_th_output *output) in intel_th_gth_switch() argument
632 intel_th_gth_stop(gth, output, false); in intel_th_gth_switch()
633 intel_th_gth_start(gth, output); in intel_th_gth_switch()
637 * intel_th_gth_assign() - assign output device to a GTH output port
639 * @othdev: output device
641 * This will match a given output device parameters against present
642 * output ports on the GTH and fill out relevant bits in output device's
660 if (gth->output[i].port_type != othdev->output.type) in intel_th_gth_assign()
673 othdev->output.port = i; in intel_th_gth_assign()
674 othdev->output.active = false; in intel_th_gth_assign()
675 gth->output[i].output = &othdev->output; in intel_th_gth_assign()
682 * intel_th_gth_unassign() - deassociate an output device from its output port
684 * @othdev: output device
690 int port = othdev->output.port; in intel_th_gth_unassign()
697 othdev->output.port = -1; in intel_th_gth_unassign()
698 othdev->output.active = false; in intel_th_gth_unassign()
699 gth->output[port].output = NULL; in intel_th_gth_unassign()
710 int port = 0; /* FIXME: make default output configurable */ in intel_th_gth_set_output()
721 set_bit(master, gth->output[port].master); in intel_th_gth_set_output()
759 * capture configuration attributes. Also, refuse to assign output in intel_th_gth_probe()
779 gth->output[i].gth = gth; in intel_th_gth_probe()
780 gth->output[i].index = i; in intel_th_gth_probe()
781 gth->output[i].port_type = in intel_th_gth_probe()
783 if (gth->output[i].port_type == GTH_NONE) in intel_th_gth_probe()
786 ret = intel_th_output_enable(th, gth->output[i].port_type); in intel_th_gth_probe()