>         /* Write UIC Cmd */
>         ufshcd_writel(hba, uic_cmd->command & COMMAND_OPCODE_MASK,
>                       REG_UIC_COMMAND);
> @@ -4825,11 +4847,15 @@ static irqreturn_t ufshcd_uic_cmd_compl(struct
> ufs_hba *hba, u32 intr_status)
>                         ufshcd_get_uic_cmd_result(hba);
>                 hba->active_uic_cmd->argument3 =
>                         ufshcd_get_dme_attr_val(hba);
> +               ufshcd_add_uic_command_trace(hba, hba->active_uic_cmd,
> +                                            "complete");
>                 complete(&hba->active_uic_cmd->done);
>                 retval = IRQ_HANDLED;
>         }
> 
>         if ((intr_status & UFSHCD_UIC_PWR_MASK) && hba->uic_async_done) {
> +               ufshcd_add_uic_command_trace(hba, hba->active_uic_cmd,
> +                                            "complete");
>                 complete(hba->uic_async_done);
>                 retval = IRQ_HANDLED;


Why not call ufshcd_add_uic_command_trace once if retval == IRQ_HANDLED?
Is it that the exact timestamp?

Reply via email to