Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: USB umass hard drive "failed to create xfers" when attaching



On 19/03/2020 07:05, sc.dying%gmail.com@localhost wrote:
> On 2020/02/17 21:33, Nick Hudson wrote:

[snip]

>> xhci could do better and support multiple DMA segments, but uvm could
>> also help.
>
> To access each DMA segment in usb_dma_t *dma, should it be processed
> like this?
>
> for (i = 0; i < dma->udma_block->nsegs; i++) {
> 	bus_dma_segment_t *ds = &dma->udma_block->map->dm_segs[i];
>
> 	process_segment(ds->ds_addr, ds->ds_len);
> }

I started looking into this and have some changes to fix [ou]hci.
xhci and dwc2 seem to be a bit harder.

http://src.illumos.org/source/xref/netbsd-src/sys/dev/usb/ehci.c#3011

Is how ehci currently does it.

Nick


Home | Main Index | Thread Index | Old Index