Hi Russell I need the below fixup to make this build for me: diff --git a/drivers/gpu/drm/armada/Makefile b/drivers/gpu/drm/armada/Makefile index a18f156c8b66..64c0b4546fb2 100644 --- a/drivers/gpu/drm/armada/Makefile +++ b/drivers/gpu/drm/armada/Makefile @@ -4,3 +4,5 @@ armada-y += armada_510.o armada-$(CONFIG_DEBUG_FS) += armada_debugfs.o obj-$(CONFIG_DRM_ARMADA) := armada.o + +CFLAGS_armada_trace.o := -I$(src) Otherwise it fails with CC [M] drivers/gpu/drm/armada/armada_trace.o In file included from drivers/gpu/drm/armada/armada_trace.h:66:0, from drivers/gpu/drm/armada/armada_trace.c:3: ./include/trace/define_trace.h:88:43: fatal error: ./armada_trace.h: No such file or directory #include TRACE_INCLUDE(TRACE_INCLUDE_FILE) ^ I've disabeld armada for now in the drm-misc defconfigs we use to build-test drm-misc patches (since I can't push stuff right now). Cheers, Daniel On Thu, Nov 17, 2016 at 1:09 AM, Russell King <rmk+kernel@xxxxxxxxxxxxxxx> wrote: > Add tracing support to the Armada video overlay and interrupt code. > > Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/armada/Makefile | 2 +- > drivers/gpu/drm/armada/armada_crtc.c | 3 ++ > drivers/gpu/drm/armada/armada_overlay.c | 7 ++++ > drivers/gpu/drm/armada/armada_trace.c | 4 ++ > drivers/gpu/drm/armada/armada_trace.h | 66 +++++++++++++++++++++++++++++++++ > 5 files changed, 81 insertions(+), 1 deletion(-) > create mode 100644 drivers/gpu/drm/armada/armada_trace.c > create mode 100644 drivers/gpu/drm/armada/armada_trace.h > > diff --git a/drivers/gpu/drm/armada/Makefile b/drivers/gpu/drm/armada/Makefile > index ffd673615772..a18f156c8b66 100644 > --- a/drivers/gpu/drm/armada/Makefile > +++ b/drivers/gpu/drm/armada/Makefile > @@ -1,5 +1,5 @@ > armada-y := armada_crtc.o armada_drv.o armada_fb.o armada_fbdev.o \ > - armada_gem.o armada_overlay.o > + armada_gem.o armada_overlay.o armada_trace.o > armada-y += armada_510.o > armada-$(CONFIG_DEBUG_FS) += armada_debugfs.o > > diff --git a/drivers/gpu/drm/armada/armada_crtc.c b/drivers/gpu/drm/armada/armada_crtc.c > index 2f58e9e2a59c..135ad844fbb8 100644 > --- a/drivers/gpu/drm/armada/armada_crtc.c > +++ b/drivers/gpu/drm/armada/armada_crtc.c > @@ -18,6 +18,7 @@ > #include "armada_fb.h" > #include "armada_gem.h" > #include "armada_hw.h" > +#include "armada_trace.h" > > struct armada_frame_work { > struct armada_plane_work work; > @@ -464,6 +465,8 @@ static irqreturn_t armada_drm_irq(int irq, void *arg) > */ > writel_relaxed(0, dcrtc->base + LCD_SPU_IRQ_ISR); > > + trace_armada_drm_irq(&dcrtc->crtc, stat); > + > /* Mask out those interrupts we haven't enabled */ > v = stat & dcrtc->irq_ena; > > diff --git a/drivers/gpu/drm/armada/armada_overlay.c b/drivers/gpu/drm/armada/armada_overlay.c > index 1ee707ef6b8d..94af7c93276e 100644 > --- a/drivers/gpu/drm/armada/armada_overlay.c > +++ b/drivers/gpu/drm/armada/armada_overlay.c > @@ -15,6 +15,7 @@ > #include "armada_hw.h" > #include <drm/armada_drm.h> > #include "armada_ioctlP.h" > +#include "armada_trace.h" > > struct armada_ovl_plane_properties { > uint32_t colorkey_yr; > @@ -87,6 +88,8 @@ static void armada_ovl_plane_work(struct armada_crtc *dcrtc, > { > struct armada_ovl_plane *dplane = container_of(plane, struct armada_ovl_plane, base); > > + trace_armada_ovl_plane_work(&dcrtc->crtc, &plane->base); > + > armada_drm_crtc_update_regs(dcrtc, dplane->vbl.regs); > armada_ovl_retire_fb(dplane, NULL); > } > @@ -120,6 +123,10 @@ armada_ovl_plane_update(struct drm_plane *plane, struct drm_crtc *crtc, > bool visible; > int ret; > > + trace_armada_ovl_plane_update(plane, crtc, fb, > + crtc_x, crtc_y, crtc_w, crtc_h, > + src_x, src_y, src_w, src_h); > + > ret = drm_plane_helper_check_update(plane, crtc, fb, &src, &dest, &clip, > BIT(DRM_ROTATE_0), > 0, INT_MAX, true, false, &visible); > diff --git a/drivers/gpu/drm/armada/armada_trace.c b/drivers/gpu/drm/armada/armada_trace.c > new file mode 100644 > index 000000000000..068b336ba75f > --- /dev/null > +++ b/drivers/gpu/drm/armada/armada_trace.c > @@ -0,0 +1,4 @@ > +#ifndef __CHECKER__ > +#define CREATE_TRACE_POINTS > +#include "armada_trace.h" > +#endif > diff --git a/drivers/gpu/drm/armada/armada_trace.h b/drivers/gpu/drm/armada/armada_trace.h > new file mode 100644 > index 000000000000..dc0cba70fd1a > --- /dev/null > +++ b/drivers/gpu/drm/armada/armada_trace.h > @@ -0,0 +1,66 @@ > +#if !defined(ARMADA_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) > +#define ARMADA_TRACE_H > + > +#include <linux/tracepoint.h> > +#include <drm/drmP.h> > + > +#undef TRACE_SYSTEM > +#define TRACE_SYSTEM armada > +#define TRACE_INCLUDE_FILE armada_trace > + > +TRACE_EVENT(armada_drm_irq, > + TP_PROTO(struct drm_crtc *crtc, u32 stat), > + TP_ARGS(crtc, stat), > + TP_STRUCT__entry( > + __field(struct drm_crtc *, crtc) > + __field(u32, stat) > + ), > + TP_fast_assign( > + __entry->crtc = crtc; > + __entry->stat = stat; > + ), > + TP_printk("crtc %p stat 0x%08x", > + __entry->crtc, __entry->stat) > +); > + > +TRACE_EVENT(armada_ovl_plane_update, > + TP_PROTO(struct drm_plane *plane, struct drm_crtc *crtc, > + struct drm_framebuffer *fb, > + int crtc_x, int crtc_y, unsigned crtc_w, unsigned crtc_h, > + uint32_t src_x, uint32_t src_y, uint32_t src_w, uint32_t src_h), > + TP_ARGS(plane, crtc, fb, crtc_x, crtc_y, crtc_w, crtc_h, src_x, src_y, src_w, src_h), > + TP_STRUCT__entry( > + __field(struct drm_plane *, plane) > + __field(struct drm_crtc *, crtc) > + __field(struct drm_framebuffer *, fb) > + ), > + TP_fast_assign( > + __entry->plane = plane; > + __entry->crtc = crtc; > + __entry->fb = fb; > + ), > + TP_printk("plane %p crtc %p fb %p", > + __entry->plane, __entry->crtc, __entry->fb) > +); > + > +TRACE_EVENT(armada_ovl_plane_work, > + TP_PROTO(struct drm_crtc *crtc, struct drm_plane *plane), > + TP_ARGS(crtc, plane), > + TP_STRUCT__entry( > + __field(struct drm_plane *, plane) > + __field(struct drm_crtc *, crtc) > + ), > + TP_fast_assign( > + __entry->plane = plane; > + __entry->crtc = crtc; > + ), > + TP_printk("plane %p crtc %p", > + __entry->plane, __entry->crtc) > +); > + > +#endif > + > +/* This part must be outside protection */ > +#undef TRACE_INCLUDE_PATH > +#define TRACE_INCLUDE_PATH . > +#include <trace/define_trace.h> > -- > 2.7.4 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Daniel Vetter Software Engineer, Intel Corporation +41 (0) 79 365 57 48 - http://blog.ffwll.ch _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel