查看: 1626|回复: 0

视壮科技商显主板RK3288在uboot电量计驱动分析

[复制链接]
  • TA的每日心情

    2018-11-30 11:03
  • 签到天数: 53 天

    连续签到: 1 天

    [LV.5]常住居民I

    发表于 2018-6-22 09:59:43 | 显示全部楼层 |阅读模式
    分享到:
    视壮科技商显主板RK3288在uboot电量计驱动分析
    1、uboot添加电量计fg驱动:
    修改u-boot\drivers\power\fuel_gauge\fg_cw201x.c
    #define COMPAT_ROCKCHIP_CW201X "cw2013"        
    宏定义COMPAT_ROCKCHIP_CW201X 必须与内核的dts里面的节点一致,如下:
    CW2015@62 {
                    compatible = "cw2013";
                    status = "okay";

    2、uboot修改系统正常启动的电压门限宏定义,低于这个电压,禁止uboot启动内核,并关机。
    u-boot\include\configs\rk32plat.h
    #define CONFIG_SYSTEM_ON_VOL_THRESD        7500        //7500表示7.5V,如果不接外部电源,电池电压低于7.5V时,系统不能启动。

    3、添加低电压图片:
    1)拷贝u-boot\tools\resource_tool\resources\images\battery_fail.bmp到kernel根目录下。
    2)修改kernel\arch\arm\Makefile,将battery_fail.bmp编译进固件
            LOGO := $(notdir $(wildcard $(srctree)/logo.bmp)) $(notdir $(wildcard $(srctree)/battery_fail.bmp))
    3)修改uboot/board/rockchip/common/rkboot/fastboot.c
    static void board_fbt_low_power_off(void)
    {
            if (is_power_low()) {
                    if (!is_charging()) {
                            FBTERR("low power, shutting down...\n");
    #ifdef CONFIG_LCD
    #ifdef CONFIG_RK_FB
                            //TODO: show warning logo.
            -              show_resource_image("image/battery_fail.bmp");
            +              show_resource_image("battery_fail.bmp");

    4、uboot电压计算
    uboot/drivers/power/fuel_gauge/fg_cw201x.c
    cw_get_vol()
    {
    -        voltage = value16_1 * 305;
    -        return voltage/1000;

    //与内核fg驱动计算公式一致。
    +        voltage_jason = (value16_1 * 312 / 1024)*2;
    +        return voltage_jason;

    }

    uboot计算出来的电压要比kernel计算出来的电压高0.3V左右。板子一上电uboot就计算电压,所以电压值会偏高一点。
    uboot电量百分比的计算公式依赖于电压,所以要注意电量百分比的计算。
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-20 02:32 , Processed in 0.116121 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.