调试指南
26 Nov 2024
Read time: 2 minute(s)
本节介绍 TSensor 调试步骤。
打开调试开关
在 Luban 根目录下执行 make kernel-menuconfig,进入 Kernel 的功能配置,可以打开模块的 DEBUG 选项:
Linux
Kernel hacking
ArtInChip Debug
[*] Thermal Sensor driver debug
打开 DEBUG 选项后:
-
驱动以
-O0
编译。 -
pr_dbg() 和 dev_dbg() 调试信息会被编译。
在系统运行时,如果要打印 pr_dbg() 和 dev_dbg() 信息,还需要调整 loglevel 为 8,可以通过以下两种方式实现:-
在 board.dts 中修改 bootargs,增加 “loglevel=8”
-
在板子启动到 Linux Shell 后,执行下列命令:
echo8 > /proc/sys/kernel/printk
-
Sysfs 节点
- 状态信息在 TSensor 驱动初始化成功后,会在 Sysfs 中注册生成一个
status
节点,其中打印了当前的 TSensor 配置及状态信息:# cat /sys/devices/platform/soc/19253000.tsen/status In Thermal Sensor V1.00: ch0: aic-tsen-cpu, Enable: 1, Value: 0 ch1: aic-tsen-adc, Enable: 1,Value: 0
- 读取温度Linux Thermal 子系统提供一些 Sysfs 节点,可以用来获取温度值等操作。
# cd /sys/class/thermal/ [aic@thermal] # ls thermal_zone0 thermal_zone1 [aic@thermal] # cd thermal_zone0/ [aic@thermal_zone0] # ls available_policies k_po policy type hwmon0 k_pu slope uevent integral_cutoff mode subsystem k_d offset sustainable_power k_i passive temp [aic@thermal_zone0] # cat temp 0 [aic@thermal_zone0] # cat type aic-tsen-cpu