Web lists-archives.com

[Spca50x-devs] [gspcav1-20071224] Merged and Proposed Patch for (tas5130ck/cs2102K ) (Eurocase/Kocom ) 0ac8:301b Z-Star Microelectronics Corp. ZC0301 WebCam




Hi again , i am kinda spamming  :)
 WebCam
This patch merge CS2102K? patch  of my kcm-90 webcam
http://sourceforge.net/mailarchive/forum.php?thread_name=d02f5c292854aaf32c44821d245649ea%40webmail.pixartargentina.com.ar&forum_name=spca50x-devs
and another initialization for the webcam that
Nazareno reported in the list:
http://sourceforge.net/mailarchive/forum.php?thread_name=28c213040712160336p762b3d88qfcf8067b2e9f6ad6%40mail.gmail.com&forum_name=spca50x-devs
and more threads about it.

 Model: eurocase bubble cam 810
 Sensor: TAS5130C reported by regmon.
 Chipset: z0301p?
 Vendor:
http://www.eurocase.com/version3/index.php?productos=si&nivel=3&id_rubro=10&id_subrubro=71&id_producto=371




This time, the initialization it more different that in the case of the
(cs2102k , look at the link). So again, to dont break anything, i created a
newer version TAS5130CK of the sensor sharing gamma, flicker, and the rest
of the things.
Chipset revision is 0x8400 , i also added a new structure ( a harmless one i
hope :x )

struct internal_sensor_id_by_chipset_revision
{
      unsigned int revision;
      unsigned char internal_sensor_id;
};
static const struct internal_sensor_id_by_chipset_revision
chipset_revision_sensor[] =
{
     {0xc001, 0x13} ,// MI0360.
     {0xe001, 0x13},
     {0x8001, 0x13},
     {0x8000, 0x14},// CS2102K
     {0x8400, 0x15},// TAS5130K
     {0x00,0x00},
};

So, i am selecting the "modified sensor" acording to chipset revision. It
seems that each of this chipset revision need some kind of extra
initialization. ( could this be the answer to this? ) Anyway, this should be
decided by  Michel Xhaard.
regards

Costantino Leandro
Pixart SRL

Pd: ty to nazareno for testing.
diff -Nru gspcav1-20071224/Vimicro/cs2102.h gspcav1-20071224-kokom/Vimicro/cs2102.h
--- gspcav1-20071224/Vimicro/cs2102.h	2006-09-14 09:39:38.000000000 -0300
+++ gspcav1-20071224-kokom/Vimicro/cs2102.h	2008-02-23 16:53:05.000000000 -0300
@@ -805,4 +805,843 @@
 /*******************/
 {0, 0, 0}
 };
+//CS2102_KOCOM
+static __u16 cs2102K_start_data[][3] =
+{
+     { 0xa0 , 0x11, 0x0002},
+     { 0xa0 , 0x03, 0x0008},
+     { 0xa0 , 0x08, 0x0010},
+     { 0xa0 , 0x02, 0x0003},
+     { 0xa0 , 0x80, 0x0004},
+     { 0xa0 , 0x01, 0x0005},
+     { 0xa0 , 0xe0, 0x0006},
+     { 0xa0 , 0x01, 0x0001},
+     { 0xa0 , 0x03, 0x0012},
+     { 0xa0 , 0x01, 0x0012},
+     { 0xa0 , 0x00, 0x0098},
+     { 0xa0 , 0x00, 0x009a},
+     { 0xa0 , 0x00, 0x011a},
+     { 0xa0 , 0x00, 0x011c},
+     { 0xa0 , 0xe8, 0x009c},
+     { 0xa0 , 0x88, 0x009e},
+     { 0xa0 , 0x55, 0x008b},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x00, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x0a, 0x0092},
+     { 0xa0 , 0x02, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x0b, 0x0092},
+     { 0xa0 , 0x02, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x0c, 0x0092},
+     { 0xa0 , 0x7c, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x0d, 0x0092},
+     { 0xa0 , 0xa3, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x03, 0x0092},
+     { 0xa0 , 0xfb, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x05, 0x0092},
+     { 0xa0 , 0x00, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x06, 0x0092},
+     { 0xa0 , 0x03, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x09, 0x0092},
+     { 0xa0 , 0x08, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x0e, 0x0092},
+     { 0xa0 , 0x04, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x0f, 0x0092},
+     { 0xa0 , 0x18, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x10, 0x0092},
+     { 0xa0 , 0x18, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x11, 0x0092},
+     { 0xa0 , 0x18, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x12, 0x0092},
+     { 0xa0 , 0x18, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x15, 0x0092},
+     { 0xa0 , 0x00, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x16, 0x0092},
+     { 0xa0 , 0x0c, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x17, 0x0092},
+     { 0xa0 , 0x0c, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x04, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0xb7, 0x0101},
+     { 0xa0 , 0x05, 0x0012},
+     { 0xa0 , 0x78, 0x018d},
+     { 0xa0 , 0x0d, 0x0100},
+     { 0xa0 , 0x06, 0x0189},
+     { 0xa0 , 0x03, 0x01c5},
+     { 0xa0 , 0x13, 0x01cb},
+     { 0xa0 , 0x20, 0x0087},
+     { 0xa0 , 0x21, 0x0088},
+     { 0xa0 , 0x08, 0x0250},
+     { 0xa0 , 0x08, 0x0301},
+     { 0xa0 , 0x00, 0x01ad},
+     { 0xa0 , 0x01, 0x01b1},
+     { 0xa0 , 0x02, 0x0180},
+     { 0xa0 , 0x60, 0x0116},
+     { 0xa0 , 0x40, 0x0117},
+     { 0xa0 , 0x4c, 0x0118},
+     { 0xa0 , 0x03, 0x0008},
+     { 0xa0 , 0x08, 0x01c6},
+     { 0xa0 , 0x0f, 0x01cb},
+     { 0xa0 , 0x13, 0x0120},
+     { 0xa0 , 0x38, 0x0121},
+     { 0xa0 , 0x59, 0x0122},
+     { 0xa0 , 0x79, 0x0123},
+     { 0xa0 , 0x92, 0x0124},
+     { 0xa0 , 0xa7, 0x0125},
+     { 0xa0 , 0xb9, 0x0126},
+     { 0xa0 , 0xc8, 0x0127},
+     { 0xa0 , 0xd4, 0x0128},
+     { 0xa0 , 0xdf, 0x0129},
+     { 0xa0 , 0xe7, 0x012a},
+     { 0xa0 , 0xee, 0x012b},
+     { 0xa0 , 0xf4, 0x012c},
+     { 0xa0 , 0xf9, 0x012d},
+     { 0xa0 , 0xfc, 0x012e},
+     { 0xa0 , 0xff, 0x012f},
+     { 0xa0 , 0x26, 0x0130},
+     { 0xa0 , 0x22, 0x0131},
+     { 0xa0 , 0x20, 0x0132},
+     { 0xa0 , 0x1c, 0x0133},
+     { 0xa0 , 0x16, 0x0134},
+     { 0xa0 , 0x13, 0x0135},
+     { 0xa0 , 0x10, 0x0136},
+     { 0xa0 , 0x0d, 0x0137},
+     { 0xa0 , 0x0b, 0x0138},
+     { 0xa0 , 0x09, 0x0139},
+     { 0xa0 , 0x07, 0x013a},
+     { 0xa0 , 0x06, 0x013b},
+     { 0xa0 , 0x05, 0x013c},
+     { 0xa0 , 0x04, 0x013d},
+     { 0xa0 , 0x03, 0x013e},
+     { 0xa0 , 0x02, 0x013f},
+     { 0xa0 , 0x58, 0x010a},
+     { 0xa0 , 0xf4, 0x010b},
+     { 0xa0 , 0xf4, 0x010c},
+     { 0xa0 , 0xf4, 0x010d},
+     { 0xa0 , 0x58, 0x010e},
+     { 0xa0 , 0xf4, 0x010f},
+     { 0xa0 , 0xf4, 0x0110},
+     { 0xa0 , 0xf4, 0x0111},
+     { 0xa0 , 0x58, 0x0112},
+     { 0xa0 , 0x00, 0x0180},
+     { 0xa0 , 0x00, 0x0019},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x00, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x13, 0x0092},
+     { 0xa0 , 0x22, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x14, 0x0092},
+     { 0xa0 , 0x01, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x20, 0x0092},
+     { 0xa0 , 0x01, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x21, 0x0092},
+     { 0xa0 , 0x22, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x04, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x01, 0x00a3},
+     { 0xa0 , 0x22, 0x00a4},
+     { 0xa0 , 0x00, 0x0190},
+     { 0xa0 , 0x07, 0x0191},
+     { 0xa0 , 0xee, 0x0192},
+     { 0xa0 , 0x00, 0x0195},
+     { 0xa0 , 0x00, 0x0196},
+     { 0xa0 , 0x3a, 0x0197},
+     { 0xa0 , 0x10, 0x018c},
+     { 0xa0 , 0x20, 0x018f},
+     { 0xa0 , 0x0c, 0x01a9},
+     { 0xa0 , 0x28, 0x01aa},
+     { 0xa0 , 0x04, 0x001d},
+     { 0xa0 , 0x0f, 0x001e},
+     { 0xa0 , 0x19, 0x001f},
+     { 0xa0 , 0x1f, 0x0020},
+     { 0xa0 , 0x60, 0x011d},
+     { 0xa0 , 0x60, 0x011d},
+     { 0xa0 , 0x42, 0x0180},
+     { 0xa0 , 0x42, 0x0180},
+     { 0xa0 , 0x60, 0x0116},
+     { 0xa0 , 0x40, 0x0117},
+     { 0xa0 , 0x4c, 0x0118},
+     { 0xa0 , 0x04, 0x01a7},
+     { 0xa0 , 0x20, 0x0092},
+     { 0xa0 , 0x01, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x21, 0x0092},
+     { 0xa0 , 0x5c, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x00, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x13, 0x0092},
+     { 0xa0 , 0x5c, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x14, 0x0092},
+     { 0xa0 , 0x01, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x04, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x00, 0x01a7},
+     { 0xa0 , 0x04, 0x01a7},
+     { 0xa0 , 0x00, 0x01a7},
+     { 0xa0 , 0x04, 0x01a7},
+     { 0xa0 , 0x20, 0x0092},
+     { 0xa0 , 0x01, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x21, 0x0092},
+     { 0xa0 , 0x96, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x00, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x13, 0x0092},
+     { 0xa0 , 0x96, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x14, 0x0092},
+     { 0xa0 , 0x01, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x18, 0x0092},
+     { 0xa0 , 0x04, 0x0093},
+     { 0xa0 , 0x00, 0x0094},
+     { 0xa0 , 0x01, 0x0090},
+     { 0xa0 , 0x00, 0x01a7},
+     { 0xa0 , 0x04, 0x01a7},
+     { 0xa0 , 0x00, 0x01a7},
+     { 0x00,  0x00,  0x00},
+};
+
+static __u16 cs2102K_scale_data[][3] =
+{
+     {0xa0 ,0x11, 0x2},
+     {0xa0,0x00,0x0002 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x08,0x0010 },
+     {0xa0,0x02,0x0003 },
+     {0xa0,0x80,0x0004 },
+     {0xa0,0x01,0x0005 },
+     {0xa0,0xE0,0x0006 },
+     {0xa0,0x01,0x0001 },
+     {0xa0,0x03,0x0012 },
+     {0xa0,0x01,0x0012 },
+     {0xa0,0x00,0x0098 },
+     {0xa0,0x00,0x009A },
+     {0xa0,0x00,0x011A },
+     {0xa0,0x00,0x011C },
+     {0xa0,0xE8,0x009C },
+     {0xa0,0x88,0x009E },
+     {0xa0,0x55,0x008B },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0A,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0B,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0C,0x0092 },
+     {0xa0,0x7B,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0D,0x0092 },
+     {0xa0,0xA3,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x03,0x0092 },
+     {0xa0,0xFB,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x05,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x06,0x0092 },
+     {0xa0,0x03,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x09,0x0092 },
+     {0xa0,0x08,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0E,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0F,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x10,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x11,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x12,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x15,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x16,0x0092 },
+     {0xa0,0x0C,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x17,0x0092 },
+     {0xa0,0x0C,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0xF7,0x0101 },
+     {0xa0,0x05,0x0012 },
+     {0xa0,0x78,0x018D },
+     {0xa0,0x0D,0x0100 },
+     {0xa0,0x06,0x0189 },
+     {0xa0,0x03,0x01C5 },
+     {0xa0,0x13,0x01CB },
+     {0xa0,0x20,0x0087 },
+     {0xa0,0x21,0x0088 },
+     {0xa0,0x08,0x0250 },
+     {0xa0,0x08,0x0301 },
+     {0xa0,0x00,0x01AD },
+     {0xa0,0x01,0x01B1 },
+     {0xa0,0x02,0x0180 },
+     {0xa0,0x60,0x0116 },
+     {0xa0,0x40,0x0117 },
+     {0xa0,0x4C,0x0118 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x08,0x01C6 },
+     {0xa0,0x0F,0x01CB },
+     {0xa0,0x13,0x0120 },
+     {0xa0,0x38,0x0121 },
+     {0xa0,0x59,0x0122 },
+     {0xa0,0x79,0x0123 },
+     {0xa0,0x92,0x0124 },
+     {0xa0,0xA7,0x0125 },
+     {0xa0,0xB9,0x0126 },
+     {0xa0,0xC8,0x0127 },
+     {0xa0,0xD4,0x0128 },
+     {0xa0,0xDF,0x0129 },
+     {0xa0,0xE7,0x012A },
+     {0xa0,0xEE,0x012B },
+     {0xa0,0xF4,0x012C },
+     {0xa0,0xF9,0x012D },
+     {0xa0,0xFC,0x012E },
+     {0xa0,0xFF,0x012F },
+     {0xa0,0x26,0x0130 },
+     {0xa0,0x22,0x0131 },
+     {0xa0,0x20,0x0132 },
+     {0xa0,0x1C,0x0133 },
+     {0xa0,0x16,0x0134 },
+     {0xa0,0x13,0x0135 },
+     {0xa0,0x10,0x0136 },
+     {0xa0,0x0D,0x0137 },
+     {0xa0,0x0B,0x0138 },
+     {0xa0,0x09,0x0139 },
+     {0xa0,0x07,0x013A },
+     {0xa0,0x06,0x013B },
+     {0xa0,0x05,0x013C },
+     {0xa0,0x04,0x013D },
+     {0xa0,0x03,0x013E },
+     {0xa0,0x02,0x013F },
+     {0xa0,0x58,0x010A },
+     {0xa0,0xF4,0x010B },
+     {0xa0,0xF4,0x010C },
+     {0xa0,0xF4,0x010D },
+     {0xa0,0x58,0x010E },
+     {0xa0,0xF4,0x010F },
+     {0xa0,0xF4,0x0110 },
+     {0xa0,0xF4,0x0111 },
+     {0xa0,0x58,0x0112 },
+     {0xa0,0x00,0x0180 },
+     {0xa0,0x00,0x0019 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0x22,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0x22,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x01,0x00A3 },
+     {0xa0,0x22,0x00A4 },
+     {0xa0,0x00,0x0190 },
+     {0xa0,0x07,0x0191 },
+     {0xa0,0xEE,0x0192 },
+     {0xa0,0x00,0x0195 },
+     {0xa0,0x00,0x0196 },
+     {0xa0,0x3A,0x0197 },
+     {0xa0,0x10,0x018C },
+     {0xa0,0x20,0x018F },
+     {0xa0,0x0C,0x01A9 },
+     {0xa0,0x28,0x01AA },
+     {0xa0,0x04,0x001D },
+     {0xa0,0x0F,0x001E },
+     {0xa0,0x19,0x001F },
+     {0xa0,0x1F,0x0020 },
+     {0xa0,0x60,0x011D },
+     {0xa0,0x60,0x011D },
+     {0xa0,0x42,0x0180 },
+     {0xa0,0x42,0x0180 },
+     {0xa0,0x60,0x0116 },
+     {0xa0,0x40,0x0117 },
+     {0xa0,0x4C,0x0118 },
+     {0xa0,0x01,0x0000 },
+     {0xa0,0x01,0x0000 },
+     {0xa0,0x00,0x0002 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x08,0x0010 },
+     {0xa0,0x02,0x0003 },
+     {0xa0,0x80,0x0004 },
+     {0xa0,0x01,0x0005 },
+     {0xa0,0xE0,0x0006 },
+     {0xa0,0x01,0x0001 },
+     {0xa0,0x03,0x0012 },
+     {0xa0,0x01,0x0012 },
+     {0xa0,0x00,0x0098 },
+     {0xa0,0x00,0x009A },
+     {0xa0,0x00,0x011A },
+     {0xa0,0x00,0x011C },
+     {0xa0,0xE8,0x009C },
+     {0xa0,0x88,0x009E },
+     {0xa0,0x55,0x008B },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0A,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0B,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0C,0x0092 },
+     {0xa0,0x7B,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0D,0x0092 },
+     {0xa0,0xA3,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x03,0x0092 },
+     {0xa0,0xFB,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x05,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x06,0x0092 },
+     {0xa0,0x03,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x09,0x0092 },
+     {0xa0,0x08,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0E,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x0F,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x10,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x11,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x12,0x0092 },
+     {0xa0,0x18,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x15,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x16,0x0092 },
+     {0xa0,0x0C,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x17,0x0092 },
+     {0xa0,0x0C,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0xF7,0x0101 },
+     {0xa0,0x05,0x0012 },
+     {0xa0,0x78,0x018D },
+     {0xa0,0x0D,0x0100 },
+     {0xa0,0x06,0x0189 },
+     {0xa0,0x03,0x01C5 },
+     {0xa0,0x13,0x01CB },
+     {0xa0,0x20,0x0087 },
+     {0xa0,0x21,0x0088 },
+     {0xa0,0x08,0x0250 },
+     {0xa0,0x08,0x0301 },
+     {0xa0,0x00,0x01AD },
+     {0xa0,0x01,0x01B1 },
+     {0xa0,0x02,0x0180 },
+     {0xa0,0x60,0x0116 },
+     {0xa0,0x40,0x0117 },
+     {0xa0,0x4C,0x0118 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x08,0x01C6 },
+     {0xa0,0x0F,0x01CB },
+     {0xa0,0x13,0x0120 },
+     {0xa0,0x38,0x0121 },
+     {0xa0,0x59,0x0122 },
+     {0xa0,0x79,0x0123 },
+     {0xa0,0x92,0x0124 },
+     {0xa0,0xA7,0x0125 },
+     {0xa0,0xB9,0x0126 },
+     {0xa0,0xC8,0x0127 },
+     {0xa0,0xD4,0x0128 },
+     {0xa0,0xDF,0x0129 },
+     {0xa0,0xE7,0x012A },
+     {0xa0,0xEE,0x012B },
+     {0xa0,0xF4,0x012C },
+     {0xa0,0xF9,0x012D },
+     {0xa0,0xFC,0x012E },
+     {0xa0,0xFF,0x012F },
+     {0xa0,0x26,0x0130 },
+     {0xa0,0x22,0x0131 },
+     {0xa0,0x20,0x0132 },
+     {0xa0,0x1C,0x0133 },
+     {0xa0,0x16,0x0134 },
+     {0xa0,0x13,0x0135 },
+     {0xa0,0x10,0x0136 },
+     {0xa0,0x0D,0x0137 },
+     {0xa0,0x0B,0x0138 },
+     {0xa0,0x09,0x0139 },
+     {0xa0,0x07,0x013A },
+     {0xa0,0x06,0x013B },
+     {0xa0,0x05,0x013C },
+     {0xa0,0x04,0x013D },
+     {0xa0,0x03,0x013E },
+     {0xa0,0x02,0x013F },
+     {0xa0,0x58,0x010A },
+     {0xa0,0xF4,0x010B },
+     {0xa0,0xF4,0x010C },
+     {0xa0,0xF4,0x010D },
+     {0xa0,0x58,0x010E },
+     {0xa0,0xF4,0x010F },
+     {0xa0,0xF4,0x0110 },
+     {0xa0,0xF4,0x0111 },
+     {0xa0,0x58,0x0112 },
+     {0xa0,0x00,0x0180 },
+     {0xa0,0x00,0x0019 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0x22,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0x22,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x01,0x00A3 },
+     {0xa0,0x22,0x00A4 },
+     {0xa0,0x00,0x0190 },
+     {0xa0,0x07,0x0191 },
+     {0xa0,0xEE,0x0192 },
+     {0xa0,0x00,0x0195 },
+     {0xa0,0x00,0x0196 },
+     {0xa0,0x3A,0x0197 },
+     {0xa0,0x10,0x018C },
+     {0xa0,0x20,0x018F },
+     {0xa0,0x0C,0x01A9 },
+     {0xa0,0x28,0x01AA },
+     {0xa0,0x04,0x001D },
+     {0xa0,0x0F,0x001E },
+     {0xa0,0x19,0x001F },
+     {0xa0,0x1F,0x0020 },
+     {0xa0,0x60,0x011D },
+     {0xa0,0x60,0x011D },
+     {0xa0,0x42,0x0180 },
+     {0xa0,0x42,0x0180 },
+     {0xa0,0x60,0x0116 },
+     {0xa0,0x40,0x0117 },
+     {0xa0,0x4C,0x0118 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0x5C,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0x5C,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0x96,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0x96,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0xD0,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0xD0,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x02,0x0008 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0x0A,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0x0A,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0x44,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0x44,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x21,0x0092 },
+     {0xa0,0x7E,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x13,0x0092 },
+     {0xa0,0x7E,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x14,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x18,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0xa0,0x00,0x01A7 },
+     {0xa0,0x04,0x01A7 },
+     {0, 0, 0}
+};
+
 #endif				//CS2102USB_H
diff -Nru gspcav1-20071224/Vimicro/tas5130c.h gspcav1-20071224-kokom/Vimicro/tas5130c.h
--- gspcav1-20071224/Vimicro/tas5130c.h	2006-09-14 09:39:38.000000000 -0300
+++ gspcav1-20071224-kokom/Vimicro/tas5130c.h	2008-02-23 17:49:21.000000000 -0300
@@ -419,3 +419,417 @@
 /*******************/
 {0, 0, 0}
 };
+//TEST 
+static __u16 tas5130CK_start_data[][3]=
+{
+     {0xa0,0x01,0x0000 },
+     {0xa0,0x01,0x003B },
+     {0xa0,0x0E,0x003A },
+     {0xa0,0x01,0x0038 },
+     {0xa0,0x0B,0x0039 },
+     {0xa0,0x00,0x0038 },
+     {0xa0,0x0B,0x0039 },
+     {0xa0,0x01,0x0000 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x0A,0x0010 },
+     {0xa0,0x10,0x0002 },
+     {0xa0,0x02,0x0003 },
+     {0xa0,0x80,0x0004 },
+     {0xa0,0x01,0x0005 },
+     {0xa0,0xE0,0x0006 },
+     {0xa0,0xDC,0x008B },
+     {0xa0,0x01,0x0001 },
+     {0xa0,0x07,0x0012 },
+     {0xa0,0x00,0x0098 },
+     {0xa0,0x00,0x009A },
+     {0xa0,0x00,0x011A },
+     {0xa0,0x00,0x011C },
+     {0xa0,0xDC,0x008B },
+     {0xa0,0x05,0x0012 },
+     {0xa0,0x01,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x06,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x08,0x0092 },
+     {0xa0,0x83,0x0093 },
+     {0xa0,0x04,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x01,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x08,0x0092 },
+     {0xa0,0x06,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x02,0x0092 },
+     {0xa0,0x11,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x03,0x0092 },
+     {0xa0,0xE7,0x0093 },
+     {0xa0,0x01,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x04,0x0092 },
+     {0xa0,0x87,0x0093 },
+     {0xa0,0x02,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x07,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x30,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x51,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x35,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x30,0x0092 },
+     {0xa0,0x05,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x31,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x58,0x0092 },
+     {0xa0,0x78,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x62,0x0092 },
+     {0xa0,0x11,0x0093 },
+     {0xa0,0x04,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2B,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2C,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2D,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2E,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x10,0x0087 },
+     {0xa0,0xB7,0x0101 },
+     {0xa0,0x05,0x0012 },
+     {0xa0,0x0D,0x0100 },
+     {0xa0,0x06,0x0189 },
+     {0xa0,0x09,0x01AD },
+     {0xa0,0x03,0x01C5 },
+     {0xa0,0x13,0x01CB },
+     {0xa0,0x08,0x0250 },
+     {0xa0,0x08,0x0301 },
+     {0xa0,0x60,0x01A8 },
+     {0xa0,0x6C,0x018D },
+     {0xa0,0x61,0x0116 },
+     {0xa0,0x65,0x0118 },
+     {0xa0,0x09,0x01AD },
+     {0xa0,0x15,0x01AE },
+     {0xa0,0x4C,0x010A },
+     {0xa0,0xF1,0x010B },
+     {0xa0,0x03,0x010C },
+     {0xa0,0xFE,0x010D },
+     {0xa0,0x51,0x010E },
+     {0xa0,0xF1,0x010F },
+     {0xa0,0xEC,0x0110 },
+     {0xa0,0x03,0x0111 },
+     {0xa0,0x51,0x0112 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x08,0x01C6 },
+     {0xa0,0x0F,0x01CB },
+     {0xa0,0x38,0x0120 },
+     {0xa0,0x51,0x0121 },
+     {0xa0,0x6E,0x0122 },
+     {0xa0,0x8C,0x0123 },
+     {0xa0,0xA2,0x0124 },
+     {0xa0,0xB6,0x0125 },
+     {0xa0,0xC8,0x0126 },
+     {0xa0,0xD6,0x0127 },
+     {0xa0,0xE2,0x0128 },
+     {0xa0,0xED,0x0129 },
+     {0xa0,0xF5,0x012A },
+     {0xa0,0xFC,0x012B },
+     {0xa0,0xFF,0x012C },
+     {0xa0,0xFF,0x012D },
+     {0xa0,0xFF,0x012E },
+     {0xa0,0xFF,0x012F },
+     {0xa0,0x12,0x0130 },
+     {0xa0,0x1B,0x0131 },
+     {0xa0,0x1D,0x0132 },
+     {0xa0,0x1A,0x0133 },
+     {0xa0,0x15,0x0134 },
+     {0xa0,0x12,0x0135 },
+     {0xa0,0x0F,0x0136 },
+     {0xa0,0x0D,0x0137 },
+     {0xa0,0x0B,0x0138 },
+     {0xa0,0x09,0x0139 },
+     {0xa0,0x07,0x013A },
+     {0xa0,0x05,0x013B },
+     {0xa0,0x00,0x013C },
+     {0xa0,0x00,0x013D },
+     {0xa0,0x00,0x013E },
+     {0xa0,0x01,0x013F },
+     {0xa0,0x4C,0x010A },
+     {0xa0,0xF1,0x010B },
+     {0xa0,0x03,0x010C },
+     {0xa0,0xFE,0x010D },
+     {0xa0,0x51,0x010E },
+     {0xa0,0xF1,0x010F },
+     {0xa0,0xEC,0x0110 },
+     {0xa0,0x03,0x0111 },
+     {0xa0,0x51,0x0112 },
+     {0xa0,0x10,0x0180 },
+     {0xa0,0x00,0x0180 },
+     {0xa0,0x00,0x0019 },
+     {0xa0,0x05,0x0092 },
+     {0xa0,0x09,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x09,0x0092 },
+     {0xa0,0x34,0x0093 },
+     {0xa0,0x01,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x0190 },
+     {0xa0,0x07,0x0191 },
+     {0xa0,0xD2,0x0192 },
+     {0xa0,0x00,0x0195 },
+     {0xa0,0x00,0x0196 },
+     {0xa0,0x9A,0x0197 },
+     {0xa0,0x0E,0x018C },
+     {0xa0,0x1C,0x018F },
+     {0xa0,0x14,0x01A9 },
+     {0xa0,0x66,0x01AA },
+     {0xa0,0xD7,0x001D },
+     {0xa0,0xF4,0x001E },
+     {0xa0,0xF9,0x001F },
+     {0xa0,0xFF,0x0020 },
+     {0xa0,0x42,0x0180 },
+     {0xa0,0x09,0x01AD },
+     {0xa0,0x15,0x01AE },
+     {0xa0,0x40,0x0180 },
+     {0xa0,0x42,0x0180 },
+     {0x00,0x00,0x00},
+};
+static __u16 tas5130CK_scale_data[][3]=
+{
+
+     {0xa0,0x01,0x0000 },
+     {0xa0,0x01,0x003B },
+     {0xa0,0x0E,0x003A },
+     {0xa0,0x01,0x0038 },
+     {0xa0,0x0B,0x0039 },
+     {0xa0,0x00,0x0038 },
+     {0xa0,0x0B,0x0039 },
+     {0xa0,0x01,0x0000 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x0A,0x0010 },
+     {0xa0,0x00,0x0002 },
+     {0xa0,0x02,0x0003 },
+     {0xa0,0x80,0x0004 },
+     {0xa0,0x01,0x0005 },
+     {0xa0,0xE0,0x0006 },
+     {0xa0,0xDC,0x008B },
+     {0xa0,0x01,0x0001 },
+     {0xa0,0x07,0x0012 },
+     {0xa0,0x00,0x0098 },
+     {0xa0,0x00,0x009A },
+     {0xa0,0x00,0x011A },
+     {0xa0,0x00,0x011C },
+     {0xa0,0xDC,0x008B },
+     {0xa0,0x05,0x0012 },
+     {0xa0,0x01,0x0092 },
+     {0xa0,0x01,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x06,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x08,0x0092 },
+     {0xa0,0x83,0x0093 },
+     {0xa0,0x04,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x01,0x0092 },
+     {0xa0,0x04,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x08,0x0092 },
+     {0xa0,0x06,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x02,0x0092 },
+     {0xa0,0x11,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x03,0x0092 },
+     {0xa0,0xE5,0x0093 },
+     {0xa0,0x01,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x04,0x0092 },
+     {0xa0,0x85,0x0093 },
+     {0xa0,0x02,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x07,0x0092 },
+     {0xa0,0x02,0x0093 },
+     {0xa0,0x30,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x20,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x51,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x35,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x50,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x30,0x0092 },
+     {0xa0,0x05,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x31,0x0092 },
+     {0xa0,0x00,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x58,0x0092 },
+     {0xa0,0x78,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x62,0x0092 },
+     {0xa0,0x11,0x0093 },
+     {0xa0,0x04,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2B,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2C,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2D,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x2E,0x0092 },
+     {0xa0,0x7F,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x10,0x0087 },
+     {0xa0,0xB7,0x0101 },
+     {0xa0,0x05,0x0012 },
+     {0xa0,0x0D,0x0100 },
+     {0xa0,0x06,0x0189 },
+     {0xa0,0x09,0x01AD },
+     {0xa0,0x03,0x01C5 },
+     {0xa0,0x13,0x01CB },
+     {0xa0,0x08,0x0250 },
+     {0xa0,0x08,0x0301 },
+     {0xa0,0x60,0x01A8 },
+     {0xa0,0x6C,0x018D },
+     {0xa0,0x61,0x0116 },
+     {0xa0,0x65,0x0118 },
+     {0xa0,0x09,0x01AD },
+     {0xa0,0x15,0x01AE },
+     {0xa0,0x4C,0x010A },
+     {0xa0,0xF1,0x010B },
+     {0xa0,0x03,0x010C },
+     {0xa0,0xFE,0x010D },
+     {0xa0,0x51,0x010E },
+     {0xa0,0xF1,0x010F },
+     {0xa0,0xEC,0x0110 },
+     {0xa0,0x03,0x0111 },
+     {0xa0,0x51,0x0112 },
+     {0xa0,0x03,0x0008 },
+     {0xa0,0x08,0x01C6 },
+     {0xa0,0x0F,0x01CB },
+     {0xa0,0x38,0x0120 },
+     {0xa0,0x51,0x0121 },
+     {0xa0,0x6E,0x0122 },
+     {0xa0,0x8C,0x0123 },
+     {0xa0,0xA2,0x0124 },
+     {0xa0,0xB6,0x0125 },
+     {0xa0,0xC8,0x0126 },
+     {0xa0,0xD6,0x0127 },
+     {0xa0,0xE2,0x0128 },
+     {0xa0,0xED,0x0129 },
+     {0xa0,0xF5,0x012A },
+     {0xa0,0xFC,0x012B },
+     {0xa0,0xFF,0x012C },
+     {0xa0,0xFF,0x012D },
+     {0xa0,0xFF,0x012E },
+     {0xa0,0xFF,0x012F },
+     {0xa0,0x12,0x0130 },
+     {0xa0,0x1B,0x0131 },
+     {0xa0,0x1D,0x0132 },
+     {0xa0,0x1A,0x0133 },
+     {0xa0,0x15,0x0134 },
+     {0xa0,0x12,0x0135 },
+     {0xa0,0x0F,0x0136 },
+     {0xa0,0x0D,0x0137 },
+     {0xa0,0x0B,0x0138 },
+     {0xa0,0x09,0x0139 },
+     {0xa0,0x07,0x013A },
+     {0xa0,0x05,0x013B },
+     {0xa0,0x00,0x013C },
+     {0xa0,0x00,0x013D },
+     {0xa0,0x00,0x013E },
+     {0xa0,0x01,0x013F },
+     {0xa0,0x4C,0x010A },
+     {0xa0,0xF1,0x010B },
+     {0xa0,0x03,0x010C },
+     {0xa0,0xFE,0x010D },
+     {0xa0,0x51,0x010E },
+     {0xa0,0xF1,0x010F },
+     {0xa0,0xEC,0x0110 },
+     {0xa0,0x03,0x0111 },
+     {0xa0,0x51,0x0112 },
+     {0xa0,0x10,0x0180 },
+     {0xa0,0x00,0x0180 },
+     {0xa0,0x00,0x0019 },
+     {0xa0,0x05,0x0092 },
+     {0xa0,0x62,0x0093 },
+     {0xa0,0x00,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x09,0x0092 },
+     {0xa0,0xAA,0x0093 },
+     {0xa0,0x01,0x0094 },
+     {0xa0,0x01,0x0090 },
+     {0xa0,0x00,0x0190 },
+     {0xa0,0x03,0x0191 },
+     {0xa0,0x9B,0x0192 },
+     {0xa0,0x00,0x0195 },
+     {0xa0,0x00,0x0196 },
+     {0xa0,0x47,0x0197 },
+     {0xa0,0x0E,0x018C },
+     {0xa0,0x1C,0x018F },
+     {0xa0,0x14,0x01A9 },
+     {0xa0,0x66,0x01AA },
+     {0xa0,0x62,0x001D },
+     {0xa0,0x90,0x001E },
+     {0xa0,0xC8,0x001F },
+     {0xa0,0xFF,0x0020 },
+     {0xa0,0x60,0x011D },
+     {0xa0,0x42,0x0180 },
+     {0xa0,0x09,0x01AD },
+     {0xa0,0x15,0x01AE },
+     {0xa0,0x40,0x0180 },
+     {0xa0,0x42,0x0180 },
+     {0xa0,0x30,0x0007 },
+     {0xa0,0x02,0x0008 },
+     {0xa0,0x00,0x0007 },
+     {0xa0,0x03,0x0008 },
+     {0x00,0x00,0x00},
+};
+
diff -Nru gspcav1-20071224/Vimicro/zc3xx.h gspcav1-20071224-kokom/Vimicro/zc3xx.h
--- gspcav1-20071224/Vimicro/zc3xx.h	2007-12-24 13:56:47.000000000 -0300
+++ gspcav1-20071224-kokom/Vimicro/zc3xx.h	2008-02-23 17:22:30.000000000 -0300
@@ -103,6 +103,20 @@
    MC501CB_Gamma,
    Last_Gamma
 };
+struct internal_sensor_id_by_chipset_revision
+{
+      unsigned int revision;
+      unsigned char internal_sensor_id;
+};
+static const struct internal_sensor_id_by_chipset_revision chipset_revision_sensor[] =
+{
+     {0xc001, 0x13} ,// MI0360.
+     {0xe001, 0x13},
+     {0x8001, 0x13},
+     {0x8000, 0x14},// CS2102K
+     {0x8400, 0x15},// TAS5130K
+     {0x00,0x00},
+};
 
 static __u8 zcxxi2cSensor[VGATOT][totval] = {
     {0x00, 0xff, 0xff, 0x01, 0xaa, 0x00, 0xff, 0xff, 0xff},	// HV7131B
@@ -309,7 +323,7 @@
 		    return (i | 0x10);
 	    }
 	}
-	if (zcxx3wrSensor[i][1] == 0x91) {
+       	if (zcxx3wrSensor[i][1] == 0x91) {
 	    /* check Aurelien Jurgen sensor */
 	    checkword = 0;
 	    spca5xxRegWrite(spca50x->dev, 0xa0, 0x02, 0x0010, NULL, 0);
@@ -318,20 +332,28 @@
 	    spca5xxRegRead(spca50x->dev, 0xa1, 0x01, 0x000a, &retbyte, 1);
 	    checkword |= retbyte;
 	    PDEBUG(1, "sensor 3w Vga ??? 0x%04X ", (checkword & 0xffff));
-	    if (checkword == 0xc001 || checkword == 0xe001 || checkword == 0x8001) {
-		spca50x->chip_revision = checkword;
-		spca5xxRegRead(spca50x->dev, 0xa1, 0x01, 0x0010, &retbyte,
-			       1);
-		spca5xxRegWrite(spca50x->dev, 0xa0, 0x01, 0x0000, NULL, 0);
-		spca5xxRegWrite(spca50x->dev, 0xa0, 0x0d, 0x003a, NULL, 0);
-		spca5xxRegWrite(spca50x->dev, 0xa0, 0x02, 0x003b, NULL, 0);
-		spca5xxRegWrite(spca50x->dev, 0xa0, 0x00, 0x0038, NULL, 0);
-		return 0x13;
+	    //this is tested only once anyway
+	    j=0;
+	    while(chipset_revision_sensor[j].revision )
+	     {
+		if( chipset_revision_sensor[j].revision == checkword )
+		{
+		   spca50x->chip_revision = checkword;
+		   spca5xxRegRead(spca50x->dev, 0xa1, 0x01, 0x0010, &retbyte,1);
+		   spca5xxRegWrite(spca50x->dev, 0xa0, 0x01, 0x0000, NULL, 0);
+		   spca5xxRegWrite(spca50x->dev, 0xa0, 0x0d, 0x003a, NULL, 0);
+		   spca5xxRegWrite(spca50x->dev, 0xa0, 0x02, 0x003b, NULL, 0);
+		   spca5xxRegWrite(spca50x->dev, 0xa0, 0x00, 0x0038, NULL, 0);
+		   return chipset_revision_sensor[j].internal_sensor_id;
+		}
+		j++;
 	    }
-
+	   
 	}
+       
 	i++;
     }
+   
     return (-1);
 }
 
@@ -427,6 +449,7 @@
         GammaSettingsID = VF0250_Gamma;
         break;
      case SENSOR_CS2102:
+     case SENSOR_CS2102K:  
         GammaSettingsID = CS2102_Gamma;
         break;
      default:
@@ -680,7 +703,17 @@
 	spca50x->sensor = SENSOR_PB0330;
 	set_zc3xxVGA(spca50x);
 	break;
-    };
+     case 0x14:
+	PDEBUG(0, "Find Sensor CS2102K?. Chip revision %x\n",spca50x->chip_revision);
+	spca50x->sensor = SENSOR_CS2102K;
+	set_zc3xxVGA(spca50x);
+	break;
+     case 0x15:
+	PDEBUG(0, "Find Sensor TAS5130CK?. Chip revision %x\n",spca50x->chip_revision);
+	spca50x->sensor = SENSOR_TAS5130CK;
+	set_zc3xxVGA(spca50x);
+	break;
+       };
 
     if ((sensor == 0x02) || (sensor == 0x01) || (sensor == 0x05)
 	|| (sensor == 0x07) || (sensor == 0x09) || (sensor == 0x0b)
@@ -872,6 +905,25 @@
 	    err = zc3xxWriteVector(spca50x, pas106b_scale_data);   
 	}
 	break;
+    case SENSOR_CS2102K:
+	if (spca50x->mode) {
+	    /* 320x240 */
+	    err = zc3xxWriteVector(spca50x, cs2102K_start_data);
+	} else {
+	    /* 640x480 */
+	    err = zc3xxWriteVector(spca50x, cs2102K_scale_data);
+	}
+	break;
+    case SENSOR_TAS5130CK:
+	if (spca50x->mode) {
+	    /* 320x240 */
+	    err = zc3xxWriteVector(spca50x, tas5130CK_start_data);
+	} else {
+	    /* 640x480 */
+	    err = zc3xxWriteVector(spca50x, tas5130CK_scale_data);
+	}
+	break;
+
     }
     zc3xx_setbrightness(spca50x);
     zc3xx_setquality(spca50x);
@@ -939,6 +991,7 @@
  	  zc3xxWriteVector(spca50x, tas5130c_vf0250_50HZ);
       break;
       case SENSOR_TAS5130CXX:
+      case SENSOR_TAS5130CK:
  	  zc3xxWriteVector(spca50x, tas5130cxx_50HZ);
       case SENSOR_PB0330:
  	  zc3xxWriteVector(spca50x, pb0330_50HZ);
@@ -953,6 +1006,7 @@
  	  zc3xxWriteVector(spca50x, hdcs2020b_50HZ);
       break;
       case SENSOR_CS2102:
+      case SENSOR_CS2102K:
  	  zc3xxWriteVector(spca50x, cs2102_50HZ);
       break;
       default:     
@@ -972,7 +1026,8 @@
  	  zc3xxWriteVector(spca50x, tas5130c_vf0250_60HZ);
       break;
       case SENSOR_TAS5130CXX:
- 	  zc3xxWriteVector(spca50x, tas5130cxx_60HZ);
+      case SENSOR_TAS5130CK:
+	zc3xxWriteVector(spca50x, tas5130cxx_60HZ);
       break;
       case SENSOR_PB0330:
  	  zc3xxWriteVector(spca50x, pb0330_60HZ);
@@ -987,6 +1042,7 @@
  	  zc3xxWriteVector(spca50x, hdcs2020b_60HZ);
       break;
       case SENSOR_CS2102:
+      case SENSOR_CS2102K:
  	  zc3xxWriteVector(spca50x, cs2102_60HZ);
       break;
       default:     
@@ -1006,6 +1062,7 @@
  	  zc3xxWriteVector(spca50x, tas5130c_vf0250_50HZScale);
       break;
       case SENSOR_TAS5130CXX:
+      case SENSOR_TAS5130CK:
  	  zc3xxWriteVector(spca50x, tas5130cxx_50HZScale);
       break;
       case SENSOR_PB0330:
@@ -1021,6 +1078,7 @@
  	  zc3xxWriteVector(spca50x, hdcs2020b_50HZScale);
       break;
       case SENSOR_CS2102:
+      case SENSOR_CS2102K:
  	  zc3xxWriteVector(spca50x, cs2102_50HZScale);
       break;
       default:
@@ -1041,6 +1099,7 @@
  	  zc3xxWriteVector(spca50x, tas5130c_vf0250_60HZScale);
       break;
       case SENSOR_TAS5130CXX:
+      case SENSOR_TAS5130CK:
  	  zc3xxWriteVector(spca50x, tas5130cxx_60HZScale);
       break;
       case SENSOR_PB0330:
@@ -1056,6 +1115,7 @@
  	  zc3xxWriteVector(spca50x, hdcs2020b_60HZScale);
       break;
       case SENSOR_CS2102:
+      case SENSOR_CS2102K:
  	  zc3xxWriteVector(spca50x, cs2102_60HZScale);
       break;
       default:
@@ -1076,6 +1136,7 @@
  	  zc3xxWriteVector(spca50x, tas5130c_vf0250_NoFliker);
       break;
       case SENSOR_TAS5130CXX:
+      case SENSOR_TAS5130CK:
  	  zc3xxWriteVector(spca50x, tas5130cxx_NoFliker);
       break;
       case SENSOR_PB0330:
@@ -1091,6 +1152,7 @@
  	  zc3xxWriteVector(spca50x, hdcs2020b_NoFliker);
       break;
       case SENSOR_CS2102:
+      case SENSOR_CS2102K:
  	  zc3xxWriteVector(spca50x, cs2102_NoFliker);
       break;
       default:
@@ -1111,6 +1173,7 @@
  	  zc3xxWriteVector(spca50x, tas5130c_vf0250_NoFlikerScale);
       break;
       case SENSOR_TAS5130CXX:
+      case SENSOR_TAS5130CK:
  	  zc3xxWriteVector(spca50x, tas5130cxx_NoFlikerScale);
       break;
       case SENSOR_PB0330:
@@ -1126,6 +1189,7 @@
  	  zc3xxWriteVector(spca50x, hdcs2020b_NoFlikerScale);
       break;
       case SENSOR_CS2102:
+      case SENSOR_CS2102K:
  	  zc3xxWriteVector(spca50x, cs2102_NoFlikerScale);
       break;
       default:
diff -Nru gspcav1-20071224/gspca.h gspcav1-20071224-kokom/gspca.h
--- gspcav1-20071224/gspca.h	2007-12-24 13:56:47.000000000 -0300
+++ gspcav1-20071224-kokom/gspca.h	2008-02-23 16:58:52.000000000 -0300
@@ -129,7 +129,8 @@
 #define SENSOR_OV7670 29
 #define SENSOR_MI1310_SOC 30
 #define SENSOR_MC501CB 31
-
+#define SENSOR_CS2102K 33
+#define SENSOR_TAS5130CK 34
 /* Alternate interface transfer sizes */
 #define SPCA50X_ALT_SIZE_0       0
 #define SPCA50X_ALT_SIZE_128     1
diff -Nru gspcav1-20071224/gspca_core.c gspcav1-20071224-kokom/gspca_core.c
--- gspcav1-20071224/gspca_core.c	2007-12-24 13:56:47.000000000 -0300
+++ gspcav1-20071224-kokom/gspca_core.c	2008-02-23 17:02:29.000000000 -0300
@@ -1918,11 +1918,13 @@
 	switch (spca50x->sensor) {
 	case SENSOR_TAS5130C_VF0250:
 	case SENSOR_TAS5130CXX:
+	case SENSOR_TAS5130CK:
 	case SENSOR_PB0330:
 	case SENSOR_PAS106:
 	case SENSOR_ICM105A:
 	case SENSOR_HDCS2020b:
 	case SENSOR_CS2102:
+	case SENSOR_CS2102K:
 	case SENSOR_OV7660:
 	case SENSOR_OV7620:
 	case SENSOR_MC501CB:
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Spca50x-devs mailing list
Spca50x-devs@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/spca50x-devs