This is a page of stuff that I have found out, often the hard way. I have a Garmin GPSmap 60CSx and its a great device. I don't use M$-windows unless I really have to.
garmin_gps ttyUSB0: garmin_read_int_callback - failed submitting read urb, error -22As best as I can tell, this is fixed in the v0.28 version. As an alternative, you can use the "usb:" target to gpsbabel which then uses libusb to access the GPS. The downside with that is that you are likely to have permisions problems since it needs root access. See http://www.gpsbabel.org/os/Linux_Hotplug.html for more information.
If you are using an earlier kernel, the driver you need is in the 2.6.20 version (possibly earlier). I managed to backport to 2.6.15 without too much pain.