On Tue, Jul 20, 2010 at 08:18:26PM +0530, Ramya Desai wrote: > Dear Sarah, > > I am seeing an issue when trying to transfer data over IN endpoint > with TAG (stream_id) value greater than or equal to 16. The device and > driver is working fine for the TAG values from 1 to 15 without any > issues. What sort of issue? Like the transfer never being completed or what? > I have made sure to allocate 31 streams for the endpoint. When I dig > into the xHCI sources, I found that it submitted the data to the host > controller with TAG value as 16 (i.e. I saw the stream id as 16 in > functions xhci_urb_enqueue(), xhci_queue_bulk_tx(), > xhci_triad_to_transfer_ring(), xhci_stream_id_ring() etc) for that URB > data. > > Here my question is, is there any configuration that is required for > supporting the stream id >15 for a particular endpoint as we are able > to transfer with the same stream id with other endpoints? We verified > the HCC PARAMS and it shows the value 4 in bits 15:12 Maximum Primary > Stream Array Size (MaxPSASize). The bits 14:10 Max Primary Streams > (MaxPStreams) in endpoint context also showing 4. Ok, that means the primary stream array size = 2^(max PSA size + 1) = 2^(4+1) = 2^5 = 32 stream context entries (minus the entry for stream 0, of course). So the host should be able to support more than 15 streams. Can you send me the lsusb -vvv for your device? Sarah Sharp -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html