Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 2 Oct 2014 20:50:30 -0400
From:      "O'Connor, Daniel" <Daniel.O'Connor@emc.com>
To:        "O'Connor, Daniel" <Daniel.O'Connor@emc.com>
Cc:        Adrian Chadd <adrian@freebsd.org>, =?Windows-1252?Q?Jos=E9_P=E9rez_Arauzo?= <fbl@aoek.com>, FreeBSD Current <freebsd-current@freebsd.org>, Benjamin Kaduk <kaduk@mit.edu>, Garrett Cooper <yaneurabeya@gmail.com>
Subject:   Re: What do you use for kernel debugging?
Message-ID:  <18C885A5-5162-4868-8A1A-DDBC7A92CCF5@emc.com>
In-Reply-To: <3718AED6-9514-49F9-AF11-B47CFAF01161@emc.com>
References:  <20140928071641.M7664@beckpeccoz.com> <alpine.GSO.1.10.1409281553060.21571@multics.mit.edu> <20140929003358.M78145@aoek.com> <B3589A0F-AF06-4F7D-80C9-F614CFA21370@gmail.com> <542AC1C8.9030101@freebsd.org> <90CE0701-F1CB-41DF-B3D2-87816DC03DF9@emc.com> <CAJ-VmomrTiyUBr%2BpwtRjcUAanwRBDhvMr65rXFpw9nUkFFYm0A@mail.gmail.com> <3718AED6-9514-49F9-AF11-B47CFAF01161@emc.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On 1 Oct 2014, at 15:54, O'Connor, Daniel <Daniel.O'Connor@emc.com> wrote:
> On 1 Oct 2014, at 14:33, Adrian Chadd <adrian@freebsd.org> wrote:
>> There's also something for XHCI.
>=20
> So I see..
>=20
> 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
>=20
> Interestingly unlike the EHCI version it does not require hardware betwee=
n the debugger and debugee, only a special cable. (see http://msdn.microsof=
t.com/en-us/library/windows/hardware/hh439372(v=3Dvs.85).aspx)

I wrote a quick program to dump xHCI extended capabilities https://gist.git=
hub.com/DanielO/c42819ae69a1f680039a

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=3D0x0c0330 card=3D0x077815ad chip=3D0x077815ad rev=
=3D0x00 hdr=3D0x00
    bar   [10] =3D type Memory, range 64, base 0xfd4c0000, size 131072, ena=
bled

root@foo:~ # ./xhcicap 0xfd4c0000
HCCPARAMS1 =3D> 0x0388f283
xECP (0xfd4c0e20) =3D> ID 2 (Supported protocol) Specific 0x0300
xECP (0xfd4c0e23) =3D> 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 USB=
3) which has 2 USB3 controllers - one on the Intel chipset, the other an Et=
ron EJ168. It shows..

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

Etron..
HCCPARAMS1 =3D> 0x040050af
xECP (0xf7c01000) =3D> 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 =91supported protocol=92 entry).

Regards,
	Daniel O=92Connor

Senior Software Engineer
Isilon Platforms Team






Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?18C885A5-5162-4868-8A1A-DDBC7A92CCF5>