DM365 uboot参数对应模块 module_param

       很多时候我们内核驱动的模块需要模块参数来运行,这;如下面例子setenvbootargsmem=8;Uboot启动参数中的红色部分表示模块,蓝色部分;我们举例dm365_imp.oper_mode=;驱动文件dm365_ipipe.c被编译到dm3;staticu32oper_mode=IMP_M;如果uboot参数中没有dm365_imp.op;davin

        很多时候我们内核驱动的模块需要模块参数来运行,这个模块参数在基本的驱动概念中有介绍,我们很多时候把他写在uboot的启动参数中,在内核启动时内核会读取uboot的启动参数,这样我们设置在uboot里面的启动参数就可以被对应的驱动模块获取到。

        如下面例子 setenv bootargs mem=80M console=ttyS0,115200n8 root=/dev/nfs nfsroot=192.168.1.222:/home/mydemo/test/yaffs/rootfs noinitrd rw ip=192.168.1.175:192.168.1.1:255.255.255.0 video=davincifb:osd0=1440x240x16 4050K davinci_enc_mngr.ch0_output=LCDdm365_imp.oper_mode=0 davinci_capture.device_type=4

Uboot启动参数中的红色部分表示模块,蓝色部分表示模块里面的参数,黑色部分表示参数的值。

我们举例dm365_imp.oper_mode = 0说明

驱动文件dm365_ipipe.c被编译到dm365_imp.o模块 在dm365_ipipe.c文件中有如下参数对应。

①:

static u32 oper_mode = IMP_MODE_SINGLE_SHOT; 

module_param(oper_mode, uint, S_IRUGO);

如果uboot参数中没有dm365_imp.oper_mode=0 那么参数的值就会被赋值为IMP_MODE_SINGLE_SHOT(1)。 

②:

davinci_enc_mngr.ch0_output=LCD参数在 Davinci_enc_mngr.c中

static char *ch0_output = ""; 

static char *ch1_output = ""; 

static char *ch0_mode = ""; 

static char *ch1_mode = "";

module_param(ch0_output, charp, S_IRUGO); 

module_param(ch1_output, charp, S_IRUGO); 

module_param(ch0_mode, charp, S_IRUGO); 

module_param(ch1_mode, charp, S_IRUGO); 

③:

davinci_capture.device_type=

This defines which driver to use. Use the following settings: 

davinci_capture.device_type=0 for MT9T001 

davinci_capture.device_type=1 for TVP5146 

davinci_capture.device_type=2 for MT9T031 

davinci_capture.device_type=3 for MT9P031 

davinci_capture.device_type=4 for TVP7002

这里我们可以去掉。

此外:

        通过命令“modinfo -p ${modulename}”可以得知一个模块有哪些参数可以使用。同时,对于已经加载到内核里的模块,它们的模块参数会列举在/sys/module/${modulename}/parameters/目录下面,可以使用“echo -n ${value} > /sys/module/${modulename}/parameters/${parm}”这样的命令去修改。

但是这个操作是需要有权限问题的。

module_param(node_name, charp, S_IRUGO | S_IWUSR);

这个用户写权限S_IWUSR必须增加。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值