- 论坛徽章:
- 3
|
回复 1# guanss2014
楼主你看下你创建的设备,/sys/class/hsc的符号链接的设备目录有没有dev的属性文件!
948 device_register()->device_add()
949 if (MAJOR(dev->devt)) {
950 error = device_create_file(dev, &devt_attr);
951 if (error)
952 goto ueventattrError;
953
954 error = device_create_sys_dev_entry(dev); //创建dev属性文件
955 if (error)
956 goto devtattrError;
957
958 devtmpfs_create_node(dev); //创建设备节点。。
959 }
如果没有设备节点很有可能有两个原因:
1) MAJOR()条件语句进不去, 说明你的注册的设备号是有问题的
2) 第二种可能是:devtmpfs_create_node(dev)调用device_get_devnode函数失败。
这个函数负责创建设备节点在devtmpfs文件系统的相对路径名.
如果没有dev属性文件很有可能是第一个原因。
我今天写的伪字符驱动也是因为第一个原因没有创建设备节点 |
|