Re: Android 2.2 umass -> da failure

2010-12-24 Thread Adam Vande More
On Fri, Dec 24, 2010 at 4:26 AM, Alexander Motin  wrote:

> Phrase "SCSI sense: Error code 0x72" means that device returned sense
> data in "descriptor" format. As I can see, our code supports only
> "fixed" format. As kind of dirty hack, this patch should probably help:
>

Yes, this allows the daX device creation to finish properly and removed the
requirement to quickly hit "Turn on USB Storage".

Thanks.

I also see that "true > /dev/da0" is the recommended way to retaste the
device.  Simple enough I guess.

-- 
Adam Vande More
___
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: Android 2.2 umass -> da failure

2010-12-24 Thread Alexander Motin
Hans Petter Selasky wrote:
> On Friday 24 December 2010 07:21:57 Adam Vande More wrote:
>> On Thu, Dec 23, 2010 at 10:34 PM, Adam Vande More 
> wrote:
>>> Additional info
>>>
>>> It seems have something to do with how fast your at pressing the "Turn on
>>> USB Storage" on the Android interface.  After connecting the usb device,
>>> if you wait a couple of seconds before pressing "Turn on USB Storage"
>>> button you won't be able to get a /dev/daX.  camcontrol functions don't
>>> seem to work to get a /dev/daX either, a physical unplug, plug-in,
>>> quickly press the button is the only way I've found to mount the device.
>> Also the partition table doesn't seem to be correctly recognized after
>> this.  Only /dev/da0 is present, not /dev/da0s1  Once I preform an action
>> on /dev/da0 then the slice is seen.  This there a way to automate this
>> tasting?
> 
> Can you try 9-current. I think there might be a fix for this issue there.

That patch was merged to 8-STABLE. This is different problem.

Phrase "SCSI sense: Error code 0x72" means that device returned sense
data in "descriptor" format. As I can see, our code supports only
"fixed" format. As kind of dirty hack, this patch should probably help:

--- scsi_da.c.prev  2010-10-24 21:53:16.0 +0300
+++ scsi_da.c   2010-12-24 12:25:03.0 +0200
@@ -1763,6 +1763,10 @@ dadone(struct cam_periph *periph, union
"size failed: %s, %s",
sense_key_desc,
asc_desc);
+   } else if ((have_sense) &&
+   (error_code == 0x72)) {
+   scsi_sense_print(
+   &done_ccb->csio);
} else {
if (have_sense)
scsi_sense_print(


-- 
Alexander Motin
___
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: Android 2.2 umass -> da failure

2010-12-24 Thread Hans Petter Selasky
On Friday 24 December 2010 07:21:57 Adam Vande More wrote:
> On Thu, Dec 23, 2010 at 10:34 PM, Adam Vande More 
wrote:
> > Additional info
> > 
> > It seems have something to do with how fast your at pressing the "Turn on
> > USB Storage" on the Android interface.  After connecting the usb device,
> > if you wait a couple of seconds before pressing "Turn on USB Storage"
> > button you won't be able to get a /dev/daX.  camcontrol functions don't
> > seem to work to get a /dev/daX either, a physical unplug, plug-in,
> > quickly press the button is the only way I've found to mount the device.
> 
> Also the partition table doesn't seem to be correctly recognized after
> this.  Only /dev/da0 is present, not /dev/da0s1  Once I preform an action
> on /dev/da0 then the slice is seen.  This there a way to automate this
> tasting?

Can you try 9-current. I think there might be a fix for this issue there.

--HPS
___
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: Android 2.2 umass -> da failure

2010-12-23 Thread Adam Vande More
On Thu, Dec 23, 2010 at 10:34 PM, Adam Vande More wrote:

> Additional info
>
> It seems have something to do with how fast your at pressing the "Turn on
> USB Storage" on the Android interface.  After connecting the usb device, if
> you wait a couple of seconds before pressing "Turn on USB Storage" button
> you won't be able to get a /dev/daX.  camcontrol functions don't seem to
> work to get a /dev/daX either, a physical unplug, plug-in, quickly press the
> button is the only way I've found to mount the device.
>

Also the partition table doesn't seem to be correctly recognized after
this.  Only /dev/da0 is present, not /dev/da0s1  Once I preform an action on
/dev/da0 then the slice is seen.  This there a way to automate this tasting?

-- 
Adam Vande More
___
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"


Android 2.2 umass -> da failure

2010-12-23 Thread Adam Vande More
I'm having some trouble get my android phone's usb storage to work.  It did
work at first and I was able to mount the SD card and transfer files.
Something has changed however and I'm not sure what.  Here's a dmesg from a
failed attempt to assign the device:

 ugen1.4:  at usbus1
umass0:  on usbus1
umass0:  SCSI over Bulk-Only; quirks = 0x
umass0:8:0:-1: Attached to scbus8
(probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0
(probe0:umass-sim0:0:0:0): CAM status: SCSI Status Error
(probe0:umass-sim0:0:0:0): SCSI status: Check Condition
(probe0:umass-sim0:0:0:0): SCSI sense: ILLEGAL REQUEST asc:24,0 (Invalid
field in CDB)
(da0:umass-sim0:0:0:0): READ CAPACITY(10). CDB: 25 0 0 0 0 0 0 0 0 0
(da0:umass-sim0:0:0:0): SCSI sense: Error code 0x72
(da0:umass-sim0:0:0:0): fatal error, failed to attach to device
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry

FreeBSD 8.2-PRERELEASE #5: Thu Nov 25 19:14:00 CST 2010
a...@galacticdominator.com:/usr/obj/usr/src/sys/GENERIC  amd64

So as you can see no /dev/da0 is created, although a /dev/passX is.  I've
got two micro SD cards and both result in the same current symptoms.

Perhaps a quirk is needed?  I can handle the quirks file well enough to add
one, but I don't have the knowledge to know if that is the problem or what
particular quirk can resolve it.

My usb device is as follows:

galacticdominator# usbconfig -u 1 -a 4 dump_device_desc
ugen1.4:  at usbus1, cfg=0
md=HOST spd=HIGH (480Mbps) pwr=ON

  bLength = 0x0012
  bDescriptorType = 0x0001
  bcdUSB = 0x0200
  bDeviceClass = 0x
  bDeviceSubClass = 0x
  bDeviceProtocol = 0x
  bMaxPacketSize0 = 0x0040
  idVendor = 0x1004
  idProduct = 0x61cc
  bcdDevice = 0x0100
  iManufacturer = 0x0003  
  iProduct = 0x0002  
  iSerialNumber = 0x0001  
  bNumConfigurations = 0x0001

---

Additional info

It seems have something to do with how fast your at pressing the "Turn on
USB Storage" on the Android interface.  After connecting the usb device, if
you wait a couple of seconds before pressing "Turn on USB Storage" button
you won't be able to get a /dev/daX.  camcontrol functions don't seem to
work to get a /dev/daX either, a physical unplug, plug-in, quickly press the
button is the only way I've found to mount the device.

-- 
Adam Vande More
___
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"