根据键名解析特定属性的值相关API

mycdev.c

复制代码
#include <linux/init.h>
#include <linux/module.h>
#include <linux/of.h>

struct device_node *node; //解析得到的设备树节点对象指针
struct property *pr;   //属性结构体指针
int len;
u32 a;
u32 b[2];
const char *str;
u8 c[6];
static int __init mycdev_init(void)
{
    int i;
    //解析设备树节点信息
    node = of_find_node_by_path("/mynode@0x12345678");
    if(node == NULL)
    {
        printk("解析设备树节点失败\n");
        return -ENXIO;
    }
    printk("获取节点信息成功\n");
    //获取u32数值
    of_property_read_u32_index(node,"unit",0,&a);
    printk("%#x\n",a);
    printk("u32\n");
    //获取u32数组
    of_property_read_variable_u32_array(node,"unit",b,2,2);
    printk("%#x,%#x\n",b[0],b[1]);
    printk("u32数组\n");
    //获取字符串类型的值
    of_property_read_u8_array(node,"binarry",c,6);
    for(i=0;i<6;i++)
    {
        printk("%#x\n",c[i]);
    }
    printk("u8\n");
    return 0;
}
static void __exit mycdev_exit(void)
{


}
module_init(mycdev_init);
module_exit(mycdev_exit);
MODULE_LICENSE("GPL");
相关推荐
我的golang之路果然有问题1 分钟前
云服务器部署Gin+gorm 项目 demo
运维·服务器·后端·学习·golang·gin
初辰ge3 分钟前
做个大屏既要不留白又要不变形还要没滚动条,我直接怒斥领导,大屏适配就这四种模式
前端·javascript
Face5 分钟前
路由Vue-router 及 异步组件
前端·javascript·vue.js
Nano6 分钟前
Axios 进阶指南:掌握请求取消与进度监控的艺术
前端
工呈士6 分钟前
Context API 应用与局限性
前端·react.js·面试
ArcX7 分钟前
从 JS 到 Rust 的旅程
前端·javascript·rust
程序员岳焱7 分钟前
Java 高级泛型实战:8 个场景化编程技巧
java·后端·编程语言
胡gh8 分钟前
深入理解React,了解React组件化,脱离”切图崽“,迈向高级前端开发师行列
前端·react.js
技术小丁8 分钟前
使用 HTML + JavaScript 实现自定义富文本编辑器开发实践(附完整代码)
前端·javascript·html