The hashed pointer isn't useful to identify the pwm device. Instead
store and emit chipid and hwpwm.

Signed-off-by: Uwe Kleine-König <u.kleine-koe...@baylibre.com>
---
 include/trace/events/pwm.h | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/include/trace/events/pwm.h b/include/trace/events/pwm.h
index 12b35e4ff917..8022701c446d 100644
--- a/include/trace/events/pwm.h
+++ b/include/trace/events/pwm.h
@@ -15,7 +15,8 @@ DECLARE_EVENT_CLASS(pwm,
        TP_ARGS(pwm, state, err),
 
        TP_STRUCT__entry(
-               __field(struct pwm_device *, pwm)
+               __field(unsigned int, chipid)
+               __field(unsigned int, hwpwm)
                __field(u64, period)
                __field(u64, duty_cycle)
                __field(enum pwm_polarity, polarity)
@@ -24,7 +25,8 @@ DECLARE_EVENT_CLASS(pwm,
        ),
 
        TP_fast_assign(
-               __entry->pwm = pwm;
+               __entry->chipid = pwm->chip->id;
+               __entry->hwpwm = pwm->hwpwm;
                __entry->period = state->period;
                __entry->duty_cycle = state->duty_cycle;
                __entry->polarity = state->polarity;
@@ -32,8 +34,8 @@ DECLARE_EVENT_CLASS(pwm,
                __entry->err = err;
        ),
 
-       TP_printk("%p: period=%llu duty_cycle=%llu polarity=%d enabled=%d 
err=%d",
-                 __entry->pwm, __entry->period, __entry->duty_cycle,
+       TP_printk("pwmchip%u.%u: period=%llu duty_cycle=%llu polarity=%d 
enabled=%d err=%d",
+                 __entry->chipid, __entry->hwpwm, __entry->period, 
__entry->duty_cycle,
                  __entry->polarity, __entry->enabled, __entry->err)
 
 );

base-commit: 6ba37c70795abf1d59976b3a49acafac14b72a4f
-- 
2.43.0


Reply via email to