linux power_supply

Linux内核通过power_supply结构体为电池驱动提供接口,并在/sys/class/power_supply下通过sysfs向用户空间暴露电池等电源信息。驱动程序需要实现特定的函数指针,用户可通过读取相应文件获取电源状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

内核提供给电池驱动的接口就是结构体power_supply。

Battery驱动程序需要通过sys文件系统向用户空间提供接口,sys文件系统的路径是由上层的程序指定的。

Linux标准的Power Supply驱动程序所使用的文件系统路径问/sys/class/power_supply,其中的每个子目录表示一种能源供应设备的名称。

Power Supply驱动程序的头文件在include/linux/power_supply.h中定义,注册和注销驱动程序的函数如下所示:

struct power_supply *power_supply_register(struct device *parent,
    const struct power_supply_desc *desc,
    const struct power_supply_config *cfg)
void power_supply_unregister(struct power_supply *psy)

其中power_supply结构体为驱动程序需要实现的部分:

struct power_supply {
    const struct power_supply_desc *desc;

    char **supplied_to;
    size_t num_supplicants;

    char **supplied_from;
    size_t num_supplies;
    struct device_node 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值