drm/tegra: sor: Trace register accesses
authorThierry Reding <treding@nvidia.com>
Tue, 15 Aug 2017 13:41:14 +0000 (15:41 +0200)
committerThierry Reding <treding@nvidia.com>
Thu, 17 Aug 2017 15:57:17 +0000 (17:57 +0200)
Add tracepoint events for SOR controller register accesses.

Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/sor.c
drivers/gpu/drm/tegra/trace.h

index d0f189c5171dbfd5d1e07e172269b16648f1fd12..8de2a6cc317d50f3d341c7361925557cebbb381e 100644 (file)
@@ -26,6 +26,7 @@
 #include "dc.h"
 #include "drm.h"
 #include "sor.h"
+#include "trace.h"
 
 #define SOR_REKEY 0x38
 
@@ -234,12 +235,17 @@ static inline struct tegra_sor *to_sor(struct tegra_output *output)
 
 static inline u32 tegra_sor_readl(struct tegra_sor *sor, unsigned int offset)
 {
-       return readl(sor->regs + (offset << 2));
+       u32 value = readl(sor->regs + (offset << 2));
+
+       trace_sor_readl(sor->dev, offset, value);
+
+       return value;
 }
 
 static inline void tegra_sor_writel(struct tegra_sor *sor, u32 value,
                                    unsigned int offset)
 {
+       trace_sor_writel(sor->dev, offset, value);
        writel(value, sor->regs + (offset << 2));
 }
 
index e497a0258ee43ae4881a0c676dc462f89b0f2829..e9b7cdad5c4c1beac73bca274321cc57280006bd 100644 (file)
@@ -52,6 +52,13 @@ DEFINE_EVENT(register_access, dpaux_readl,
        TP_PROTO(struct device *dev, unsigned int offset, u32 value),
        TP_ARGS(dev, offset, value));
 
+DEFINE_EVENT(register_access, sor_writel,
+       TP_PROTO(struct device *dev, unsigned int offset, u32 value),
+       TP_ARGS(dev, offset, value));
+DEFINE_EVENT(register_access, sor_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 */