[SOLVED] ASI120MM Debian 9 video frame timeout

any question related to our SDK and driver

Moderators: yang, ray, chad

Re: [SOLVED] ASI120MM Debian 9 video frame timeout

Postby NikkiM » Sat Jun 10, 2017 10:01 pm

I had a similar problem under Fedora 25. I have downloaded a vanilla kernel, applied the patch and recompiled. Since doing this I can take extremely long exposures with no failures. Great!

Regards
Nikki
NikkiM
 
Posts: 11
Joined: Sun Mar 19, 2017 10:01 pm

Re: [SOLVED] ASI120MM Debian 9 video frame timeout

Postby Thomas » Tue Jan 16, 2018 5:09 pm

Hi there,
Sorry to revive an old thread but I am trying to apply the patch to a slightly different version of config.c.
Does anyone know how to patch this block of code?

Code: Select all
        /* Some buggy low-speed devices have Bulk endpoints, which is
         * explicitly forbidden by the USB spec.  In an attempt to make
         * them usable, we will try treating them as Interrupt endpoints.
         */
        if (to_usb_device(ddev)->speed == USB_SPEED_LOW &&
                        usb_endpoint_xfer_bulk(d)) {
                dev_warn(ddev, "config %d interface %d altsetting %d "
                    "endpoint 0x%X is Bulk; changing to Interrupt\n",
                    cfgno, inum, asnum, d->bEndpointAddress);
                endpoint->desc.bmAttributes = USB_ENDPOINT_XFER_INT;
                endpoint->desc.bInterval = 1;
                if (usb_endpoint_maxp(&endpoint->desc) > 8)
                        endpoint->desc.wMaxPacketSize = cpu_to_le16(8);
        }

        /*
         * Some buggy high speed devices have bulk endpoints using
         * maxpacket sizes other than 512.  High speed HCDs may not
         * be able to handle that particular bug, so let's warn...
         */
        if (to_usb_device(ddev)->speed == USB_SPEED_HIGH
                        && usb_endpoint_xfer_bulk(d)) {
                unsigned maxp;

                maxp = usb_endpoint_maxp(&endpoint->desc) & 0x07ff;
                if (maxp != 512)
                        dev_warn(ddev, "config %d interface %d altsetting %d "
                                "bulk endpoint 0x%X has invalid maxpacket %d\n",
                                cfgno, inum, asnum, d->bEndpointAddress,
                                maxp);
        }



Thank you for the help.
Thomas
Thomas
 
Posts: 2
Joined: Thu Dec 10, 2015 6:08 am

Re: [SOLVED] ASI120MM Debian 9 video frame timeout

Postby JamesF » Thu Jan 18, 2018 10:17 pm

I'm not sure there's a need to patch that particular piece of code. It appears only to emit a warning that the device doesn't meet the USB specification, not to attempt to force the packet size to a compliant length as well.

James
JamesF
 
Posts: 88
Joined: Wed Feb 20, 2013 10:27 pm

Re: [SOLVED] ASI120MM Debian 9 video frame timeout

Postby JamesF » Thu Jan 18, 2018 10:27 pm

Of course just because the kernel doesn't need patching at this point doesn't mean the device will work. There may be other parts of the kernel that assume the device correctly implements the USB specification and they may break when that turns out to be untrue.

James
JamesF
 
Posts: 88
Joined: Wed Feb 20, 2013 10:27 pm

Re: [SOLVED] ASI120MM Debian 9 video frame timeout

Postby Thomas » Sat Jan 20, 2018 7:43 am

Thank you James. You're right, it looks like it's just a warning. I fetched an earlier version of the kernel that was matching the description in this thread.
Thomas
 
Posts: 2
Joined: Thu Dec 10, 2015 6:08 am

Previous

Return to SDK & Driver

Who is online

Users browsing this forum: Google [Bot], hotblack43 and 1 guest