根据键名解析特定属性的值相关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");
相关推荐
m0_71676523几秒前
C++提高编程--STL初识、string容器详解
java·开发语言·c++·经验分享·学习·青少年编程·visual studio
Memory_荒年2 分钟前
马年驯服不稳定服务:Resilience4j 容错救星驾到!
java·后端
卓怡学长2 分钟前
m278基于web的在线教学质量评价系统
java·数据库·spring·tomcat·maven·intellij-idea
程序员buddha2 分钟前
Java面试八股文Redis篇
java·redis·面试
Leo655354 分钟前
动态 SQL(行+列) + 动态表头(前端+EasyPoi) = 完整透视报表系统
前端·sql·状态模式
Gary jie4 分钟前
OpenClaw启动日志详细分析
前端·chrome
rannn_1116 分钟前
【Redis|实战篇4】黑马点评|分布式锁
java·数据库·redis·分布式·后端
wapicn997 分钟前
智能识别技术在生活服务领域的落地应用与前景展望
java·c++·人工智能·python·php
择势9 分钟前
macOS App 签名与公证流程详解及一键自动化
前端
qiumingxun12 分钟前
【Go】Go语言基础学习(Go安装配置、基础语法)
服务器·学习·golang