MTK7981-GPIO驱动能力修改

当默认的GPIO驱动能力无法满足需求时,如LED灯亮度不足,可以通过修改uboot代码或直接修改寄存器值来加强驱动能力。文章介绍了两种方法:一是通过调用MTK的驱动函数mtk_pinconf_drive_set在uboot启动过程中改变GPIO配置;二是直接访问IOCFG_LB_BASE寄存器并修改相应位来调整GPIO的驱动档位。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

在某些使用场景,默认的GPIO驱动能力可能不够,比如LED灯的不够亮,需加大驱动能力。


提示:以下是本篇文章正文内容,下面案例可供参考

一、uboot代码修改

直接调用MTK的驱动函数:mtk_pinconf_drive_set

#define LED_POWER    4        //GPIO编号

#define LED_DRIVE    16        //驱动能力档位,改到最大档

void mtk_drive_set(void)

{
    struct udevice *dev;
    uclass_foreach_dev_probe(UCLASS_PINCTRL, dev) {
        mtk_pinconf_drive_set(dev, LED_POWER, LED_DRIVE);
    }
}

将此函数放置在const char *bootdelay_process(void),里面调用即可

二、直接通过命令修改寄存器值

IOCFG_LB_BASE 0x11E00000
默认值:8208000

IOCFG_LB_BASE+0x0000[8:6]     --- 4  POWER

regs d 11e00000
regs w 11e00000 82081C0


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值