[sane-devel] usb_submit_urb return ENOMEM?

Henning Meier-Geinitz henning@meier-geinitz.de
Sun, 6 Apr 2003 20:10:40 +0200


On Sun, Apr 06, 2003 at 10:22:28PM +0800, Fan Dan wrote:
>    I have some problem in developing usb scanner.who can help me?

You are talking about Linux kernel, not SANE? I guess linux-usb-devel
is the right mailing list, see http://www.linux-usb.org.

I'll cc that list.

>    when call usb_submit_urb() in probe_scanner() (scanner.c of kernel 
> 2.4.19),

You'd better use the current code in 2.4.21-pre7. However, I don't
think I have changed the interrupt code.

> return is ENOMEM. why and how to resolve that?

Check the code. Look where the ENOMEM comes from. I guess from
somewhere in the host controller driver code.

> My scanner has three endpoints (1 is bulk in, 2 is bulk out, 3 is
> bulk interrupt). 

You know that the interrupt endpoint isn't really supported by the
kernel scanner driver? The code is just a dummy currently.

>    Then I marked usb_submit_urb, scanner is probed, and ioctl system call 
> can be called. But when write_scanner, usb_bulk_msg return ENOMEM too. Why 
> and how to??

Please provide all details. Which scanner? Which host controller? Any
other USB hardware used? Enable USB debugging in the kernel config and
show us a complete log.