Ok its been a while my laptop has been out of service for the last
several weeks. Finally got it back up an running.

I've merged a the more recent changes from master into
prepare-for-kernel as well included two previous patches from Vasily
that never got committed to this branch.  This should fix the issue
with compiling with evdev support disabled that Corrado was having.
I've tested compiling this in tree both built in and as a module for
the latest git kernel and it seems to work fine for me.

Regarding support for SXGA. It still only support higher resolutions
in bayer mode since i have been unable to get it to deliver full
frames in any other format. This should be safe since the patch
currently dis allows setting any other format besides Bayer when using
SXGA resolutions. Also at the moment this is only supported for ov965x
sensors since that is what i use. but additional patches to enable
SXGA mode on other capable sensors should not be hard just need
someone who can test those and make sure they work.  I propose we get
the current version of this patch committed and later other patches
can add support for other sensors and possibly eventually other
formats besides Bayer;

For submitting the patch. Documentation/SubmittingPatches section 8
seems to say that for patches exceeding 40kB(ours is around 250kB) you
should instead of attaching the patch inline post a link to
it instead. I would also be inclined myself probably to add an entry
to the MAINTAINERS file as well. I is not necessary to direct patches
to this mailing list most of the webcams that have indivdual mainters
just use the linux-media list as far as i can tell.

I'm currently working on fixing up a patch against the linux kernel
that should add our driver into it.


On Wed, Jun 3, 2009 at 4:45 PM, Corrado Zoccolo <[email protected]> wrote:
> Hi guys,
> I'm compiling a custom kernel with microdia driver in-tree just now,
> and found that, if I disable the evdev support, I get the following
> errors:
>  CC [M]  drivers/media/video/microdia/sn9c20x-usb.o
> drivers/media/video/microdia/sn9c20x-usb.c: In function
> ‘input_thread’:
> drivers/media/video/microdia/sn9c20x-usb.c:821: error: implicit
> declaration of function ‘set_freezable’
> drivers/media/video/microdia/sn9c20x-usb.c:823: error: implicit
> declaration of function ‘kthread_should_stop’
> drivers/media/video/microdia/sn9c20x-usb.c:831: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_gpio’
> drivers/media/video/microdia/sn9c20x-usb.c:834: error: implicit
> declaration of function ‘input_report_key’
> drivers/media/video/microdia/sn9c20x-usb.c:834: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:835: error: ‘BTN_0’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:835: error: (Each
> undeclared identifier is reported only once
> drivers/media/video/microdia/sn9c20x-usb.c:835: error: for each
> function it appears in.)
> drivers/media/video/microdia/sn9c20x-usb.c:837: error: implicit
> declaration of function ‘input_sync’
> drivers/media/video/microdia/sn9c20x-usb.c:837: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:840: error: implicit
> declaration of function ‘wait_event_freezable_timeout’
> drivers/media/video/microdia/sn9c20x-usb.c: In function
> ‘sn9c20x_input_init’:
> drivers/media/video/microdia/sn9c20x-usb.c:852: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:852: error: implicit
> declaration of function ‘input_allocate_device’
> drivers/media/video/microdia/sn9c20x-usb.c:853: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:856: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:858: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:862: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:865: error: implicit
> declaration of function ‘usb_to_input_id’
> drivers/media/video/microdia/sn9c20x-usb.c:865: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:866: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:868: error: ‘EV_KEY’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:868: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:869: error: ‘BTN_0’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:869: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:870: error: ‘BTN_1’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:870: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:871: error: ‘BTN_2’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:871: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:872: error: ‘BTN_3’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:872: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:873: error: ‘BTN_4’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:873: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:874: error: ‘BTN_5’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:874: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:875: error: ‘BTN_6’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:875: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:876: error: ‘BTN_7’
> undeclared (first use in this function)
> drivers/media/video/microdia/sn9c20x-usb.c:876: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:878: error: implicit
> declaration of function ‘input_register_device’
> drivers/media/video/microdia/sn9c20x-usb.c:878: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:882: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_task’
> drivers/media/video/microdia/sn9c20x-usb.c:882: error: implicit
> declaration of function ‘kthread_run’
> drivers/media/video/microdia/sn9c20x-usb.c:885: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_task’
> drivers/media/video/microdia/sn9c20x-usb.c: In function
> ‘sn9c20x_input_cleanup’:
> drivers/media/video/microdia/sn9c20x-usb.c:893: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_task’
> drivers/media/video/microdia/sn9c20x-usb.c:894: error: implicit
> declaration of function ‘kthread_stop’
> drivers/media/video/microdia/sn9c20x-usb.c:894: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_task’
> drivers/media/video/microdia/sn9c20x-usb.c:896: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:897: error: implicit
> declaration of function ‘input_unregister_device’
> drivers/media/video/microdia/sn9c20x-usb.c:897: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:898: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:899: error: implicit
> declaration of function ‘input_free_device’
> drivers/media/video/microdia/sn9c20x-usb.c:899: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> drivers/media/video/microdia/sn9c20x-usb.c:900: error: ‘struct
> usb_sn9c20x’ has no member named ‘input_dev’
> make[4]: *** [drivers/media/video/microdia/sn9c20x-usb.o] Error 1
> make[3]: *** [drivers/media/video/microdia] Error 2
> make[2]: *** [drivers/media/video] Error 2
> make[1]: *** [drivers/media] Error 2
> make: *** [drivers] Error 2
>
> Enabling evdev support, the error disappears.
>
> BTW, to compile it in-tree, I did the following:
> * cloned the 2.6.30 rc8 linus tree, and copied my kernel config into it
> * cloned the prepare-for-kernel branch, and put it under drivers/media/video
> * applied the attached patch, to integrate the new driver with Kconfig
> and Makefiles
> * run make menuconfig, and enabled the driver, to be compiled as a module
> * built the kernel
>
> Corrado
>
> On Sat, May 30, 2009 at 4:34 AM, Daniel Ribeiro <[email protected]> wrote:
>>
>> Em Qui, 2009-05-28 às 10:31 -0700, GWater escreveu:
>>> 4. Also I don't wanna compile a whole kernel to see if it is working.
>>
>> You will need to if you want to submit it upstream.
>>
>> --
>> Daniel Ribeiro
>>
>>
>> >
>>
>
>
>
> --
> __________________________________________________________________________
>
> dott. Corrado Zoccolo                          mailto:[email protected]
> PhD - Department of Computer Science - University of Pisa, Italy
> --------------------------------------------------------------------------
> The self-confidence of a warrior is not the self-confidence of the average
> man. The average man seeks certainty in the eyes of the onlooker and calls
> that self-confidence. The warrior seeks impeccability in his own eyes and
> calls that humbleness.
>                               Tales of Power - C. Castaneda
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
Lets make microdia webcams plug'n play, (currently plug'n pray)
To post to this group, send email to [email protected]
Visit us online https://groups.google.com/group/microdia
-~----------~----~----~----~------~----~------~--~---

Reply via email to