Continuing my saga of BT878A resource conflicts ... (oops I have the subject line wrong s/b BT878A) I modified bttv-driver.c and added tracings to find out where this thing is bombing. It seems to be looping between kvirt_to_pa and uvirt_to_kva. So there is a memory problem. kvirt_to_pa initializes memory pages. uvirt_to_kva returns the kernel virtual mapping of physical memory. When I run xawtv, the image appears on the screen just fine, but when I try to do a jpeg capture, I get this message in xawtv v4l: timeout (got SIGALARM), hardware/driver problems? ioctl: VIDEOCSYNC(0): Interrupted system call ioctl: VIDIOCMCAPTURE(0,fmt=3,size=384x288): Device or resource busy My tracings in bttv-driver.c then show looping between kvirt_to_pa and uvirt_to_pa. So it does not really look like an interrupt, it looks like a timeout, and failure to allocate memory. Maybe it's a conflict in accessing DMA? The BT878 video controller is showing Master capable. Latency=32. Min Gnt=16. Max Lat=40. prefetchable 32 bit memory at 0xe2101000 [0xe2101fff] The second device on BT878 is showing Master capable. Latency=32. Min Gnt=4. Max Lat=255 prefetchable 32 bit memory at 0xe2102000 [0xe2102fff] The CT69000 video controller is showing prefetchable 32 bit memory at 0xe0000000 [0xe0ffffff] The system has 256MB RAM and 256MB swap, and the CT69000 video controller has 2MB RAM onboard. Any idea how I can allocate a different memory space in the kvirt_to_pa routine? Or how can I get more info to find out what the conflict is? Perhaps just remap of the memory is all that is needed. I see a comment in bttv-driver.c that says * FIXME: * - PAGE_READONLY should suffice!? * - remap_page_range is kind of inefficient for page by * page remapping. But e.g. pte_alloc() does not work * in modules ... :-( (This is in the do_bttv_mmap routine) Also, in the document Insmod-options in /src/Documentation it mentions "remap, card, radio, and pll accept up to four comma-separated argument (for multiple boards) ... and yet I don't see a remap insmod paramter listed! Looking in the the bttv-driver.c source, there is no remap parameter. Has this been removed? Thanks, Doug