diff -ubwr ./Conexant/cx11646.h /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/Conexant/cx11646.h --- ./Conexant/cx11646.h Fri Apr 21 12:02:04 2006 +++ /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/Conexant/cx11646.h Mon Jan 22 09:41:14 2007 @@ -25,12 +25,6 @@ static void cx11646_start(struct usb_spca50x *spca50x); static void cx11646_stop0(struct usb_spca50x *spca50x); static void cx11646_stopN(struct usb_spca50x *spca50x); -static __u16 cx_getbrightness(struct usb_spca50x *spca50x); -static __u16 cx_getcontrast(struct usb_spca50x *spca50x); -static __u16 cx_getcolors(struct usb_spca50x *spca50x); -static void cx_setbrightness(struct usb_spca50x *spca50x); -static void cx_setcontrast(struct usb_spca50x *spca50x); -static void cx_setcolors(struct usb_spca50x *spca50x); static int cx11646_config(struct usb_spca50x *spca50x); static void cx11646_shutdown(struct usb_spca50x *spca50x); static void cx11646_setAutobright(struct usb_spca50x *spca50x); diff -ubwr ./decoder/gspcadecoder.c /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/decoder/gspcadecoder.c --- ./decoder/gspcadecoder.c Thu Dec 7 16:54:34 2006 +++ /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/decoder/gspcadecoder.c Thu Feb 8 22:50:57 2007 @@ -304,7 +304,6 @@ }; -int spca50x_outpicture(struct spca50x_frame *myframe); static int jpeg_decode411(struct spca50x_frame *myframe, int force_rgb); static int jpeg_decode422(struct spca50x_frame *myframe, int force_rgb); @@ -607,7 +606,7 @@ break; default: - + // printf("%s: bad row %d 0x%x\n", __FUNCTION__, row, word); return -1; } outp += width; @@ -891,6 +890,7 @@ *bitfill += 7; return 0xff; } +static int internal_spca561_decode(int width, int height, unsigned char *inbuf, unsigned char *outbuf) // {{{ { // buffers @@ -1361,6 +1361,7 @@ return 0; } +static void decode_spca561(unsigned char *inbuf, char *outbuf, int width, int height) { @@ -1480,6 +1481,7 @@ dscans[i].dc = 0; return 0; } +static void jpeg_reset_input_context(struct dec_data *decode, unsigned char *buf, int oescap) @@ -1857,12 +1859,12 @@ { unsigned int i, j, k, l; int tc, th, tt, tac, tdc; - unsigned char *ptr; + const unsigned char *ptr; unsigned int qIndex = spca50x->qindex; memcpy(spca50x->maindecode.comps, comp_template, MAXCOMP * sizeof(struct comp)); /* set up the huffman table */ - ptr = (unsigned char *) GsmartJPEGHuffmanTable; + ptr = (const unsigned char *) GsmartJPEGHuffmanTable; l = GSMART_JPG_HUFFMAN_TABLE_LENGTH; while (l > 0) { int hufflen[16]; @@ -1889,7 +1891,7 @@ } /* set up the scan table */ - ptr = (unsigned char *) GsmartJPEGScanTable; + ptr = (const unsigned char *) GsmartJPEGScanTable; for (i = 0; i < 3; i++) { spca50x->maindecode.dscans[i].cid = *ptr++; tdc = *ptr++; diff -ubwr ./gspca.h /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/gspca.h --- ./gspca.h Wed Nov 29 18:24:32 2006 +++ /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/gspca.h Wed Jan 31 17:29:09 2007 @@ -34,7 +34,7 @@ #define PAC207_ENDPOINT_ADDRESS 5 /* Isoc endpoint number */ /* only 2 or 4 frames are allowed here !!! */ #define SPCA50X_NUMFRAMES 2 -#define SPCA50X_NUMSBUF 2 +#define SPCA50X_NUMSBUF 4 #define VENDOR_SONIX 0x0c45 #define VENDOR_ETOMS 0x102c #define VENDOR_SUNPLUS 0x04fc diff -ubwr ./gspca_core.c /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/gspca_core.c --- ./gspca_core.c Wed Jan 10 22:22:01 2007 +++ /usr/ports/luigi/gspca/work-luigi/gspcav1-20070110/gspca_core.c Fri Feb 9 11:57:34 2007 @@ -32,7 +32,7 @@ * along with this program; if not, write to the Free Software Foundation, * Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -static const char version[] = GSPCA_VERSION; +static const char gspca_version[] = GSPCA_VERSION; #ifndef AUTOCONF_INCLUDED #include #endif @@ -163,13 +163,6 @@ static int spca5xx_set_light_freq(struct usb_spca50x *spca50x, int freq); static struct usb_driver spca5xx_driver; -#ifndef max -static inline int -max(int a, int b) -{ - return (a > b) ? a : b; -} -#endif /* max */ /********************************************************************** * List of known SPCA50X-based cameras **********************************************************************/ @@ -854,7 +847,7 @@ * FIXME as I don't know how to set the bandwith budget * we allow the maximum **/ -struct usb_host_endpoint * +static struct usb_host_endpoint * gspca_set_isoc_ep(struct usb_spca50x *spca50x, int nbalt) { int i, j; @@ -1901,6 +1894,9 @@ if (spca50x->user) goto out; err = -ENOMEM; + /* XXX set compress and autoexpo */ + spca50x->autoexpo = autoexpo; + spca50x->compress = compress; if (spca50x_alloc(spca50x)) goto out; /* initialize sensor and decoding */ @@ -4100,7 +4096,7 @@ { if (usb_register(&spca5xx_driver) < 0) return -1; - info("gspca driver %s registered", version); + info("gspca driver %s registered", gspca_version); return 0; } static void __exit