2007-11-06 17:50:28

by Markus Hirschmann

[permalink] [raw]
Subject: Problems using quickcam_messenger on ARM (FYI)

Hello Kernel-Developer,

Module quickcam_messenger seems to be broken (tried 2.6.18 and 2.6.22)
on 2 different NSLU2 (ARM). Picture is attached. Same kernel and module
can be used without any problems on x86 here. I don't have any ARM
device beside the NSLU2, so I cannot check.

The solution was to use Christian Magnusson's quickcam module.
Everything worked without any problem. Webcam is:

Bus 003 Device 005: ID 046d:08f0 Logitech, Inc. QuickCam Messenger

Best regards and thanks for your work!

Markus

Kernel is:
Linux secure 2.6.18-5-ixp4xx #1 Thu Oct 11 20:42:54 UTC 2007 armv5tel
GNU/Linux

Logs with quickcam_messenger:

Nov 5 13:35:54 secure kernel: Linux video capture interface: v2.00
Nov 5 13:35:54 secure kernel:
drivers/media/video/usbvideo/quickcam_messenger.c: Logitech Quickcam
Messenger USB v0.01
Nov 5 13:35:54 secure kernel: videodev: "QCM USB Camera" has no release
callback. Please fix your driver for proper sysfs support, see
http://lwn.net/Articles/36850/
Nov 5 13:35:54 secure kernel: drivers/media/video/usbvideo/usbvideo.c:
QCM on /dev/video0: canvas=320x240 videosize=320x240
Nov 5 13:35:55 secure kernel: input: QCM button as /class/input/input1
Nov 5 13:35:55 secure kernel: usbcore: registered new interface driver QCM
Nov 5 13:35:55 secure kernel: swapped image found
Nov 5 13:35:55 secure kernel: Image loaded to NPE-B Func:0, Rel: 2:1,
Status: 82c00000
Nov 5 13:35:55 secure kernel: usbcore: registered new interface driver
snd-usb-audio

Nov 5 13:36:13 secure motion: [0] Processing thread 0 - config file
/etc/motion/motion.conf
Nov 5 13:36:13 secure motion: [1] Thread is from /etc/motion/motion.conf
Nov 5 13:36:13 secure motion: [1] Thread started
Nov 5 13:36:13 secure motion: [1] Failed with YUV420P, trying YUV422
palette: Invalid argument
Nov 5 13:36:13 secure motion: [1] Failed with YUV422, trying RGB24
palette: Invalid argument
Nov 5 13:37:07 secure motion: [1] Motion terminating
Nov 5 13:37:07 secure kernel: drivers/media/video/usbvideo/usbvideo.c:
Packet Statistics: Total=54784. Empty=0. Usage=100%%
Nov 5 13:37:07 secure kernel: drivers/media/video/usbvideo/usbvideo.c:
Transfer Statistics: Transferred=41MB Usage=78%%
Nov 5 13:37:41 secure motion: [0] Processing thread 0 - config file
/etc/motion/motion.conf
Nov 5 13:37:41 secure motion: [1] Thread is from /etc/motion/motion.conf
Nov 5 13:37:41 secure motion: [1] Thread started
Nov 5 13:37:41 secure motion: [1] Failed with YUV420P, trying YUV422
palette: Invalid argument
Nov 5 13:37:41 secure motion: [1] Failed with YUV422, trying RGB24
palette: Invalid argument
Nov 5 13:37:46 secure motion: [1] sync error in proc 2011: Interrupted
system call
Nov 5 13:37:46 secure motion: [1] Motion terminating
Nov 5 13:37:46 secure kernel: drivers/media/video/usbvideo/usbvideo.c:
Packet Statistics: Total=5024. Empty=0. Usage=100%%
Nov 5 13:37:46 secure kernel: drivers/media/video/usbvideo/usbvideo.c:
Transfer Statistics: Transferred=3763KB Usage=74%%
Nov 5 13:38:09 secure kernel: usb 2-1: USB disconnect, address 2
Nov 5 13:38:09 secure kernel: drivers/media/video/usbvideo/usbvideo.c:
USB camera disconnected.


Attachments:
test3.jpg (32.96 kB)

2007-11-12 10:40:25

by Mauro Carvalho Chehab

[permalink] [raw]
Subject: Re: Problems using quickcam_messenger on ARM (FYI)


Em Ter, 2007-11-06 às 18:25 +0100, Markus Hirschmann escreveu:
> Hello Kernel-Developer,
>
> Module quickcam_messenger seems to be broken (tried 2.6.18 and 2.6.22)
> on 2 different NSLU2 (ARM). Picture is attached. Same kernel and module
> can be used without any problems on x86 here. I don't have any ARM
> device beside the NSLU2, so I cannot check.
>
> The solution was to use Christian Magnusson's quickcam module.
> Everything worked without any problem. Webcam is:

Hmm... you're mentioning the quickcam module, but some of your logs are
related to usbvideo driver.

On a quick glance, I didn't find anything that could explain your
troubles. It seems to be related to a wrong order at the output format
(for example, the driver is sending RGB, instead of BGR).

It may also be an issue at the userspace application that is using the
wrong logic to deal with Big Endian.

--
Cheers,
Mauro

2007-11-13 19:43:42

by Thierry Merle

[permalink] [raw]
Subject: Re: Problems using quickcam_messenger on ARM (FYI)

Hi Mauro,
Mauro Carvalho Chehab a écrit :
> Em Ter, 2007-11-06 às 18:25 +0100, Markus Hirschmann escreveu:
>
>> Hello Kernel-Developer,
>>
>> Module quickcam_messenger seems to be broken (tried 2.6.18 and 2.6.22)
>> on 2 different NSLU2 (ARM). Picture is attached. Same kernel and module
>> can be used without any problems on x86 here. I don't have any ARM
>> device beside the NSLU2, so I cannot check.
>>
>> The solution was to use Christian Magnusson's quickcam module.
>> Everything worked without any problem. Webcam is:
>>
>
> Hmm... you're mentioning the quickcam module, but some of your logs are
> related to usbvideo driver.
>
> On a quick glance, I didn't find anything that could explain your
> troubles. It seems to be related to a wrong order at the output format
> (for example, the driver is sending RGB, instead of BGR).
>
> It may also be an issue at the userspace application that is using the
> wrong logic to deal with Big Endian.
>
>
The NSLU2 is based on a IXP420 processor that can change its endianess.
I suppose Markus has installed the debian-arm distribution on his NSLU2
so it is configured as little-endian.
Nevertheless, I took a look at the code of quickcam messenger that is in
usbvideo/
This macro: RGB24_PUTPIXEL puts in memory the following bytes:
*pf++ = (vb);
*pf++ = (vg);
*pf++ = (vr);
vb, vg, vr are blue, green, red values.
Since the driver is still v4l1 this can be normal(?)

Cheers,
Thierry

2007-11-13 21:36:21

by Markus Hirschmann

[permalink] [raw]
Subject: Re: Problems using quickcam_messenger on ARM (FYI)

Hi Thierry

Thierry Merle wrote:
> Hi Mauro,
> Mauro Carvalho Chehab a écrit :
>> Em Ter, 2007-11-06 às 18:25 +0100, Markus Hirschmann escreveu:
>>
>>> Hello Kernel-Developer,
>>>
>>> Module quickcam_messenger seems to be broken (tried 2.6.18 and 2.6.22)
>>> on 2 different NSLU2 (ARM). Picture is attached. Same kernel and module
>>> can be used without any problems on x86 here. I don't have any ARM
>>> device beside the NSLU2, so I cannot check.
>>>
>>> The solution was to use Christian Magnusson's quickcam module.
>>> Everything worked without any problem. Webcam is:
>>>
>> Hmm... you're mentioning the quickcam module, but some of your logs are
>> related to usbvideo driver.
>>
>> On a quick glance, I didn't find anything that could explain your
>> troubles. It seems to be related to a wrong order at the output format
>> (for example, the driver is sending RGB, instead of BGR).
>>
>> It may also be an issue at the userspace application that is using the
>> wrong logic to deal with Big Endian.
>>
>>
> The NSLU2 is based on a IXP420 processor that can change its endianess.
> I suppose Markus has installed the debian-arm distribution on his NSLU2
> so it is configured as little-endian.
> Nevertheless, I took a look at the code of quickcam messenger that is in
> usbvideo/
> This macro: RGB24_PUTPIXEL puts in memory the following bytes:
> *pf++ = (vb);
> *pf++ = (vg);
> *pf++ = (vr);
> vb, vg, vr are blue, green, red values.
> Since the driver is still v4l1 this can be normal(?)

Right, I forgot. Installed is the Debian ARM distribution. And I tried
serveral different applications (motion, vgrabbj).

Best regards

Markus