调试指南
调试开关
在 luban 根目录下执行 make
kernel-menuconfig,进入 kernel 的功能配置,可以打开 PSADC 模块的 DEBUG 选项:
LinuxKernelhackingArtinchipDebug[*]PSADCdriverdebug
此 DEBUG 选项打开的影响:
-
PSADC 驱动以-O0 编译
-
PSADC 的 pr_dbg()和 dev_dbg()调试信息会被编译
在系统运行时,如果要打印 pr_dbg()和 dev_dbg()信息,还需要调整 loglevel 为 8,两个方法:
-
在 dts 中修改 bootargs,增加“loglevel=8”
-
在板子启动到 shell 后,执行命令:
echo8 > /proc/sys/kernel/printk
Sysfs 节点
IIO 子系统会为 ADC 设备创建一组标准的 Sysfs 节点文件,可用于读取 ADC 的数值。
# cd /sys/devices/platform/soc/18210000.psadc/iio:device0 /sys/devices/platform/soc/18210000.psadc/iio:device0 # ls dev in_voltage5_raw events in_voltage5_raw_available in_voltage0_raw in_voltage6_raw in_voltage0_raw_available in_voltage6_raw_available in_voltage10_raw in_voltage7_raw in_voltage10_raw_available in_voltage7_raw_available in_voltage11_raw in_voltage8_raw in_voltage11_raw_available in_voltage8_raw_available in_voltage1_raw in_voltage9_raw in_voltage1_raw_available in_voltage9_raw_available in_voltage2_raw in_voltage_scale in_voltage2_raw_available name in_voltage3_raw of_node in_voltage3_raw_available power in_voltage4_raw subsystem in_voltage4_raw_available uevent # cat in_voltage7_raw# 4095