跟踪 I2C 事件

注意:我假设 debugfs 安装在/sys/kernel/debug

如果没有,请尝试:

mount -t debugfs none /sys/kernel/debug

切换到跟踪目录:

cd /sys/kernel/debug/tracing/

确保禁用了功能跟踪器:

echo nop > current_tracer

启用所有 I2C 事件:

echo 1 > events/i2c/enable

确保已启用跟踪:

echo 1 > tracing_on

可以在/sys/kernel/debug/tracing/trace 中查看跟踪消息,例如:

... 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

跟踪事件用户空间 API 文档可以在内核源文件 Documentation/trace/events.txt 中找到。