The PWC driver that ships with recent versions of linux is being maintained at saillard.org . It is a good driver and is kept reasonably up to date. There are room for improvements however. I was interested in using a Philips camera to trigger still shots with as little latency as possible for use with robotics. After studying the problem I determined that I could cut the latency in half by changing the pipeline structure in the driver, and did so without affecting its existing operation. I added a new mode to the driver which essentially allows one to sample off the top of the pipe-line or immediately, rather than off the bottom. This involved creation of a new accessor.
I posted my driver patch and description to the PWC list (twice) without receiving a peep of comment from the devs. I don't know what to make of this. I've been repeatedly queried by others interested in achieving lower latency for the driver. I am not keeping my changes in sync with future updates to the regular PWC driver - its too much work. If anyone is interested in using this code they are free to do so. I will keep it posted here so long as it remains useful.
Installing the modified PWC driver
This works with 2.6.24 kernel from kernel.org . It will no doubt need to be modified for later kernels. The code for this driver is located in /usr/src/linux/drivers/media/video/pwc. Save it as a tarball in case you mess something up, then untar the modified driver in the same directory. Note: if you don't have this directory then it means you don't have PWC support built into your kernel. Go back to make menuconfig and enable PWC support as a module, build your kernel, and come back here when you're done.
Now rebuild the kernel. I am assuming you already have a valid .config set up and have built this kernel before. If not, do that before trying to install this modified driver.
If all you've done is change the driver code, the kernel itself will not have changed, so you don't need to recompile the kernel.