I am trying to use a USB card reader (ECS UCR 61S2B). It is detected by the OS (/dev/da0.../dev/da1 available) but it cannot read from valid 32MB SmartMediaCards. I already asked the maintainers of umass and multimedia@freebsd.org and got no response... I looked for 61S2B in existing problem reports and found nothing... >usbdevs -v Controller /dev/usb2: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), VIA(0x0000), rev 1.00 port 1 addr 2: full speed, power 100 mA, config 1, USB Storage Device(0x0c55), Generic(0x1019), rev 1.00 port 2 powered >dd if=/dev/da1 of=/dev/null dd: /dev/da1: Device not configured
in re: my PR kern/62257 I have found a web page about the linux kernel: http://kernel.linux.cz/pub/linux/kernel/people/gregkh/usb/2.6/2.6.0-test2/usb-storage-03-2.6.0-test2.patch It says, that I should try to send this string "\xec\x0a\x06\x00$PCCHIPS" to the card-reading-device. Could somebody explain me, how to send that string, please? Thank you. -Arne __________________________________ Do you Yahoo!? Yahoo! Tax Center - File online by April 15th http://taxes.yahoo.com/filing.html
I have got another informational page about this card reader: http://gelato.uiuc.edu/~cernekee/ucr61s2b/2.5.72.patch -Wörner __________________________________ Do you Yahoo!? New and Improved Yahoo! Mail - 100MB free storage! http://promotions.yahoo.com/new_mail
I tried this (advice of "Hans Petter Selasky" <hselasky@c2i.net>) and it did not work: ---------------------------- 1) add the following to umass.c before "Static int umass_match_proto": static void umass_dummy_callback(usbd_xfer_handle xfer, usbd_private_handle priv, usbd_status err) { return; } static void umass_init_ucr(struct umass_softc *sc) { usbd_xfer_handle xfer; xfer = usbd_alloc_xfer(sc->sc_udev); if(!xfer) return; usbd_setup_xfer(xfer, sc->bulkout_pipe, NULL, "\xec\x0a\x06\x00$PCCHIPS", sizeof("\xec\x0a\x06\x00$PCCHIPS")-1, 0, USBD_DEFAULT_TIMEOUT, umass_dummy_callback); usbd_sync_transfer(xfer); usbd_free_xfer(xfer); return; } 2) and where you find the function umass_init_shuttle called, add umass_init_ucr(sc): if (sc->quirks & SHUTTLE_INIT) umass_init_shuttle(sc); umass_init_ucr(sc); 3) I am not sure if the string is right. ------------------------ It's probably the trick beeing applied wrongly. You could try to change: usbd_setup_xfer(xfer, sc->bulkout_pipe, NULL, "\xec\x0a\x06\x00$PCCHIPS", sizeof("\xec\x0a\x06\x00$PCCHIPS")-1, 0, USBD_DEFAULT_TIMEOUT, umass_dummy_callback); into: usbd_setup_xfer(xfer, sc->bulkout_pipe, NULL, "\xec\x0a\x06\x00$PCCHIPS\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", UMASS_BBB_CBW_SIZE, 0, USBD_DEFAULT_TIMEOUT, umass_dummy_callback); though it doesn't work with my cardreader, it might work with yours. ---------------------- -Arne
I tried this (advice of "Hans Petter Selasky" <hselasky@c2i.net>) and it did not work: ---------------------------- 1) add the following to umass.c before "Static int umass_match_proto": static void umass_dummy_callback(usbd_xfer_handle xfer, usbd_private_handle priv, usbd_status err) { return; } static void umass_init_ucr(struct umass_softc *sc) { usbd_xfer_handle xfer; xfer = usbd_alloc_xfer(sc->sc_udev); if(!xfer) return; usbd_setup_xfer(xfer, sc->bulkout_pipe, NULL, "\xec\x0a\x06\x00$PCCHIPS", sizeof("\xec\x0a\x06\x00$PCCHIPS")-1, 0, USBD_DEFAULT_TIMEOUT, umass_dummy_callback); usbd_sync_transfer(xfer); usbd_free_xfer(xfer); return; } 2) and where you find the function umass_init_shuttle called, add umass_init_ucr(sc): if (sc->quirks & SHUTTLE_INIT) umass_init_shuttle(sc); umass_init_ucr(sc); 3) I am not sure if the string is right. ------------------------ It's probably the trick beeing applied wrongly. You could try to change: usbd_setup_xfer(xfer, sc->bulkout_pipe, NULL, "\xec\x0a\x06\x00$PCCHIPS", sizeof("\xec\x0a\x06\x00$PCCHIPS")-1, 0, USBD_DEFAULT_TIMEOUT, umass_dummy_callback); into: usbd_setup_xfer(xfer, sc->bulkout_pipe, NULL, "\xec\x0a\x06\x00$PCCHIPS\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", UMASS_BBB_CBW_SIZE, 0, USBD_DEFAULT_TIMEOUT, umass_dummy_callback); though it doesn't work with my cardreader, it might work with yours. ---------------------- -Arne __________________________________ Do you Yahoo!? Take Yahoo! Mail with you! Get it on your mobile phone. http://mobile.yahoo.com/maildemo
Responsible Changed From-To: freebsd-bugs->freebsd-usb Reclassify.
State Changed From-To: open->suspended Mark suspended awaiting patches.
batch change: For bugs that match the following - Status Is In progress AND - Untouched since 2018-01-01. AND - Affects Base System OR Documentation DO: Reset to open status. Note: I did a quick pass but if you are getting this email it might be worthwhile to double check to see if this bug ought to be closed.
Although there's a lot of data here, I'm not sure there's enough information to recreate this problem. closing the bug as unactionable. In addition, umass and usb has changed radically since this bug was filed, so chances are good it may have been fixed as a side effect (though given the strange string to send to the device, that may be questionable). If there's someone with this same problem on FreeBSD 11 or 12, please open a new bug and cc me so we can get to the bottom of this.