Re: tm6000 and IR

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 06.12.2010 11:02, schrieb Dmitri Belimov:

Thank you. When I switched to this branch modules is not crash when
USB removed. But disable IR over interrupt after start video/radio

With my best regards, Dmitry.

changing the interface configuration by initiation isoc urb can
deactivating the interrupt in endpoint
We configure USB stick when modules is loaded

/* Selects the proper interface */
  rc = usb_set_interface(usbdev, 0, 1);

The USB controller reserved one half of bandwith for ISOC. Other device on USB can work slowely.
Much better:

when module loaded
/* Selects the proper interface */
  rc = usb_set_interface(usbdev, 0, 2);

when start video/audio/TS
/* Selects the proper interface */
  rc = usb_set_interface(usbdev, 0, 1);

when stop video/audio/TS
/* Selects the proper interface */
  rc = usb_set_interface(usbdev, 0, 2);

And restart int pipe after each selection. What you mean about it?
Dynamic bandwith utilization.

With my best regards, Dmitry.

No. Here (tm6000_prepare_isoc) is that problem. It resetted the active interrupt urb pipe and interrupt urb must reinitialize after call usb_set_interface, I think.

static int tm6000_prepare_isoc(struct tm6000_core *dev, unsigned int framesize)
{
    struct tm6000_dmaqueue *dma_q = &dev->vidq;
    int i, j, sb_size, pipe, size, max_packets, num_bufs = 8;
    struct urb *urb;

    /* De-allocates all pending stuff */
    tm6000_uninit_isoc(dev);

    usb_set_interface(dev->udev,
              dev->isoc_in.bInterfaceNumber,
              dev->isoc_in.bAlternateSetting);


    pipe = usb_rcvisocpipe(dev->udev,
                   dev->isoc_in.endp->desc.bEndpointAddress &
                   USB_ENDPOINT_NUMBER_MASK);

    size = usb_maxpacket(dev->udev, pipe, usb_pipeout(pipe));

Can you test without call "usb_set_interface"?

Stefan Ringel

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux