Re: [Bug 194727] uaudio device gets disconnected, and hangs usb until everything using /dev/mixer* is closed

2018-06-23 Thread Waitman Gobble




On 2018-06-22 10:49, bugzilla-nore...@freebsd.org wrote:


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194727

Ivan  changed:

What|Removed |Added

CC||b...@abinet.ru

--- Comment #5 from Ivan  ---
This is illogical. USB supports hot plug, so kernel must handle it 
without
stucking. I use audio with KVM b/w Linux. Windows and FreeBSD and I 
can't even

kill mixer as entire USB waits indefinitely.

My observations with FF playing youtube video
1. Windows - active playback resumes after FF restart
2. Linux - active playback resumes after FF restart
3. FreeBSD needs reset button.



AFAIK It's been behaving that way for years.

Basically if the device gets unplugged the easiest option is to reboot. 
would be nice if that worked differently.


Question, snd_uaudio came out of GENERIC config in FreeBSD-11. If I use 
USB audio I add snd_uaudio into the kernel config and rebuild. I don't 
think USB audio works without it. I don't recall seeing it available to 
kldload manually. I think some people want it load/unload on demand or 
something, like in TrueOS(?) but it was not loading snd_uaudio for me 
until i put the line in the kernel config, back in 11. anymore i just do 
it.



Is something else supposed to be handling usb audio?

---
Waitman Gobble

___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


Re: RFID reader/writer with USB interface for FreeBSD

2018-03-16 Thread Waitman Gobble via freebsd-usb
On Fri, 16 Mar 2018 15:16:19 +0100
Matthias Apitz <g...@unixarea.de> wrote:

> 
> Hello,
> 
> Is there any RFID reader/writer solution which is OpenSource and runs on
> FreeBSD using libusb? The background of the question is: We own some
> Java written application, written for Windows, which works fine as well
> on FreeBSD and Linux. Is the following exception:
> 
> It uses from the Java code through a C++ call interface, written by us,
> some proprietary Windows DLL to access the RFID pad.
> 
> Running the Java app on FreeBSD, the  JVM looks for the interface shared
> lib as 'libRFIDInterface.so' (on Windows as 'RFIDInterface.dll'), which
> ofcourse is not there. On Windows our 'RFIDInterface.dll' in turn
> uses the proprietary 'BiblioChip.dll' from a 3rd party to handle the
> requests to/from the RFID pad. As the 'libRFIDInterface.so' is not there the 
> JVM gives
> 
> java.lang.UnsatisfiedLinkError: 
> com.sisis.rfid.RFIDNativeInterface.BibOpenReader()
> ...
> 
> If there would be any OpenSource RFID reader software, I could write the
> required interface in C or C++ on top of its API.
> 
> Any ideas or comments on this?
> 
> Thanks
> 
>   matthias
> 
> -- 
> Matthias Apitz, ✉ g...@unixarea.de, ⌂ http://www.unixarea.de/   
> +49-176-38902045

I wrote some drivers for Impinj chipset, which are supposedly standard but I 
haven't tried with other chipsets.

Works great on Windows and I have a FreeBSD driver working. It should also work 
on Linux but I have some issue with the data coming in chunks, that I haven't 
spent time troubleshooting.

For USB I was using a serial-to-usb cable. If the device already has a USB 
connection it is probably using the same hardware as a serial-to-usb cable, I 
think there are only one or two mfgs that make the chipset for that. On FreeBSD 
and Windows machines I have used the drivers with a small RFID reader/writer as 
well as larger devices.

My drivers are based on 'stream reading' without using the buffer on the 
device, but it's easy to switch to buffered mode if you want. These devices do 
round-robin on the antennas if you have multiple antennas, it's not 
simultaneous. With buffered reading you do not get duplicates but you also do 
lose precision in the time that you are able to record the chip. stream-reading 
you will get a *bunch* of dups but much more granularity in reading.

I never published the software but I don't mind sharing, just have to dig it 
up. 

There are written in C++. I don't do java but as I recall I believe one issue 
is java does not support unsigned chars without some 'finangling' or a 
third-party driver, i think google has one.  And these devices totally operate 
with unsigned chars.


-- 
Waitman Gobble 
+1 650 621 0423
___
freebsd-usb@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"


Re: webcamd rejects audio/oss modules

2013-06-11 Thread Waitman Gobble
On Tue, 11 Jun 2013 09:23:29 +0200, Jože_Zobec jozze.z...@gmail.com wrote:


Yes, I built without snd_uaudio.ko.

In order to use the port audio/oss, I had to disable the sound.ko, so I had
to exclude it from the kernel, and add it as a module.

I agree, that snd_uaudio.ko brought improvements. I like it a lot. But
snd_hda.ko, which I use to listen to music make those scratchy sounds all
the time, where the music should be crystal clear.

I will try now with the GENERIC kernel, and the kernel without sound.ko,
and snd_hda.ko, but with snd_uaudio.ko enabled and see what will happen.



a note, and I have not got back to experimenting to get to the bottom of it,
.. but it seems using ports audio/oss with the presence of snd_uaudio in base
causes instant reboot when I plug in my usb mic. (installing audio/oss is
fine, it gets the tools for v4.2, but actually using the oss v4.2 drivers from
ports (instead of the oss 3.x drivers in base) works for my pci based sound
cards, but then plugging in a usb mic reboots the machine.)

Anyone else notice this behavior?

--
Waitman Gobble
San Jose California USA
+1.5108307875


___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org

Re: Need help in understanding USB driver

2013-03-14 Thread Waitman Gobble
aseem jolly aseem.jo...@gmail.com wrote ..
 I'm new to USB and need help in understanding USB driver.
 Any pointers to usb documentation would be really helpful or a mentor to
 help me come to pace would be the best.
 ___
 freebsd-usb@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/freebsd-usb
 To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org

Hi,

there's three drivers, enhanced (1.0) universal (2.0) and extensible (3.0). 
ehci, ohci, xhci
A great way to see how they work is to take a look at /usr/src/sys/dev/usb/ on 
your machine. 
But here's a link to the source directory on one of my 10.0-CURRENT machines, 
https://dx.burplex.com/src/sys/dev/usb/controller/ 
Also I've noticed a book on bn.com about FreeBSD drivers, it *might* be good, 
it's on my 'to buy and see if it's any good' list. Might check it out.

-- 
Waitman Gobble
San Jose California USA
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org

SDDR-289 slo-mo reboot

2013-01-20 Thread Waitman Gobble
Hi,

I have a SanDisk SDDR-289 hooked up through a pci-e interface card w/ VIA VL800 
chipset
With it plugged it, when I reboot it takes 5-6 minutes to shut down and 15 to 
come back up. 

Jan 18 20:58:20 kamira kernel: ugen0.4 (: SanDisk at usbus0
Jan 18 20:58:20 kamira kernel: umass2: Bulk-In, Bulk-Out, Interface on usbus0
Jan 18 20:58:20 kamira kernel: umass2:  SCSI over Bulk-Only; quirks = 0x4000
Jan 18 20:58:20 kamira kernel: umass2:7:2:-1: Attached to scbus7
Jan 18 20:58:20 kamira kernel: da2 at umass-sim2 bus 2 scbus7 target 0 lun 0
Jan 18 20:58:20 kamira kernel: da2: SanDisk uSD SDDR-289 1.00 Removable 
Direct Access SCSI-0 

I don't see this model listed in sys/dev/usb/usbdevs, or 
sys/dev/usb/quirk/usb_quirk.c
..not sure if the 'quirks = 0x4000' refers to something. (?) I have a hunch the 
problem is related to missing quirks, but I'm not sure.

# uname -a
FreeBSD kamira.waitman.net 9.1-RELEASE FreeBSD 9.1-RELEASE #3 r245537M: Sat Jan 
19 13:41:28 PST 2013 r...@kamira.waitman.net:/usr/obj/usr/src/sys/BURPLEX  
amd64

Any help/suggestions appreciated!

Thank you,

-- 
Waitman Gobble
San Jose California USA
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org

Re: SDDR-289 slo-mo reboot

2013-01-20 Thread Waitman Gobble
Hans Petter Selasky hsela...@c2i.net wrote ..
 On Sunday 20 January 2013 09:06:51 Waitman Gobble wrote:
  Hi,
  
  I have a SanDisk SDDR-289 hooked up through a pci-e interface card w/ VIA
  VL800 chipset With it plugged it, when I reboot it takes 5-6 minutes to
  shut down and 15 to come back up.
  
  Jan 18 20:58:20 kamira kernel: ugen0.4 (: SanDisk at usbus0
  Jan 18 20:58:20 kamira kernel: umass2: Bulk-In, Bulk-Out, Interface on
  usbus0 Jan 18 20:58:20 kamira kernel: umass2:  SCSI over Bulk-Only; quirks
  = 0x4000 Jan 18 20:58:20 kamira kernel: umass2:7:2:-1: Attached to scbus7
  Jan 18 20:58:20 kamira kernel: da2 at umass-sim2 bus 2 scbus7 target 0 lun
  0 Jan 18 20:58:20 kamira kernel: da2: SanDisk uSD SDDR-289 1.00
  Removable Direct Access SCSI-0
  
  I don't see this model listed in sys/dev/usb/usbdevs, or
  sys/dev/usb/quirk/usb_quirk.c ..not sure if the 'quirks = 0x4000' refers
  to something. (?) I have a hunch the problem is related to missing quirks,
  but I'm not sure.
  
  # uname -a
  FreeBSD kamira.waitman.net 9.1-RELEASE FreeBSD 9.1-RELEASE #3 r245537M: Sat
  Jan 19 13:41:28 PST 2013
  r...@kamira.waitman.net:/usr/obj/usr/src/sys/BURPLEX  amd64
 
 There is currently some automagic detection of quirks. You can try to add your
 device to the quirklist in sys/dev/usb/quirk/usb_quirk.c
 
 --HPS

Hi,

Thanks. I did try just to see what happens, but it seems i need to have the 
device listed in usbdev and I wasn't sure how to list it.

for example, an older product with the same brand name, but conceivably a 
different architecture:

in usb_quirk.c

USB_QUIRK(ONSPEC2, IMAGEMATE_SDDR55, 0x, 0x,
UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN),

and usbdevs
product ONSPEC2 IMAGEMATE_SDDR550xa103  ImageMate SDDR55

i'm not sure where i get this number:0xa103
and if that's all that is needed?


# usbconfig -u 0 -a 4 dump_curr_config_desc
ugen0.4: USB3.0 Card Reader SanDisk at usbus0, cfg=0 md=HOST spd=SUPER 
(5.0Gbps) pwr=ON


 Configuration index 0

bLength = 0x0009 
bDescriptorType = 0x0002 
wTotalLength = 0x002c 
bNumInterfaces = 0x0001 
bConfigurationValue = 0x0001 
iConfiguration = 0x0004  SDDR-289
bmAttributes = 0x0080 
bMaxPower = 0x0064 

Interface 0
  bLength = 0x0009 
  bDescriptorType = 0x0004 
  bInterfaceNumber = 0x 
  bAlternateSetting = 0x 
  bNumEndpoints = 0x0002 
  bInterfaceClass = 0x0008 
  bInterfaceSubClass = 0x0006 
  bInterfaceProtocol = 0x0050 
  iInterface = 0x0005  Bulk-In, Bulk-Out, Interface

 Endpoint 0
bLength = 0x0007 
bDescriptorType = 0x0005 
bEndpointAddress = 0x0001  OUT
bmAttributes = 0x0002  BULK
wMaxPacketSize = 0x0400 
bInterval = 0x 
bRefresh = 0x 
bSynchAddress = 0x 

  Additional Descriptor

  bLength = 0x06
  bDescriptorType = 0x30
  bDescriptorSubType = 0x03
   RAW dump: 
   0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00


 Endpoint 1
bLength = 0x0007 
bDescriptorType = 0x0005 
bEndpointAddress = 0x0082  IN
bmAttributes = 0x0002  BULK
wMaxPacketSize = 0x0400 
bInterval = 0x 
bRefresh = 0x 
bSynchAddress = 0x 

  Additional Descriptor

  bLength = 0x06
  bDescriptorType = 0x30
  bDescriptorSubType = 0x03
   RAW dump: 
   0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00



# usbconfig -u 0 -a 4 dump_device_desc
ugen0.4: USB3.0 Card Reader SanDisk at usbus0, cfg=0 md=HOST spd=SUPER 
(5.0Gbps) pwr=ON

  bLength = 0x0012 
  bDescriptorType = 0x0001 
  bcdUSB = 0x0300 
  bDeviceClass = 0x 
  bDeviceSubClass = 0x 
  bDeviceProtocol = 0x 
  bMaxPacketSize0 = 0x0009 
  idVendor = 0x0781 
  idProduct = 0xb6ba 
  bcdDevice = 0x0124 
  iManufacturer = 0x0001  SanDisk
  iProduct = 0x0002  USB3.0 Card Reader
  iSerialNumber = 0x0003  11150005027
  bNumConfigurations = 0x0001 


Thank you,


-- 
Waitman Gobble
San Jose California USA

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org

Re: SDDR-289 slo-mo reboot

2013-01-20 Thread Waitman Gobble
Waitman Gobble uzi...@da3m0n8t3r.com wrote ..
 Hans Petter Selasky hsela...@c2i.net wrote ..
  On Sunday 20 January 2013 09:06:51 Waitman Gobble wrote:
   Hi,
   
   I have a SanDisk SDDR-289 hooked up through a pci-e interface card w/ VIA
   VL800 chipset With it plugged it, when I reboot it takes 5-6 minutes to
   shut down and 15 to come back up.
   
   Jan 18 20:58:20 kamira kernel: ugen0.4 (: SanDisk at usbus0
   Jan 18 20:58:20 kamira kernel: umass2: Bulk-In, Bulk-Out, Interface on
   usbus0 Jan 18 20:58:20 kamira kernel: umass2:  SCSI over Bulk-Only; quirks
   = 0x4000 Jan 18 20:58:20 kamira kernel: umass2:7:2:-1: Attached to scbus7
   Jan 18 20:58:20 kamira kernel: da2 at umass-sim2 bus 2 scbus7 target 0 lun
   0 Jan 18 20:58:20 kamira kernel: da2: SanDisk uSD SDDR-289 1.00
   Removable Direct Access SCSI-0
   
   I don't see this model listed in sys/dev/usb/usbdevs, or
   sys/dev/usb/quirk/usb_quirk.c ..not sure if the 'quirks = 0x4000' refers
   to something. (?) I have a hunch the problem is related to missing quirks,
   but I'm not sure.
   
   # uname -a
   FreeBSD kamira.waitman.net 9.1-RELEASE FreeBSD 9.1-RELEASE #3 r245537M: 
   Sat
   Jan 19 13:41:28 PST 2013
   r...@kamira.waitman.net:/usr/obj/usr/src/sys/BURPLEX  amd64
  
  There is currently some automagic detection of quirks. You can try to add 
  your
  device to the quirklist in sys/dev/usb/quirk/usb_quirk.c
  
  --HPS
 
 Hi,
 
 Thanks. I did try just to see what happens, but it seems i need to have the 
 device
 listed in usbdev and I wasn't sure how to list it.
 
 for example, an older product with the same brand name, but conceivably a 
 different
 architecture:
 
 in usb_quirk.c
 
 USB_QUIRK(ONSPEC2, IMAGEMATE_SDDR55, 0x, 0x,
 UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN),
 
 and usbdevs
 product ONSPEC2 IMAGEMATE_SDDR550xa103  ImageMate SDDR55
 
 i'm not sure where i get this number:0xa103
 and if that's all that is needed?
 
 
 # usbconfig -u 0 -a 4 dump_curr_config_desc
 ugen0.4: USB3.0 Card Reader SanDisk at usbus0, cfg=0 md=HOST spd=SUPER 
 (5.0Gbps)
 pwr=ON
 
 
  Configuration index 0
 
 bLength = 0x0009 
 bDescriptorType = 0x0002 
 wTotalLength = 0x002c 
 bNumInterfaces = 0x0001 
 bConfigurationValue = 0x0001 
 iConfiguration = 0x0004  SDDR-289
 bmAttributes = 0x0080 
 bMaxPower = 0x0064 
 
 Interface 0
   bLength = 0x0009 
   bDescriptorType = 0x0004 
   bInterfaceNumber = 0x 
   bAlternateSetting = 0x 
   bNumEndpoints = 0x0002 
   bInterfaceClass = 0x0008 
   bInterfaceSubClass = 0x0006 
   bInterfaceProtocol = 0x0050 
   iInterface = 0x0005  Bulk-In, Bulk-Out, Interface
 
  Endpoint 0
 bLength = 0x0007 
 bDescriptorType = 0x0005 
 bEndpointAddress = 0x0001  OUT
 bmAttributes = 0x0002  BULK
 wMaxPacketSize = 0x0400 
 bInterval = 0x 
 bRefresh = 0x 
 bSynchAddress = 0x 
 
   Additional Descriptor
 
   bLength = 0x06
   bDescriptorType = 0x30
   bDescriptorSubType = 0x03
RAW dump: 
0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00
 
 
  Endpoint 1
 bLength = 0x0007 
 bDescriptorType = 0x0005 
 bEndpointAddress = 0x0082  IN
 bmAttributes = 0x0002  BULK
 wMaxPacketSize = 0x0400 
 bInterval = 0x 
 bRefresh = 0x 
 bSynchAddress = 0x 
 
   Additional Descriptor
 
   bLength = 0x06
   bDescriptorType = 0x30
   bDescriptorSubType = 0x03
RAW dump: 
0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00
 
 
 
 # usbconfig -u 0 -a 4 dump_device_desc
 ugen0.4: USB3.0 Card Reader SanDisk at usbus0, cfg=0 md=HOST spd=SUPER 
 (5.0Gbps)
 pwr=ON
 
   bLength = 0x0012 
   bDescriptorType = 0x0001 
   bcdUSB = 0x0300 
   bDeviceClass = 0x 
   bDeviceSubClass = 0x 
   bDeviceProtocol = 0x 
   bMaxPacketSize0 = 0x0009 
   idVendor = 0x0781 
   idProduct = 0xb6ba 
   bcdDevice = 0x0124 
   iManufacturer = 0x0001  SanDisk
   iProduct = 0x0002  USB3.0 Card Reader
   iSerialNumber = 0x0003  11150005027
   bNumConfigurations = 0x0001 
 
 
 Thank you,
 
 
 -- 
 Waitman Gobble
 San Jose California USA


OOPs, I think I answered my own question..

I put this in usbdevs, based on the output of usbconfig above.


product SANDISK IMAGEMATE_SDDR289   0xb6ba  ImageMate SDDR-289


then in 
usb_quirk.c

USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, 0x, 0x,
 UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY | UQ_MSC_NO_GETMAXLUN),


Not sure if it's correct but I think maybe a starting point to experiment.

Thanks,




-- 
Waitman Gobble
San Jose California USA

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org

Re: SDDR-289 slo-mo reboot

2013-01-20 Thread Waitman Gobble
Waitman Gobble uzi...@da3m0n8t3r.com wrote ..
 Waitman Gobble uzi...@da3m0n8t3r.com wrote ..
  Hans Petter Selasky hsela...@c2i.net wrote ..
   On Sunday 20 January 2013 09:06:51 Waitman Gobble wrote:
Hi,

I have a SanDisk SDDR-289 hooked up through a pci-e interface card w/ 
VIA
VL800 chipset With it plugged it, when I reboot it takes 5-6 minutes to
shut down and 15 to come back up.

Jan 18 20:58:20 kamira kernel: ugen0.4 (: SanDisk at usbus0
Jan 18 20:58:20 kamira kernel: umass2: Bulk-In, Bulk-Out, Interface on
usbus0 Jan 18 20:58:20 kamira kernel: umass2:  SCSI over Bulk-Only; 
quirks
= 0x4000 Jan 18 20:58:20 kamira kernel: umass2:7:2:-1: Attached to 
scbus7
Jan 18 20:58:20 kamira kernel: da2 at umass-sim2 bus 2 scbus7 target 0 
lun
0 Jan 18 20:58:20 kamira kernel: da2: SanDisk uSD SDDR-289 1.00
Removable Direct Access SCSI-0

I don't see this model listed in sys/dev/usb/usbdevs, or
sys/dev/usb/quirk/usb_quirk.c ..not sure if the 'quirks = 0x4000' refers
to something. (?) I have a hunch the problem is related to missing 
quirks,
but I'm not sure.

# uname -a
FreeBSD kamira.waitman.net 9.1-RELEASE FreeBSD 9.1-RELEASE #3 r245537M: 
Sat
Jan 19 13:41:28 PST 2013
r...@kamira.waitman.net:/usr/obj/usr/src/sys/BURPLEX  amd64
   
   There is currently some automagic detection of quirks. You can try to add 
   your
   device to the quirklist in sys/dev/usb/quirk/usb_quirk.c
   
   --HPS
  
  Hi,
  
  Thanks. I did try just to see what happens, but it seems i need to have the 
  device
  listed in usbdev and I wasn't sure how to list it.
  
  for example, an older product with the same brand name, but conceivably a 
  different
  architecture:
  
  in usb_quirk.c
  
  USB_QUIRK(ONSPEC2, IMAGEMATE_SDDR55, 0x, 0x,
  UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN),
  
  and usbdevs
  product ONSPEC2 IMAGEMATE_SDDR550xa103  ImageMate SDDR55
  
  i'm not sure where i get this number:0xa103
  and if that's all that is needed?
  
  
  # usbconfig -u 0 -a 4 dump_curr_config_desc
  ugen0.4: USB3.0 Card Reader SanDisk at usbus0, cfg=0 md=HOST spd=SUPER 
  (5.0Gbps)
  pwr=ON
  
  
   Configuration index 0
  
  bLength = 0x0009 
  bDescriptorType = 0x0002 
  wTotalLength = 0x002c 
  bNumInterfaces = 0x0001 
  bConfigurationValue = 0x0001 
  iConfiguration = 0x0004  SDDR-289
  bmAttributes = 0x0080 
  bMaxPower = 0x0064 
  
  Interface 0
bLength = 0x0009 
bDescriptorType = 0x0004 
bInterfaceNumber = 0x 
bAlternateSetting = 0x 
bNumEndpoints = 0x0002 
bInterfaceClass = 0x0008 
bInterfaceSubClass = 0x0006 
bInterfaceProtocol = 0x0050 
iInterface = 0x0005  Bulk-In, Bulk-Out, Interface
  
   Endpoint 0
  bLength = 0x0007 
  bDescriptorType = 0x0005 
  bEndpointAddress = 0x0001  OUT
  bmAttributes = 0x0002  BULK
  wMaxPacketSize = 0x0400 
  bInterval = 0x 
  bRefresh = 0x 
  bSynchAddress = 0x 
  
Additional Descriptor
  
bLength = 0x06
bDescriptorType = 0x30
bDescriptorSubType = 0x03
 RAW dump: 
 0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00
  
  
   Endpoint 1
  bLength = 0x0007 
  bDescriptorType = 0x0005 
  bEndpointAddress = 0x0082  IN
  bmAttributes = 0x0002  BULK
  wMaxPacketSize = 0x0400 
  bInterval = 0x 
  bRefresh = 0x 
  bSynchAddress = 0x 
  
Additional Descriptor
  
bLength = 0x06
bDescriptorType = 0x30
bDescriptorSubType = 0x03
 RAW dump: 
 0x00 | 0x06, 0x30, 0x03, 0x00, 0x00, 0x00
  
  
  
  # usbconfig -u 0 -a 4 dump_device_desc
  ugen0.4: USB3.0 Card Reader SanDisk at usbus0, cfg=0 md=HOST spd=SUPER 
  (5.0Gbps)
  pwr=ON
  
bLength = 0x0012 
bDescriptorType = 0x0001 
bcdUSB = 0x0300 
bDeviceClass = 0x 
bDeviceSubClass = 0x 
bDeviceProtocol = 0x 
bMaxPacketSize0 = 0x0009 
idVendor = 0x0781 
idProduct = 0xb6ba 
bcdDevice = 0x0124 
iManufacturer = 0x0001  SanDisk
iProduct = 0x0002  USB3.0 Card Reader
iSerialNumber = 0x0003  11150005027
bNumConfigurations = 0x0001 
  
  
  Thank you,
  
  
  -- 
  Waitman Gobble
  San Jose California USA
 
 
 OOPs, I think I answered my own question..
 
 I put this in usbdevs, based on the output of usbconfig above.
 
 
 product SANDISK IMAGEMATE_SDDR289 0xb6ba  ImageMate SDDR-289
 
 
 then in 
 usb_quirk.c
 
 USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, 0x, 0x,
  UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY | UQ_MSC_NO_GETMAXLUN),
 
 
 Not sure if it's correct but I think maybe a starting point to experiment.
 
 Thanks,
 
 
 
 

The UQ_MSC_NO_INQUIRY makes it crash bad, but removing NO_INQUIRY

usb/175454: update usbdevs and usb_quirk.c for SanDisk SDDR-289

2013-01-20 Thread Waitman Gobble

Number: 175454
Category:   usb
Synopsis:   update usbdevs and usb_quirk.c for SanDisk SDDR-289
Confidential:   no
Severity:   non-critical
Priority:   low
Responsible:freebsd-usb
State:  open
Quarter:
Keywords:   
Date-Required:
Class:  update
Submitter-Id:   current-users
Arrival-Date:   Sun Jan 20 17:10:00 UTC 2013
Closed-Date:
Last-Modified:
Originator: Waitman Gobble
Release:FreeBSD 9.1-RELEASE
Organization:
Waitman Gobble
Environment:
FreeBSD kamira.waitman.net 9.1-RELEASE FreeBSD 9.1-RELEASE #5 r245537M: Sun Jan 
20 08:45:56 PST 2013 r...@kamira.waitman.net:/usr/obj/usr/src/sys/BURPLEX  
amd64

Description:
With a SanDisk ImageMate SDDR-289 usb 3.0 card reader attached to the computer, 
a reboot takes over 20 minutes. Shutdown is about 5 minutes, boot up is about 
15. 

Adding the device to usbdevs and updating the quirks totally solves the reboot 
issue.

# usbconfig -u 0 -a 4 dump_device_desc
ugen0.4: USB3.0 Card Reader SanDisk at usbus0, cfg=0 md=HOST spd=SUPER 
(5.0Gbps) pwr=ON

   bLength = 0x0012 
   bDescriptorType = 0x0001 
   bcdUSB = 0x0300 
   bDeviceClass = 0x 
   bDeviceSubClass = 0x 
   bDeviceProtocol = 0x 
   bMaxPacketSize0 = 0x0009 
   idVendor = 0x0781 
   idProduct = 0xb6ba 
   bcdDevice = 0x0124 
   iManufacturer = 0x0001  SanDisk
   iProduct = 0x0002  USB3.0 Card Reader
   iSerialNumber = 0x0003  11150005027
   bNumConfigurations = 0x0001 

How-To-Repeat:

Fix:

1) add to sys/dev/usb/usbdevs:

product SANDISK IMAGEMATE_SDDR289   0xb6ba  ImageMate SDDR-289


2) add to sys/dev/usb/quirk/usb_quirk.c

USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, 0x, 0x,
UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_GETMAXLUN),


thank you.




Release-Note:
Audit-Trail:
Unformatted:
___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org


Re: SDDR-289 slo-mo reboot

2013-01-20 Thread Waitman Gobble
Hans Petter Selasky hsela...@c2i.net wrote ..
 On Sunday 20 January 2013 18:05:46 Waitman Gobble wrote:
   USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, 0x, 0x,
  
UQ_MSC_FORCE_PROTO_SCSI, UQ_MSC_NO_INQUIRY | UQ_MSC_NO_GETMAXLUN),
 
 Can you try this:
 
 USB_QUIRK(SANDISK, IMAGEMATE_SDDR289, 0x, 0x, UQ_MSC_NO_INQUIRY, 
 UQ_MSC_NO_GETMAXLUN),
 
 There should be a , and not |.
 
 --HPS



Hi,
I noticed that on another line and thought it was valid.

For example, a different device in sys/dev/usb/quirk/usb_quirk.c:

USB_QUIRK(ONSPEC, UCF100, 0x, 0x, UQ_MSC_FORCE_WIRE_BBB,
UQ_MSC_FORCE_PROTO_ATAPI, UQ_MSC_NO_INQUIRY | UQ_MSC_NO_GETMAXLUN),


Anyway, I removed the UQ_MSC_NO_INQUIRY from the SDDR189 quirk and it seems to 
work, at least the boot problem is solved.

Thank you,



-- 
Waitman Gobble
San Jose California USA

___
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to freebsd-usb-unsubscr...@freebsd.org

usb/171262: plug in sdhc via usb reader reboots machine

2012-09-02 Thread Waitman Gobble

Number: 171262
Category:   usb
Synopsis:   plug in sdhc via usb reader reboots machine
Confidential:   no
Severity:   non-critical
Priority:   low
Responsible:freebsd-usb
State:  open
Quarter:
Keywords:   
Date-Required:
Class:  sw-bug
Submitter-Id:   current-users
Arrival-Date:   Sun Sep 02 21:10:11 UTC 2012
Closed-Date:
Last-Modified:
Originator: Waitman Gobble
Release:FreeBSD 9.1-RC1
Organization:
Waitman Gobble
Environment:
FreeBSD kamira.waitman.net 9.1-RC1 FreeBSD 9.1-RC1 #0: Tue Aug 14 04:25:06 UTC 
2012 r...@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64

Description:
was dumping sdhc cards to ntfs-3g mounted usb drive (8 cards successfully, then 
inserting 9th card rebooted machine) 

this in logs 45 times:

Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)

(then machine reboot.)

full log starting from insert:



Sep  3 04:36:54 kamira kernel: ugen1.2: Generic at usbus1
Sep  3 04:36:54 kamira kernel: umass1: Generic USB Storage, class 0/0, rev 
2.00/2.07, addr 2 on usbus1
Sep  3 04:36:54 kamira kernel: umass1:  SCSI over Bulk-Only; quirks = 0x4100
Sep  3 04:36:54 kamira kernel: umass1:6:1:-1: Attached to scbus6
Sep  3 04:36:54 kamira kernel: da1 at umass-sim1 bus 1 scbus6 target 0 lun 0
Sep  3 04:36:54 kamira kernel: da1: Generic STORAGE DEVICE 0207 Removable 
Direct Access SCSI-0 device 
Sep  3 04:36:54 kamira kernel: da1: 40.000MB/s transfers
Sep  3 04:36:54 kamira kernel: da1: 15287MB (31307776 512 byte sectors: 255H 
63S/T 1948C)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): WRITE(10). CDB: 2a 0 0 0 
22 28 0 0 8 0 
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): CAM status: SCSI Status 
Error
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI status: Check 
Condition
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): Retrying command (per 
sense data)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): WRITE(10). CDB: 2a 0 0 0 
22 28 0 0 8 0 
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): CAM status: SCSI Status 
Error
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI status: Check 
Condition
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): Retrying command (per 
sense data)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): WRITE(10). CDB: 2a 0 0 0 
22 28 0 0 8 0 
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): CAM status: SCSI Status 
Error
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI status: Check 
Condition
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): Retrying command (per 
sense data)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): WRITE(10). CDB: 2a 0 0 0 
22 28 0 0 8 0 
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): CAM status: SCSI Status 
Error
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI status: Check 
Condition
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): Retrying command (per 
sense data)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): WRITE(10). CDB: 2a 0 0 0 
22 28 0 0 8 0 
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): CAM status: SCSI Status 
Error
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI status: Check 
Condition
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): Error 5, Retries 
exhausted
Sep  3 04:36:59 kamira kernel: g_vfs_done():da1s1[WRITE(offset=282624, 
length=4096)]error = 5
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): WRITE(10). CDB: 2a 0 0 0 
22 28 0 0 8 0 
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): CAM status: SCSI Status 
Error
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI status: Check 
Condition
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): Retrying command (per 
sense data)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): WRITE(10). CDB: 2a 0 0 0 
22 28 0 0 8 0 
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): CAM status: SCSI Status 
Error
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI status: Check 
Condition
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): SCSI sense: HARDWARE 
FAILURE asc:4b,0 (Data phase error)
Sep  3 04:36:59 kamira kernel: (da1:umass-sim1:1:0:0): Retrying command (per 
sense data