[Freedreno] [DPU PATCH 08/19] drm/msm: dpu_vbif: Replace DPU_EVT with tracepoints

ryadav at codeaurora.org ryadav at codeaurora.org
Tue Jun 26 06:43:59 UTC 2018


On 2018-06-21 02:18, Sean Paul wrote:
> This patch converts all DPU_EVTs in dpu_vbif with either a DRM_* log
> message or a linux tracepoint.
> 
> Signed-off-by: Sean Paul <seanpaul at chromium.org>
Reviewed-by: Rajesh Yadav <ryadav at codeaurora.org>
> ---
>  drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h | 15 +++++++++++++++
>  drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c  |  7 +++----
>  2 files changed, 18 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h
> b/drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h
> index c9041e2a7aa1..73f76387803f 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h
> @@ -20,6 +20,7 @@
>  #include "dpu_crtc.h"
>  #include "dpu_encoder_phys.h"
>  #include "dpu_hw_mdss.h"
> +#include "dpu_hw_vbif.h"
>  #include "dpu_plane.h"
> 
>  #undef TRACE_SYSTEM
> @@ -937,6 +938,20 @@ TRACE_EVENT(dpu_rm_reserve_lms,
>  		  __entry->type, __entry->enc_id, __entry->pp_id)
>  );
> 
> +TRACE_EVENT(dpu_vbif_wait_xin_halt_fail,
> +	TP_PROTO(enum dpu_vbif index, u32 xin_id),
> +	TP_ARGS(index, xin_id),
> +	TP_STRUCT__entry(
> +		__field(	enum dpu_vbif,	index	)
> +		__field(	u32,		xin_id	)
> +	),
> +	TP_fast_assign(
> +		__entry->index = index;
> +		__entry->xin_id = xin_id;
> +	),
> +	TP_printk("index:%d xin_id:%u", __entry->index, __entry->xin_id)
> +);
> +
>  #define DPU_ATRACE_END(name) trace_tracing_mark_write(current->tgid, 
> name, 0)
>  #define DPU_ATRACE_BEGIN(name) trace_tracing_mark_write(current->tgid, 
> name, 1)
>  #define DPU_ATRACE_FUNC() DPU_ATRACE_BEGIN(__func__)
> diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c
> b/drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c
> index 801155fe0989..295528292296 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_vbif.c
> @@ -204,7 +204,7 @@ void dpu_vbif_set_ot_limit(struct dpu_kms *dpu_kms,
> 
>  	ret = _dpu_vbif_wait_for_xin_halt(vbif, params->xin_id);
>  	if (ret)
> -		DPU_EVT32(vbif->idx, params->xin_id);
> +		trace_dpu_vbif_wait_xin_halt_fail(vbif->idx, params->xin_id);
> 
>  	vbif->ops.set_halt_ctrl(vbif, params->xin_id, false);
> 
> @@ -284,9 +284,8 @@ void dpu_vbif_clear_errors(struct dpu_kms *dpu_kms)
>  		if (vbif && vbif->ops.clear_errors) {
>  			vbif->ops.clear_errors(vbif, &pnd, &src);
>  			if (pnd || src) {
> -				DPU_EVT32(i, pnd, src);
> -				DPU_DEBUG("VBIF %d: pnd 0x%X, src 0x%X\n",
> -						vbif->idx - VBIF_0, pnd, src);
> +				DRM_DEBUG_KMS("VBIF %d: pnd 0x%X, src 0x%X\n",
> +					      vbif->idx - VBIF_0, pnd, src);
>  			}
>  		}
>  	}


More information about the Freedreno mailing list