SYNC TO KERNEL: - Support for upcoming videodev rewrite. Required significant changes to ioctl() in older V4L interface (to minimize code differences across versions). - Added memory flags param to usb_submit_urb(), for 2.5.4 - Added memory flags param to usb_alloc_urb(), for 2.5.5 NEW FEATURES: - Code is ready for OV518 decompression module BUG FIXES: - Removed redundant i2c includes - Changed memmove() to memcpy() when obviously safe to do so. - URB errors should cause interrupt handler to return - Removed unnecessary calls to usb_driver_release_interface() - Fixed PDEBUG() macro for GCC >= 3.0.3 - Changed buffers to unsigned char (could otherwise lead to trouble under certain achitectures ) INTERNAL CHANGES: - Created temporary buffer for decompression modules; changes binary interface - Rearranged and commented various sections of code - Removed comments on module parameters (see ov511.txt instead) - Added tables mapping enum values to strings; Palettes and other variables are now printed symbolically. - Eliminated redundant error messages and cleaned up error paths in i2c code - Added lock variable to struct sbuf, which is now passed directly to interrupt handler (in preparation for SMP fixes) - Unlinking is now handled by ov51x_unlink_isoc() - ov51x_do_dealloc() is used to handle error cases in ov51x_alloc() - Eliminated ov51x_v4l1_init_done() and ov51x_v4l1_write()