Re: [PATCH v8 16/28] media: iris: implement vb2 streaming ops

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 12/10/2024 6:20 PM, Stefan Schmidt wrote:
> Hello Dikshita,
> 
> On Tue, 10 Dec 2024 at 12:07, Dikshita Agarwal
> <quic_dikshita@xxxxxxxxxxx> wrote:
>>
>> +static int iris_hfi_gen1_session_stop(struct iris_inst *inst, u32 plane)
>> +{
>> +       struct hfi_session_flush_pkt flush_pkt;
>> +       struct iris_core *core = inst->core;
>> +       struct hfi_session_pkt pkt;
>> +       u32 flush_type = 0;
>> +       int ret = 0;
>> +
>> +       if ((V4L2_TYPE_IS_OUTPUT(plane) &&
>> +            inst->state == IRIS_INST_INPUT_STREAMING) ||
>> +           (V4L2_TYPE_IS_CAPTURE(plane) &&
>> +            inst->state == IRIS_INST_OUTPUT_STREAMING) ||
>> +           inst->state == IRIS_INST_ERROR) {
>> +               reinit_completion(&inst->completion);
>> +               iris_hfi_gen1_packet_session_cmd(inst, &pkt, HFI_CMD_SESSION_STOP);
>> +               ret = iris_hfi_queue_cmd_write(core, &pkt, pkt.shdr.hdr.size);
>> +               if (!ret)
>> +                       ret = iris_wait_for_session_response(inst, false);
>> +
>> +               reinit_completion(&inst->completion);
>> +               iris_hfi_gen1_packet_session_cmd(inst, &pkt, HFI_CMD_SESSION_RELEASE_RESOURCES);
>> +               ret = iris_hfi_queue_cmd_write(core, &pkt, pkt.shdr.hdr.size);
>> +               if (!ret)
>> +                       ret = iris_wait_for_session_response(inst, false);
>> +       } else if (inst->state == IRIS_INST_STREAMING) {
>> +               if (V4L2_TYPE_IS_OUTPUT(plane))
>> +                       flush_type = HFI_FLUSH_ALL;
>> +               else if (V4L2_TYPE_IS_CAPTURE(plane))
>> +                       flush_type = HFI_FLUSH_OUTPUT;
> 
> Below there is also HFI_FLUSH_OUTPUT2 defined. Do we need to handle
> this flush type here as well?
The behavior for HFI_FLUSH_OUTPUT2 is same as HFI_FLUSH_OUTPUT so there is
no need to add specific handling for HFI_FLUSH_OUTPUT2.

Thanks,
Dikshita
> 
> [...]
> 
>> +#define HFI_FLUSH_OUTPUT                               0x1000002
>> +#define HFI_FLUSH_OUTPUT2                              0x1000003
> 
> regards
> Stefan Schmidt




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux