[OmniOS-discuss] Fwd: [developer] xhci (USB 3.0) development snapshot

Dan McDonald danmcd at omniti.com
Sun Aug 28 21:30:59 UTC 2016


If people want an OmniOS bloody version of this, please speak up.

Dan

Sent from my iPhone (typos, autocorrect, and all)

Begin forwarded message:

> From: "Robert Mustacchi" <rm at joyent.com>
> Date: August 28, 2016 at 4:31:20 PM EDT
> To: illumos Developer <developer at lists.illumos.org>
> Subject: [developer] xhci (USB 3.0) development snapshot
> Reply-To: developer at lists.illumos.org
> 
> Hi,
> 
> A few folks have asked me about a development snapshot of the xhci
> driver and USB 3.0 support in the system. I've put together a token
> webrev that snapshots where we are right now. Note, this is still highly
> developmental. I wouldn't use it really. I would expect it to panic your
> system.
> 
> What works:
> - USB 2 hubs (nested or otherwise)
> - USB 3 hubs (nested or otherwise)
> - Various USB 2 storage devices
> - Various USB 3 storage devices
> - Various USB HID devices
> - Various USB NICs
> - Hotplugging and removal of all of the above
> 
> As a part of this, I had to put together some new changes for the DDI
> for USB client drivers so they'd properly work with USB 3.x devices.
> This has been designed for both USB 3.0 and already is designed such
> that for USB 3.1, it'll be a fairly simple change and rebuild, without
> drivers having to change again. There's a brief write up here:
> https://us-east.manta.joyent.com/rmustacc/public/webrevs/xhci/ddi.
> Though the manual pages and the like in the source tree should give a
> reasonable example.
> 
> There are also some private CLI tools that can be used to interrogate a
> bit of additional state as well some enhancements to the hub driver to
> better improve debugability.
> 
> I've improved the ::prtusb dcmd to know what version everything is
> running at. So if you're trying to see if your USB 3 devices are being
> detected as USB 3 devices, run something like the following:
> 
> # mdb -k
> mdb -k
> :Loading modules: [ unix genunix specfs dtrace mac cpu.generic uppc apix
> scsi_vhci ufs ip hook neti sockfs arp usba stmf_sbd stmf zfs mm lofs idm
> sata random cpc logindmux ptm sppp nfs sd i40e ]
>> ::prtusb
> INDEX   DRIVER      INST  NODE          GEN  VID.PID     PRODUCT
> 
> 1       xhci        0     pci15d9,806   3.0  0000.0000   No Product String
> 2       hubd        0     hub           2.1  2109.2813   USB2.0 Hub
> 
> 3       hubd        1     hub           2.0  0000.0001   No Product String
> 4       scsa2usb    0     storage       2.0  0781.5530   Cruzer
> 5       hubd        2     hub           3.0  2109.0813   USB3.0 Hub
> 
> 6       hubd        3     hub           2.1  05e3.0610   USB2.0 Hub
> 7       hubd        4     hub           3.0  05e3.0616   USB3.0 Hub
> 8       usb_mid     0     device        1.1  0557.2419   No Product String
> 9       hubd        5     hub           2.0  05e3.0608   USB2.0 Hub
> a       scsa2usb    1     storage       3.0  13fe.5200   Patriot Memory
> b       scsa2usb    2     storage       3.0  05dc.a838   USB Flash Drive
> c       axf         0     device        2.0  0b95.7720   AX88772
> d       axf         1     device        2.0  05ac.1402   Apple USB
> Ethernet Adapter
> 
> The GEN column has the speed of the device.
> 
> What's next:
> - Isochronous transfers (for USB audio)
> - Lots of clean up and robustness (timeouts, fm tests, etc.)
> - Testing with some additional PCIe USB 3.x cards and mdb dmod improvements
> - Lots of comments and big theory statements explaining how everything
> works, along with general cstyle, lint, packing, license files, etc.
> - More documentation for the usba hcdi interface for whomever is here next
> 
> When we get that next round of clean up and features solid, I'll have
> something that's ready for broader testing and I'll work with various
> distros to get images for broader testing. So at this point, this is
> really for those who like a good panic.
> 
> https://us-east.manta.joyent.com/rmustacc/public/webrevs/xhci/index.html
> 
> If you have questions, comments, or panics, please reach out to me here
> or on freenode in #illumos.
> 
> Robert
> 
> 
> -------------------------------------------
> illumos-developer
> Archives: https://www.listbox.com/member/archive/182179/=now
> RSS Feed: https://www.listbox.com/member/archive/rss/182179/21175029-813097db
> Modify Your Subscription: https://www.listbox.com/member/?member_id=21175029&id_secret=21175029-471fe0d4
> Powered by Listbox: http://www.listbox.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://omniosce.org/ml-archive/attachments/20160828/1ba4ba6c/attachment.html>


More information about the OmniOS-discuss mailing list