4,441
社区成员
发帖
与我相关
我的任务
分享
struct mem_dev
{
char *data;
unsigned long size;
};
/*include semaphore ,cdev
*/
struct scull_dev //我自己定义的一种字符设备,问题出自在各个?
但LDD上面写的可以将cdev结构嵌入到自己的设备特定结构中啊
{
struct mem_dev *mem_devp;
struct semaphore sem;
struct cdev cdev;
};
struct scull_dev *dev;
/*setup cdev*/
printk("1111\n"); //执行完这一行后出错
cdev_init(&dev->cdev, &scull_fops); //问题就出现在这一行
printk("2222\n");
dev->cdev.owner = THIS_MODULE;
printk("3333\n");
dev->cdev.ops = &scull_fops; //relate file_operations
printk("4444\n");
if ((ret = cdev_add(&dev->cdev, devt, 1))) //acknowledge kernel
{
printk(KERN_NOTICE "Error %d adding scull.\n", ret);
return -1;
}
else
printk("scull register success.\n");