WUCANADA / I2c / Ftrace:snoop i2c bus transactions – te...

0 0

   

Ftrace:snoop i2c bus transactions – technolinchpin

2018-03-28  WUCANADA

Ftrace:snoop i2c bus transactions

The data transferred by the system over the i2c bus (and smbus) can be snooped using the kernel’s FTRACE facility. To use this, the following kernel options need to be enabled:

  • CONFIG_FTRACE
  • CONFIG_ENABLE_DEFAULT_TRACERS

i2c tracing can then be enabled by:

echo 1 >/sys/kernel/debug/tracing/events/i2c/enable

Note that this will, by default, trace the traffic through all i2c adapters on the system. You can be selective about what you trace by something like:

echo adapter_nr==1 >/sys/kernel/debug/tracing/events/i2c/filter

The trace output can be found in prettified text form by:

cat /sys/kernel/debug/tracing/trace

This will look something like:

... i2c_write: i2c-5 #0 a=044 f=0000 l=2 [02-14]
... i2c_read: i2c-5 #1 a=044 f=0001 l=4
... i2c_reply: i2c-5 #1 a=044 f=0001 l=4 [33-00-00-00]
... i2c_result: i2c-5 n=2 ret=2

Where the components are:

  • i2c-<adapter-nr>
  • #<message-array-index>
  • a=<addr>
  • f=<flags>
  • l=<datalen>
  • n=<message-array-size>
  • ret=<result>
  • [<data-transferred>]

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。如发现有害或侵权内容,请点击这里 或 拨打24小时举报电话:4000070609 与我们联系。

    来自: WUCANADA > 《I2c》

    猜你喜欢

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多
    喜欢该文的人也喜欢 更多