Hi Rudolf, thanx for this hint. I found this article to it http://www.mail-archive.com/[EMAIL PROTECTED]/msg19522.h tml. So i included in pwc-if.c in pwc_isoc_handler of the PWC driver for my linux webcam the following lines:
handler_end: if (awake) wake_up_interruptible(&pdev->frameq); /* No URB resubmitting in this kernel */ urb->dev = pdev->udev; // i = usb_submit_urb(urb, GFP_ATOMIC); //from pwc driver kernel 2.6 i = usb_submit_urb(urb); //printk("resubmit urb\n"); //for test if (i != 0) { Err("Error (%d) re-submitting urb in pwc_isoc_handler.\n", i); } } After compiling i get some iso transfers from the ISP1161 driver and 2 resubmits from PWC, but then again a kernel panic with the message "bad frame format" and "In idle task - not syncing". So which version from Roman did you use and have you changed anything else to get it function? Also it is mentioned in the PWC that resubmit urbs are not supported by the kernel 2.4.x. So have i to change something else to get it functioning? May it be possible that you or someone else can give me a short summary what to change at all?! It could be possible that i had miss to change something to get webcam (iso) support with isp1161, kernel2.4.22 and pwc webcam driver. Thx... David -----Ursprüngliche Nachricht----- Von: Rudolf Ladyzhenskii [mailto:[EMAIL PROTECTED] Gesendet: Montag, 2. August 2004 00:29 An: David Grab; [EMAIL PROTECTED] Betreff: RE: [linux-usb-devel] ISP1161 ISO Support Hi, I was using version of the ISP116x driver for XScale processors, but it was based on Roman's driver. The problem I had was the way driver services ISO transfers. Drivesr used 2.6 kernel way that does not automatically re-submit ISO URBs, so you have to do it yourself in your webcam Rx interrupt routine. Rudolf -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of David Grab Sent: Saturday, July 31, 2004 12:22 AM To: [EMAIL PROTECTED] Subject: [linux-usb-devel] ISP1161 ISO Support Hello all, i´m trying to get my Philips PCVC 690K webcam to functioning with ISP 1161A on a MCF 5272 Coldfire uClinux 2.4.22-uc0 system. First of all USB keyboard an mouse is functioning. If i´m right, then the ISP 1161 driver needs ISO support for the webcam. I read some threads here in the list about this and tried first Roman´s 0.95 driver. The camera get´s detected but with cat /dev/video0 nothing happens. The communication theems not working. So i changed following lines like in the Tango version: in the hc_interrupt routine: #ifdef HC_ENABLE_ISOC /* read itl1 first. if there is an buffer overflow HC will stop at itl1 There will be a quirks in sh_done_list if this happens !!!!! */ if (bstat & ITL1BufferDone) { //if ((bstat & ITL1BufferFull) && (bstat & ITL1BufferDone)) { hp->itl1_len = READ_REG16 (hci, HcReadBackITL1Length); if (hp->itl1_len > 0) { printk("bstat =%x hp->itl1_len=%d\n",bstat,hp->itl1_len); WRITE_REG16 (hci, hp->itl1_len, HcTransferCounter); READ_REGn16 (hci, HcITLBufferPort, hp->itl1_len, hp->tl); hp->tlp = 0; hci->td_array = &hci->i_td_array [1]; sh_done_list (hci); } iso_buffer_index = 1; } if (bstat & ITL0BufferDone) { //if ((bstat & ITL0BufferFull) && (bstat & ITL0BufferDone)) { hp->itl0_len = READ_REG16 (hci, HcReadBackITL0Length); if (hp->itl0_len > 0) { printk("bstat =%x hp->itl0_len=%d\n",bstat,hp->itl0_len); WRITE_REG16 (hci, hp->itl0_len, HcTransferCounter); READ_REGn16 (hci, HcITLBufferPort, hp->itl0_len, hp->tl); hp->tlp = 0; hci->td_array = &hci->i_td_array [0]; sh_done_list (hci); } iso_buffer_index = 0; } hp->tlp = 0; hci->td_array = &hci->i_td_array [iso_buffer_index]; sh_scan_iso_urb_list (hci, &hci->iso_list, hci->frame_number + 1); if (hp->tlp >0) { WRITE_REG16 (hci, hp->tlp, HcTransferCounter); WRITE_REGn16 (hci, HcITLBufferPort, hp->tlp, hp->tl); } #endif With these lines i get some output like: ... bstat = c hp->itl0_len=1480 bstat = c hp->itl0_len=1480 bstat = c hp->itl0_len=1480 bstat = c hp->itl0_len=1480 bstat = e hp->itl0_len=1480 bstat = c hp->itl0_len=1480 bstat = e hp->itl0_len=1480 bstat = c hp->itl0_len=1480 ... Without the printk´s i get with cat /dev/video0 after a short time a kernel panig with following failure message: In idle task - not syncing <7> pwc_isoc_handler() called with status -75 [Babble (bad cable?)]. I think this is because of the iso transfer, right? I tried also the tango and some other drivers, but there i´m getting also trouble. Is there anywhere a functioning implementation with ISO Transfer? Are there other things that i´ve to look after? Thx for any help, David ------------------------------------------------------- This SF.Net email is sponsored by OSTG. Have you noticed the changes on Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now, one more big change to announce. We are now OSTG- Open Source Technology Group. Come see the changes on the new OSTG site. www.ostg.com _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel ------------------------------------------------------- This SF.Net email is sponsored by OSTG. Have you noticed the changes on Linux.com, ITManagersJournal and NewsForge in the past few weeks? Now, one more big change to announce. We are now OSTG- Open Source Technology Group. Come see the changes on the new OSTG site. www.ostg.com _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel