ConfigFS 系统实现多级组目录
文章目录
前言
前面的知识点从ConfigFS 概念 -> ConfigFS基础必备 ->ConfigFS注册子系统->ConfigFS注册group组->ConfigFS 注册Item-> ConfigFS 释放资源->再到这里ConfigFS 属性读取->ConfigFS 实现多级目录创建。其实都是从一个简单例子,一步一步到各个知识点,对同一个实例不断添加知识点的功能。 这里就开始理解属性相关知识了。
其实就是要在子group 中继续创建group 实现这样的一个功能或者需求。
参考资料
重温一下前面的知识点,方便后续查看资料时候对知识点进行再一次的脉络梳理:
Linux驱动-设备树插件语法
设备树插件基础必备
设备树插件注册子系统
驱动-设备树插件-注册group
RK3568驱动指南|第八篇 设备树插件-第78章 用户空间创建item实验
驱动-设备数插件-创建Item
设备树插件-第79章 完善drop和release函数实验
驱动-ConfigFS-释放资源篇
设备树插件 注册attribute实验
Linux驱动-ConfigFS-读写属性操作
设备树插件-第81章 实现多级目录实验
迅为设备树插件模块知识点
一、ConfigFS实现多级目录知识点
源码实例
#include <linux/module.h>
#include <linux/init.h>
#include <linux/slab.h>
#include <linux/configfs.h>
// 定义一个名为"mygroup"的config_group结构体
static struct config_group mygroup;
// 自定义的配置项结构体
struct myitem
{
struct config_item item;
int size;
void *addr;
};
// 自定义的配置组结构体
struct mygroup
{
struct config_group group;
};
// 配置项释放函数
void myitem_release(struct config_item *item)
{
struct myitem *myitem = container_of(item, struct myitem, item);
kfree(myitem);
printk("%s\n", __func__);
};
// 读取配置项内容的回调函数
ssize_t myread_show(struct config_item *item, char *page)
{
struct myitem *myitem = container_of(item, struct myitem, item);
memcpy(page, myitem->addr, myitem->size);
printk("%s\n", __func__);
return myitem->size;
};
// 写入配置项内容的回调函数
ssize_t mywrite_store
ConfigFS实现多级目录创建

最低0.47元/天 解锁文章
449

被折叠的 条评论
为什么被折叠?



