Hi Laurent, 

Thanks for getting back to me. I took a look at what you said, and
here's what I've found.

> What are the symptoms ? Do you get an error when you try to access the

> control ? If so, what error (errno) do you get?

When I try to access the control, I get errno 22 (EINVAL) returned. I've
also noticed that when I enumerate the controls on the camera, my new
control displays the same information as a control that is not supported
by this camera. This is why I was wondering if I needed to associate the
control with the camera somehow.

Output from my test app:

ID: 0x800000a Exposure, Auto    Min: 0  Max: 100        Step: 3
ID: 0x800000b Exposure (Absolute)       Min: 100        Max: 10000
Step: 50
ID: 0x800000c   Min: 100        Max: 10000      Step: 50
ID: 0x800000d   Min: 100        Max: 10000      Step: 50
ID: 0x800000e   Min: 100        Max: 10000      Step: 50

The first two controls are supported on this camera. Controls c & d are
unsupported, control e is my new control.

> If you can enumerate the control on your device instance, there should
be 
> no "association" problem. Try to raise the trace level to 255
(modprobe
> uvcvideo trace=255 or echo 255 >
/sys/modules/uvcvideo/parameters/trace)
> and check the kernel log (dmesg) for error messages after you try to
> access the control from your userspace application.

So I raised the trace level, and I've been able to pinpoint where the
error is occurring. The function uvc_find_ctrl (uvc_ctrl.c) is unable to
find the control. The trace message logged in dmesg is "uvcvideo:
Control 0x800000e not found.

After some more debugging I also found that uvc_find_ctrl searchs the
video->iterms list, but not the video->extensions list, presumably
because there are no items in this list? Could this be my problem?

Thanks,

Nathanael
_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to