Regulator相关GPIO控制使用流程简析

发布者:BlissfulSpirit最新更新时间:2025-02-18 来源: cnblogs关键字:Regulator  GPIO控制  使用流程 手机看文章 扫描二维码
随时随地手机看文章

    .probe        = XXX_gpio_regulators_probe,

    .remove        = __devexit_p(XXX_gpio_regulators_remove),

    .driver        = {

        .name    = 'gpio-regulators',

        .owner    = THIS_MODULE,

#if 0

        .pm    = &gpio_regulators_pm_ops,

#endif

    }

};


static int __init XXX_gpio_regulator_init(void)

{

    printk('XXX_gpio_regulator_initn');

    return platform_driver_register(&gpio_regulators_driver);

}



static void __exit XXX_gpio_regulator_exit(void)

{

    platform_driver_unregister(&gpio_regulators_driver);

}

subsys_initcall(XXX_gpio_regulator_init);

//subsys_initcall_sync(XXX_gpio_regulator_init);

module_exit(XXX_gpio_regulator_exit);


MODULE_DESCRIPTION('XXX gpio controlled regulator driver');

MODULE_AUTHOR('SSCR jeff ');

MODULE_LICENSE('GPL');


4,使用方式


首先,


static  struct regulator *xxx_reg; 定义一个regulator结构体指针;


其次,


xxx_reg = regulator_get(NULL, 'vdd_gps');获取这个指针


最后操作


if (IS_ERR(xxx_reg)) {

printk(KERN_ERR 'failed to get resource %sn', 'xxx_reg');

}else{

regulator_enable(wifi_reg);//通过此来操作I/O控制I/O


}


好处是,方便LINUX各个驱动内部之间的控制。当然也可以用一般的GPIO流驱动替换


[1] [2]
关键字:Regulator  GPIO控制  使用流程 引用地址:Regulator相关GPIO控制使用流程简析

上一篇:Realtek 8192cu 驱动移植到 Android 2.2
下一篇:KStudio window上编译uclinux

小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved