#include "dpaux.h"
 #include "drm.h"
+#include "trace.h"
 
 static DEFINE_MUTEX(dpaux_lock);
 static LIST_HEAD(dpaux_list);
 static inline u32 tegra_dpaux_readl(struct tegra_dpaux *dpaux,
                                    unsigned int offset)
 {
-       return readl(dpaux->regs + (offset << 2));
+       u32 value = readl(dpaux->regs + (offset << 2));
+
+       trace_dpaux_readl(dpaux->dev, offset, value);
+
+       return value;
 }
 
 static inline void tegra_dpaux_writel(struct tegra_dpaux *dpaux,
                                      u32 value, unsigned int offset)
 {
+       trace_dpaux_writel(dpaux->dev, offset, value);
        writel(value, dpaux->regs + (offset << 2));
 }
 
 
        TP_PROTO(struct device *dev, unsigned int offset, u32 value),
        TP_ARGS(dev, offset, value));
 
+DEFINE_EVENT(register_access, dpaux_writel,
+       TP_PROTO(struct device *dev, unsigned int offset, u32 value),
+       TP_ARGS(dev, offset, value));
+DEFINE_EVENT(register_access, dpaux_readl,
+       TP_PROTO(struct device *dev, unsigned int offset, u32 value),
+       TP_ARGS(dev, offset, value));
+
 #endif /* DRM_TEGRA_TRACE_H */
 
 /* This part must be outside protection */