• Jae Hyun Yoo's avatar
    i2c: add tracepoints for I2C slave events · d714fb25
    Jae Hyun Yoo authored
    I2C slave events tracepoints can be enabled by:
    
    	echo 1 > /sys/kernel/tracing/events/i2c_slave/enable
    
    and logs in /sys/kernel/tracing/trace will look like:
    
    	... i2c_slave: i2c-0 a=010 ret=0 WR_REQ []
    	... i2c_slave: i2c-0 a=010 ret=0 WR_RCV [02]
    	... i2c_slave: i2c-0 a=010 ret=0 WR_RCV [0c]
    	... i2c_slave: i2c-0 a=010 ret=0   STOP []
    	... i2c_slave: i2c-0 a=010 ret=0 RD_REQ [04]
    	... i2c_slave: i2c-0 a=010 ret=0 RD_PRO [b4]
    	... i2c_slave: i2c-0 a=010 ret=0  STOP []
    
    formatted as:
    
    	i2c-<adapter_nr>
    	a=<addr>
    	ret=<ret>	<- callback return value
    	<event>
    	[<data>]
    
    trace printings can be selected by adding a filter like:
    
    	echo adapter_nr==1 >/sys/kernel/tracing/events/i2c_slave/filter
    Signed-off-by: default avatarJae Hyun Yoo <quic_jaehyoo@quicinc.com>
    Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
    d714fb25
i2c-core-slave.c 3.2 KB