- To: slug@xxxxxxxxxxx
- Subject: [SLUG] Unable to change module parameter at runtime
- From: Leslie Katz <lesliek@xxxxxxxxxxxxxx>
- Date: Tue, 05 Jul 2005 18:50:50 +1000
I am using Fedora Core 3 with kernel version 2.6.11-1.35. Included in
that kernel is a webcam driver, sn9c102. That driver supports only v4l2.
The developer of the driver has made available separately a version
of the driver that supports both v4l1 and v4l2, called sn9c102-v4lx.
I am now using that driver instead of the one included in the kernel.
The replacement driver in its default mode works with an application
that supports v4l2, but not with an application that supports v4l1.
The documentation that comes with the separate driver lists a number
of "module parameters". Here's what's said about one of them:
"Name: force_v4lx
Type: ushort array (min = 0, max = 64)
Syntax: <0|1|2[,...]>
Description: Force the application to use ioctl's corresponding to a
particular version of the V4L API.
0 = allow both V4L1 and V4L2 ioctl's
1 = allow V4L1 ioctl's only
2 = allow V4L2 ioctl's only
This parameter is specific for each detected camera. This
module parameter can be changed at runtime thanks to the /sys
filesystem interface.
Default: 0"
I want to force the application to allow V4L1 ioctls only in the hope
that that will allow me to use my webcam with an application that
supports only v4l1, but I've not been able to find out how.
Some time ago, I did ask how in a forum which deals with the separate
driver, but have got no answer to my question.
My own scratching around on the web got me to the /sbin/sysctl
command, which I assumed was what I should be using to change the
module parameter at runtime, but when I get a list of settings in the
/proc/sys directory that are configurable, force_v4lx does not appear
among them.
I must be missing something fundamental here, but I haven't been able
to find any other method of changing a module parameter at runtime.
Can anyone tell me how I should be changing the module parameter?