apollo - debugfs的调试功能,寄存器读写

debugfs和/proc,sysfs类似提供给用户空间内核模块信息,多数用于调试目的。
Apollo利用了该特性,并且提供相当多的调试用途。
在使用之前需要,$insmod lnxdebugDrv.ko

一:内核空间内存的读写
比如读寄存器:
$ cd /debugfs/platform
$ echo e077b334 e077b33c > range #设定要读取的范围
$ hexdump bin
或者 $ cat hex
结果:
0000000 da13 284b 049f 05a3                   
0000008

注: e077b334 = e0600000(mmio基地址) + 17b000(UG P100, denc的偏移地址) + 0x334(SD_DB_SECAM偏移地址)

写寄存器:
简单例子,如关闭视频输出,相应寄存器是DAC_ENABLE = e0600000 + 17b000 + c = 0xe077b00c
$ echo e077b00c e077b108 > range
$ echo e077b00c 400 > poke

二: 性能监测
$/opt/perf/pman-perf
-h: 提供帮助信息


三: 前端子系统监测
可以看前端的Firmware版本,锁定参数,信号等!
$cat /debugfs/demod/diagnostics

四: demux子系统
可以查看demux的状态,尤其TSP, TSR等寄存器值
$cat /debugfs/demux/diagnostics

五:Audio子系统
$cat /debugfs/audio/help 得到使用信息,可以看audio处理器寄存器

六:Video子系统
$cat /debugfs/video/help 得到使用信息,

你可能感兴趣的:(职场,休闲,debugfs)