Linux3.10内核proc文件系统API变化
一、先看下之前版本在/proc/下创建文件并提供opsproc_dir = proc_mkdir(MOTION_PROC_DIR, NULL);if (!proc_dir) {err = -ENOMEM;goto no_proc_dir;}proc_file = create_proc_entry(MOTION_PROC_FILE, 0666, proc_dir);
·
本文基于mtk5507平台,内核版本Linux3.10。
一、先看下之前版本在/proc/下创建文件并提供ops
proc_dir = proc_mkdir(MOTION_PROC_DIR, NULL);
if (!proc_dir) {
err = -ENOMEM;
goto no_proc_dir;
}
proc_file = create_proc_entry(MOTION_PROC_FILE, 0666, proc_dir);
if (!proc_file) {
err = -ENOMEM;
goto no_proc_file;
}
proc_file->proc_fops = &event_fops;
二、看看Linux3.10版本相同操作
proc_dir = proc_mkdir(MOTION_PROC_DIR, NULL);
if (!proc_dir) {
err = -ENOMEM;
goto no_proc_dir;
}
//modify by tan for linux3.10
//proc_file = create_proc_entry(MOTION_PROC_FILE, 0666, proc_dir);
proc_file = proc_create(MOTION_PROC_FILE, 0666, proc_dir,&event_fops);
//end tank
if (!proc_file) {
err = -ENOMEM;
goto no_proc_file;
}
//proc_file->proc_fops = &event_fops; //modify by tank for linux3.10
三、注意问题
当在64bit的CPU环境下使用copy_from_user时用户空间程序必须通过64bit编译;不然拷贝会有问题。
更多推荐
已为社区贡献10条内容
所有评论(0)