On 1 Oct 2014, at 15:54, O'Connor, Daniel <Daniel.O'con...@emc.com> wrote:
> On 1 Oct 2014, at 14:33, Adrian Chadd <adr...@freebsd.org> wrote:
>> There's also something for XHCI.
> So I see..
> Section 7.6 in here has details..
> http://www.intel.com.au/content/dam/www/public/us/en/documents/technical-specifications/extensible-host-controler-interface-usb-xhci.pdf
> Interestingly unlike the EHCI version it does not require hardware between 
> the debugger and debugee, only a special cable. (see 
> http://msdn.microsoft.com/en-us/library/windows/hardware/hh439372(v=vs.85).aspx)

I wrote a quick program to dump xHCI extended capabilities 

Run pciconf -lb and look for the base value for xhciX then run the command with 
that like so..
xhci0@pci0:3:0:0:       class=0x0c0330 card=0x077815ad chip=0x077815ad rev=0x00 
    bar   [10] = type Memory, range 64, base 0xfd4c0000, size 131072, enabled

root@foo:~ # ./xhcicap 0xfd4c0000
HCCPARAMS1 => 0x0388f283
xECP (0xfd4c0e20) => ID 2 (Supported protocol) Specific 0x0300
xECP (0xfd4c0e23) => ID 3 (Extended PM) Specific 0x4253
(this is a VMWare Fusion guest with USB3 enabled)

I ran it on Gigabyte Z77-D3H board (only real hardware I had handy with USB3) 
which has 2 USB3 controllers - one on the Intel chipset, the other an Etron 
EJ168. It shows..

HCCPARAMS1 => 0x20007181
xECP (0xf7f08000) => ID 2 (Supported protocol) Specific 0x200
xECP (0xf7f08008) => ID 1 (Legacy support) Specific 0x3001

HCCPARAMS1 => 0x040050af
xECP (0xf7c01000) => ID 1 (Legacy support) Specific 0x0000

Neither support debugging (and according to the spec the later is broken as it 
is supposed to have at least one ‘supported protocol’ entry).

        Daniel O’Connor

Senior Software Engineer
Isilon Platforms Team

freebsd-current@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to