SCSI Error while performing synchronize cache 10 request USB/umass

2014-01-14 Thread aseem.jolly
Saw a following error message on the console. Believe that synchronize cache 10 request returned 'check condition' and we sent a SCSI sense request which returned Error code '0x4b' (da0:umass-sim0:0:0:0): SYNCHRONIZE CACHE(10). CDB: 35 0 0 0 0 0 0 0 0 0 (da0:umass-sim0:0:0:0): SCSI sense: Error

Re: USB device configuration

2013-10-10 Thread aseem.jolly
It is allowed to set the configuration multiple times. Refer to USB 2.0 specification. In what possible scenario would we want to set the configuration again? I know USB 2.0 specification allows it. I have also tried to modify the code and have sent SET_CONFIGURATION request to the device

Re: USB device configuration

2013-10-09 Thread aseem.jolly
I couldn't really get the meaning of the following Anyhow, if a second configure event fails after a successful one, we are still in the configured state. Are we making the following change done: if (err) unconfigure(); else usb_set_device_state(udev,

USB device configuration

2013-10-08 Thread aseem.jolly
In usb_device_alloc function, after putting the device into powered state. We try to select configuration 1(default configuration of most of the USB devices) by calling *usbd_set_config_index* In *usb_set_config_index*, we check for power requirements, then make a request to the device to select

Re: USB DMA memory Allocation

2013-08-11 Thread aseem.jolly
if (EHCI_HCC_64BIT(cparams)) { DPRINTF(HCC uses 64-bit structures\n); /* MUST clear segment register if 64 bit capable */ EWRITE4(sc, EHCI_CTRLDSSEGMENT, 0); } sc-sc_bus.usbrev = USB_REV_2_0; /* Reset the controller

Re: USB DMA memory Allocation

2013-08-11 Thread aseem.jolly
After making the above said changes, I ran into another problem Root mount waiting for: usbus0 ehci_timeout: xfer=0xff8001e6c148 ehci_device_done: xfer=0xff8001e6c148, endpoint=0xff001fef28f8, error=20 ehci_device_done: xfer=0xff8001e6c148, endpoint=0xff001fef28f8, error=5

Re: USB DMA memory Allocation

2013-08-10 Thread aseem.jolly
I'm trying to allocate memory from 4GB-8GB range and have modified the memory structure(QH,iTD etc) to support 64 bit addressing. I am constantly hitting the following issues and I am not sure about the exact meaning of the error message(timed out waiting for BIOS). ehci1: [ITHREAD] usbus0:

Re: USB DMA memory Allocation

2013-08-06 Thread aseem.jolly
I have gone through EHCI specification(was pretty long so couldn't finish it though) and below is what that I have understood. Control Data Structure Segment Register 'CTRLDSSEGMENT', This register allows the host software to locate all control data structures within the same 4 Gigabyte memory

RE: USB DMA memory Allocation

2013-08-05 Thread aseem.jolly
I don't want to play around with 'kern.maxbcache', can we actually allow driver to support 64 bit DMA? In future we can use a bootarg/sysctl to enable this support if someone comes across this issue else we will use 32 bit DMA allocations. I am willing to enable this support, please guide me.

RE: USB DMA memory Allocation

2013-08-03 Thread aseem.jolly
I am getting the following error 'USB_ERR_NOMEM' when I try to allocate DMA memrory from [0 4GB] range, I have to enable 64 bit memory allocation. Can you please briefly explain what I need to do to enable this support? -- View this message in context:

USB DMA memory Allocation

2013-08-02 Thread aseem.jolly
It seems to me that Intel ehci controller supports 64 DMA address lines (HCCPARAMS register's 0 bit is set hardwired) then why do force DMA allocation from [0 4GB] range. I tried to enable 64 bit DMA allocations by modifying call to 'usb_dma_tag_setup' in usb_controller.c and usb_transfer.c but