全志平台系统&CPU&APX调试节点总结

free-jdx 2021-01-27 00:00:00 1943
1. 前言

由于全志平台的电源管理模块功能比较强大,驱动也比较复杂,调试起来比较费劲;
另外还有CPU和系统一些常用的调试命令;
这里主要总结一些平时用的比较多的调试方法

2. /sys/class/axppower 调试目录

(1) /sys/class/axppower/axpdebug

        echo 1 > /sys/class/axppower/axpdebug                    //打开电池管理部分debug信息
        echo 2 > /sys/class/axppower/axpdebug                   //打开regulator部分debug信息
        echo 4 > /sys/class/axppower/axpdebug                   //打开中断部分debug信息
        echo 8 > /sys/class/axppower/axpdebug                   //打开充电部分debug信息
        echo 0 > /sys/class/axppower/axpdebug                   //关闭debug信息

(2) /sys/class/axppower/regdebug
// 追踪axp寄存器是否被读写
例如:
echo 5c > /sys/class/axppower/regdebug

(3) /sys/class/axppower/longkeypoweroff
// 打开关闭 power on reset 功能

echo 1 > /sys/class/axppower/longkeypoweroff    // 打开
echo 0 > /sys/class/axppower/longkeypoweroff    // 关闭

(4) /sys/class/axppower/out_factory_mode
不知道什么用
(5) /sys/class/axppower/vbuslimit
// 提供usb充电关闭限流 max_A = 2500mA

echo 0 >   /sys/class/axppower/vbuslimit            // 关闭usb充电限流 max_A = 2500mA
echo 1 >  /sys/class/axppower/vbuslimit             // 打开usb充电限流
3. /sys/bus/platform/devices/axp81x_board/

(1)axp-regulator.x 文件节点

(2)axp81x-supplyer.x 文件节点

(3) axp81x_reg 读写单个寄存器的调试节点

  读寄存器的方法:
        写: echo 寄存器地址 > axp81x_reg
        读: cat  axp81x_reg

    写单个寄存器的方法:
        写: echo 寄存器地址+值 > axp81x_reg    (寄存器地址+值:16进制,例如向0x0寄存器写入0x11,则echo 011 > axp81x_reg)  
        读: cat  axp81x_reg

(4) axp81x_regs 读多个寄存器的调试节点

 读寄存器的方法:       
        写: echo 寄存器地址 个数 > axp81x_regs
        读: cat  axp81x_regs

    写多个寄存器的方法: (最多才两个寄存器,还是连续的递增)
        写: echo 寄存器地址1+值1+值2 > axp81x_regs  (值2: 向寄存器地址1+1写入值2)
        读: cat  axp81x_regs
4. /sys/bus/platform/devices/reg-81x-cs-xxxx

(这些节点存在目的是为了方便调试)

例如: /sys/bus/platform/devices/reg-81x-cs-dcdc4/
    -- max_microamps            // 设置电流最大值,只是和dcdc4 max value对比一下,用做检测作用
    --min_microamps            //  设置电流最小值,只要写入新的值,实质电流 = min_microamps
        echo 电流(毫安) > /sys/bus/platform/devices/reg-81x-cs-dcdc4/min_microamps       // 生效的前提是min_microamps < max_microamps

    --max_microvolts             // 电压和电流同理
    --min_microvolts            // 电压和电流同理
        echo 电压(毫伏) > /sys/bus/platform/devices/reg-81x-cs-dcdc4/min_microvolts
5. Cpu最小频点锁定配置

分别为800Mhz、1080Mhz和1200Mhz

 echo 800000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 
   echo 1080000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq 
   echo 1200000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
6. Cpu 关闭开关核策略、 锁定当前online数目

分别为锁定2核、3核和4核在线

    echo 0 > /sys/kernel/autohotplug/enable
    echo 2 > /sys/kernel/autohotplug/lock
    echo 3 > /sys/kernel/autohotplug/lock
    echo 4 > /sys/kernel/autohotplug/lock   或者 echo 1 > /sys/kernel/autohotplug/boost_all  
7. 恢复动态开关核
    echo 1 > /sys/kernel/autohotplug/enable 
    echo 0 > /sys/kernel/autohotplug/lock    
    echo 0 > /sys/kernel/autohotplug/boost_all 
8. 温度相关的节点
sys/devices/virtual/thermal/thermal_zone/mode   enabled 打开 和 disabled 关闭温控
 echo disabled > /sys/devices/virtual/thermal/thermal_zone0/mode
 /sys/devices/virtual/thermal/thermal_zone/temp   温度数据
./sys/class/thermal 和 sys/devices/virtual/thermal是一样的
./sys/kernel/debug/tracing/events/thermal
9. 查看内存大小
cma:      cat /sys/kernel/debug/ion/cma
carveout: cat /sys/kernel/debug/ion/carveout
           cat /proc/sunxi_ion           

GPU内存:           
cat /sys/kernel/debug/mali/memory_usage
10. 刷cache方法
刷free pagecache
echo 1> /proc/sys/vm/drop_caches
刷free pagecache, dentries and inodes
echo 3> /proc/sys/vm/drop_caches
11.循环打印shell命令
adb shell "while true;do dumpsys meminfo com.android.systemui;sleep 1; echo ======================================================= ;done"  
adb shell "while true;do cat /sys/class/thermal/thermal_zone0/temp ;sleep 1;done"   
adb shell "while true;do  cat /sys/kernel/debug/ion/cma;sleep 1;done"   

echo 1 > /sys/kernel/debug/tracing/events/kmem/enable
echo 1 > /sys/kernel/debug/tracing/events/vmscan/enable
echo > /sys/kernel/debug/tracing/trace
cat /sys/kernel/debug/tracing/trace > /data/trace.log
声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
free-jdx
红包 点赞 收藏 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
free-jdx
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区