OK, I do everything from the begin But I wasn't lucky :) -------------------------------------------------
[EMAIL PROTECTED] ~]$ rm -rf microdia/ [EMAIL PROTECTED] ~]$ git clone http://repo.or.cz/r/microdia.gitInitialized empty Git repository in /home/vinicio/microdia/.git/ Getting alternates list for http://repo.or.cz/r/microdia.git Getting pack list for http://repo.or.cz/r/microdia.git Getting index for pack cd343428e98ed39f9eb351986214dff40b7a6f59 Getting pack cd343428e98ed39f9eb351986214dff40b7a6f59 which contains 97e893a2f4e33aaf823f3b9d9c4a0a8dd589b69e ... walk 3e23a7742154ce45f339a3d8c4a1c0111b0200f3 walk 025d09e98b8ce68d3627c8cef8964c19996e514e [EMAIL PROTECTED] ~]$ cd microdia/ [EMAIL PROTECTED] microdia]$ git checkout --track -b development origin/development Branch development set up to track remote branch refs/remotes/origin/ development. Switched to a new branch "development #I have copied before the patch file [EMAIL PROTECTED] microdia]$ ls *patch 0001-Add-sensor-MT9V112-used-in-6270-devices.patch [EMAIL PROTECTED] microdia]$ make make -C /lib/modules/2.6.26.6-79.fc9.i686/build SUBDIRS=/home/vinicio/ microdia modules make[1]: Entering directory `/usr/src/kernels/2.6.26.6-79.fc9.i686' CC [M] /home/vinicio/microdia/microdia-usb.o CC [M] /home/vinicio/microdia/microdia-v4l.o CC [M] /home/vinicio/microdia/microdia-sysfs.o CC [M] /home/vinicio/microdia/microdia-dev.o CC [M] /home/vinicio/microdia/microdia-queue.o CC [M] /home/vinicio/microdia/sn9c20x.o CC [M] /home/vinicio/microdia/omnivision.o CC [M] /home/vinicio/microdia/micron.o CC [M] /home/vinicio/microdia/microdia-debugfs.o LD [M] /home/vinicio/microdia/microdia.o Building modules, stage 2. MODPOST 1 modules CC /home/vinicio/microdia/microdia.mod.o LD [M] /home/vinicio/microdia/microdia.ko make[1]: Leaving directory `/usr/src/kernels/2.6.26.6-79.fc9.i686' [EMAIL PROTECTED] microdia]# modprobe videodev [EMAIL PROTECTED] microdia]# modprobe compat-ioctl32 [EMAIL PROTECTED] microdia]# insmod microdia.ko [EMAIL PROTECTED] ~]$ mplayer tv:// -tv driver=v4l2:width=640:height=480:fps=25:device=/dev/video0 -vo x11 MPlayer dev-SVN-r27514-4.3.0 (C) 2000-2008 MPlayer Team CPU: Genuine Intel(R) CPU T1300 @ 1.66GHz (Family: 6, Model: 14, Stepping: 8) CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1 Compiled with runtime CPU detection. mplayer: could not connect to socket mplayer: No such file or directory Failed to open LIRC support. You will not be able to use your remote control. Playing tv://. TV file format detected. Selected driver: v4l2 name: Video 4 Linux 2 input author: Martin Olschewski <[EMAIL PROTECTED]> comment: first try, more to come ;-) v4l2: unable to open '/dev/video0': No such file or directory v4l2: ioctl set mute failed: Bad file descriptor v4l2: 0 frames successfully processed, 0 frames dropped. On Nov 14, 7:20 pm, GWater <[EMAIL PROTECTED]> wrote: > Here's your patch. > > Apply it with > $ git am <patchfile> > > Then rebuild and insmod the new module. Good luck. > > GWater > > Vinicio Nocciolini schrieb: > > > OK, I have done a log file on Windows > > Check if if right for you or I have done some mistakes > > > Vinicio > > >> That's great. > >> If I need more logs I will ask - until them I'll use the log someone > >> else posted some time ago. > > >> I'll tell you when we can start testing :) . > > >> GWater > > >> Vinicio Nocciolini schrieb: > >>> GWater wrote: > >>>> OK, > >>>> now here's my final diagnosis: > > >>>> You're webcam uses a micron MT9V112 sensor. We don't support these > >>>> sensors (yet!). Maybe I'll take a look at it this weekend - but if > >>>> there isn't a log from the windows driver yet I'll need some help > >>>> from you. > > >>>> Do you have a windows box with USb 2.0 where you can install the > >>>> webcam and record a log of the windows drivers actions? > > >>>> GWater > > >>> Hi again > >>> I have a laptop Compaq nx6310 with a dual boot: Windows XP and Fedora 9 > >>> In Windows my WebCam work properly > > >>> But I don't kow how can I capture in Windows log action of my webcam :( > >>> Maybe SniffUSB 1.8 can help me? > > >>> ------------------------------------------------------------------------ > > >>> ------------------------------------------------------------------------ > > >>> ------------------------------------------------------------------------ > > > > > > > [0001-Add-sensor-MT9V112-used-in-6270-devices.patch4K ]From > 4fdf333ff24c0744614182fc9834d6540caecc19 Mon Sep 17 00:00:00 2001 > From: GWater <[EMAIL PROTECTED]> > Date: Fri, 14 Nov 2008 19:14:27 +0100 > Subject: [PATCH] Add sensor MT9V112 used in 6270 devices > > This is just basic support - no colorspace switching > or other special stuff included. > > Signed-off-by: GWater <[EMAIL PROTECTED]> > --- > microdia-dev.c | 6 ++++ > microdia.h | 1 + > micron.c | 83 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > micron.h | 2 + > 4 files changed, 92 insertions(+), 0 deletions(-) > > diff --git a/microdia-dev.c b/microdia-dev.c > index f3cdf4d..a233ab9 100644 > --- a/microdia-dev.c > +++ b/microdia-dev.c > @@ -88,6 +88,12 @@ struct sensor_info sensors[] = { > .address = 0x5d, > .probe = mt9m001_probe > }, > + { > + .id = MT9V112_SENSOR, > + .name = "MT9V112", > + .address = 0x5d, > + .probe = mt9v112_probe > + }, > }; > > /** > diff --git a/microdia.h b/microdia.h > index b3ad414..bdf9610 100644 > --- a/microdia.h > +++ b/microdia.h > @@ -310,6 +310,7 @@ enum microdia_sensors { > MT9V111_SENSOR = 7, > MT9V011_SENSOR = 8, > MT9M001_SENSOR = 9, > + MT9V112_SENSOR = 10, > }; > > diff --git a/micron.c b/micron.c > index cc70fec..dd4c50b 100644 > --- a/micron.c > +++ b/micron.c > @@ -419,6 +419,89 @@ static __u8 mt9m001_init[][3] = { > {0x2e, 0x00, 0x24}, {0x07, 0x00, 0x02}, > }; > > +static __u8 mt9v112_init[][3] = { > + {0x0d, 0x00, 0x21}, {0x0d, 0x00, 0x20}, {0xf0, 0x00, 0x00}, > + {0x34, 0xc0, 0x19}, {0x0a, 0x00, 0x11}, {0x0b, 0x00, 0x0b}, > + {0x20, 0x07, 0x03}, {0x35, 0x20, 0x22}, {0xf0, 0x00, 0x01}, > + {0x05, 0x00, 0x00}, {0x06, 0x34, 0x0c}, {0x3b, 0x04, 0x2a}, > + {0x3c, 0x04, 0x00}, {0xf0, 0x00, 0x02}, {0x2e, 0x0c, 0x58}, > + {0x5b, 0x00, 0x01}, {0xc8, 0x9f, 0x0b}, {0xf0, 0x00, 0x01}, > + {0x9b, 0x53, 0x00}, {0xf0, 0x00, 0x00}, {0x2b, 0x00, 0x20}, > + {0x2c, 0x00, 0x2a}, {0x2d, 0x00, 0x32}, {0x2e, 0x00, 0x20}, > + {0x09, 0x01, 0xdc}, {0x01, 0x00, 0x0c}, {0x02, 0x00, 0x20}, > + {0x03, 0x01, 0xe0}, {0x04, 0x02, 0x80}, {0x06, 0x00, 0x0c}, > + {0x05, 0x00, 0x98}, {0x20, 0x07, 0x03}, {0x09, 0x01, 0xf2}, > + {0x2b, 0x00, 0xa0}, {0x2c, 0x00, 0xa0}, {0x2d, 0x00, 0xa0}, > + {0x2e, 0x00, 0xa0}, {0x01, 0x00, 0x0c}, {0x02, 0x00, 0x20}, > + {0x03, 0x01, 0xe0}, {0x04, 0x02, 0x80}, {0x06, 0x00, 0x0c}, > + {0x05, 0x00, 0x98}, {0x0d, 0x00, 0x21}, {0x0d, 0x00, 0x20}, > + {0xf0, 0x00, 0x00}, {0x34, 0xc0, 0x19}, {0x0a, 0x00, 0x11}, > + {0x0b, 0x00, 0x0b}, {0x20, 0x07, 0x03}, {0x35, 0x20, 0x22}, > + {0xf0, 0x00, 0x01}, {0x05, 0x00, 0x00}, {0x06, 0x34, 0x0c}, > + {0x3b, 0x04, 0x2a}, {0x3c, 0x04, 0x00}, {0xf0, 0x00, 0x02}, > + {0x2e, 0x0c, 0x58}, {0x5b, 0x00, 0x01}, {0xc8, 0x9f, 0x0b}, > + {0xf0, 0x00, 0x01}, {0x9b, 0x53, 0x00}, {0xf0, 0x00, 0x00}, > + {0x2b, 0x00, 0x20}, {0x2c, 0x00, 0x2a}, {0x2d, 0x00, 0x32}, > + {0x2e, 0x00, 0x20}, {0x09, 0x01, 0xdc}, {0x01, 0x00, 0x0c}, > + {0x02, 0x00, 0x20}, {0x03, 0x01, 0xe0}, {0x04, 0x02, 0x80}, > + {0x06, 0x00, 0x0c}, {0x05, 0x00, 0x98}, {0x20, 0x07, 0x03}, > + {0x09, 0x01, 0xf2}, {0x2b, 0x00, 0xa0}, {0x2c, 0x00, 0xa0}, > + {0x2d, 0x00, 0xa0}, {0x2e, 0x00, 0xa0}, {0x01, 0x00, 0x0c}, > + {0x02, 0x00, 0x20}, {0x03, 0x01, 0xe0}, {0x04, 0x02, 0x80}, > + {0x06, 0x00, 0x0c}, {0x05, 0x00, 0x98}, {0x09, 0x01, 0xc1}, > + {0x2b, 0x00, 0xae}, {0x2c, 0x00, 0xae}, {0x2d, 0x00, 0xae}, > + {0x2e, 0x00, 0xae}, > +}; > + > +/** > + * @brief Initialize mt9v112 sensors > + * > + * @param dev Pointer to device structure > + * > + * @return 0 or negative error code > + * > + */ > +int mt9v112_initialize(struct usb_microdia *dev) > +{ > + int i; > + int ret = 0; > + __u8 value[2], reg; > + for (i = 0; i < ARRAY_SIZE(mt9v112_init); i++) { > + reg = mt9v011_init[i][0]; > + value[0] = mt9v112_init[i][1]; > + value[1] = mt9v112_init[i][2]; > + ret = sn9c20x_write_i2c_data(dev, 2, reg, value); > + if (ret < 0) { > + UDIA_WARNING("Sensor Init Error (%d). " > + "line %d\n", ret, i); > + break; > + } > + } > + > + return ret; > +} > + > +int mt9v112_probe(struct usb_microdia *dev) > +{ > + int ret; > + __u8 buf[2]; > + ret = sn9c20x_read_i2c_data(dev, 2, 0x00, buf); > + if (ret == 0) { > + if (buf[0] != 0x12) > + return -EINVAL; > + if (buf[1] == 0x29) { > + mt9v112_initialize(dev); > + dev->camera.modes = micron_resolutions; > + dev->camera.nmodes = ARRAY_SIZE(micron_resolutions); > + dev->camera.fmts = mt9x0xx_fmts; > + dev->camera.nfmts = ARRAY_SIZE(mt9x0xx_fmts); > + return MT9M001_SENSOR; > + } > + } > + > + return -EINVAL; > +} > + > /** > * @brief Initialize mt9v011 sensors > * > diff --git a/micron.h b/micron.h > index 4e2ee99..1955e5e 100644 > --- a/micron.h > +++ b/micron.h > @@ -121,4 +121,6 @@ int mt9m111_set_yuv422(struct usb_microdia *dev); > > int mt9m001_probe(struct usb_microdia *dev); > > +int mt9v112_probe(struct usb_microdia *dev); > + > #endif > -- > 1.5.6.5 > > signature.asc > < 1KViewDownload --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
