Re: APU2 Internal USB Headers Not Working

2016-10-06 Thread Sam Vaughan
> > $ dmesg | egrep -i 'hci|hub|usb'
>
> Please don't trim things. Full dmesg, full pcidump (preferably -vxx).
> Or better, run sendbug as root which includes acpi tables in the mail
> it produces (the latter is not presently working in -current, but since
> you're running 6.0 you won't run into that).

Sorry.  I was trying to keep the noise down and wasn’t sure that it
qualified as a bug.  Will know for next time.  Full report posted just
now using sendbug.

Thanks Stuart,

Sam



Re: APU2 Internal USB Headers Not Working

2016-10-06 Thread Stuart Henderson
On 2016-10-06, Sam Vaughan  wrote:
> $ dmesg | egrep -i 'hci|hub|usb'

Please don't trim things. Full dmesg, full pcidump (preferably -vxx).
Or better, run sendbug as root which includes acpi tables in the mail
it produces (the latter is not presently working in -current, but since
you're running 6.0 you won't run into that).



APU2 Internal USB Headers Not Working

2016-10-05 Thread Sam Vaughan
I'm unable to see USB devices connected to the internal USB headers on
a PC Engines APU2c2 board.  The same devices work as expected when
connected to the external USB ports.

I have a TinyCore Linux USB stick handy that I used to update the
board's firmware.  If I boot it and run `lsusb` then I can see my
devices using all of the internal and external USB headers/ports.

So it would seem that the internal headers are wired up and working,
but for some reason I can't use them via ehci.  Note that that the
external USB ports are USB3, so devices appear via xhci.  It could
therefore be a wider issue with ehci on this board.

I've included as much detail as I know how to find below.  If anyone
has any ideas for things I can try to make this work I'd be very
pleased to hear them.

Sam


Host: PC Engines APU2c2 running OpenBSD 6.0, then TinyCore Linux 6.4.
Test device: FTDI Basic USB to Serial board.

- - - - OpenBSD dmesg - - - -

$ dmesg | egrep -i 'hci|hub|usb'
xhci0 at pci0 dev 16 function 0 "AMD Bolton xHCI" rev 0x11: msi
usb0 at xhci0: USB revision 3.0
uhub0 at usb0 "AMD xHCI root hub" rev 3.00/1.00 addr 1
ahci0 at pci0 dev 17 function 0 "AMD Hudson-2 SATA" rev 0x40: apic 4 int 19,
AHCI 1.3
ahci0: port 0: 6.0Gb/s
scsibus1 at ahci0: 32 targets
ehci0 at pci0 dev 19 function 0 "AMD Hudson-2 USB2" rev 0x39: apic 4 int 18
usb1 at ehci0: USB revision 2.0
uhub1 at usb1 "AMD EHCI root hub" rev 2.00/1.00 addr 1
uhub2 at uhub1 port 1 "Advanced Micro Devices product 0x7900" rev 2.00/0.18
addr 2

- - - - OpenBSD, FTDI on internal J11 USB header (EHCI) - - - -

$ usbdevs -vd
Controller /dev/usb0:
addr 1: super speed, self powered, config 1, xHCI root hub(0x),
AMD(0x1022), rev 1.00
  uhub0
 port 1 disabled
 port 2 disabled
 port 3 disabled
 port 4 disabled
Controller /dev/usb1:
addr 1: high speed, self powered, config 1, EHCI root hub(0x),
AMD(0x1022), rev 1.00
  uhub1
 port 1 addr 2: high speed, self powered, config 1, product 0x7900(0x7900),
Advanced Micro Devices(0x0438), rev 0.18
   uhub2
  port 1 powered
  port 2 powered
  port 3 powered
  port 4 powered
 port 2 powered

- - - - OpenBSD, FTDI on external USB port (xHCI) - - - -

$ usbdevs -vd
Controller /dev/usb0:
addr 1: super speed, self powered, config 1, xHCI root hub(0x),
AMD(0x1022), rev 1.00
  uhub0
 port 1 disabled
 port 2 disabled
 port 3 addr 2: full speed, power 90 mA, config 1, FT232R USB UART(0x6001),
FTDI(0x0403), rev 6.00, iSerialNumber A8004w2k
   uftdi0
 port 4 disabled
Controller /dev/usb1:
addr 1: high speed, self powered, config 1, EHCI root hub(0x),
AMD(0x1022), rev 1.00
  uhub1
 port 1 addr 2: high speed, self powered, config 1, product 0x7900(0x7900),
Advanced Micro Devices(0x0438), rev 0.18
   uhub2
  port 1 powered
  port 2 powered
  port 3 powered
  port 4 powered
 port 2 powered

- - - - OpenBSD pcidumps - - - -

$ doas pcidump -v 0:16:0
 0:16:0: AMD Bolton xHCI
0x: Vendor ID: 1022 Product ID: 7814
0x0004: Command: 0006 Status: 0010
0x0008: Class: 0c Subclass: 03 Interface: 30 Revision: 11
0x000c: BIST: 00 Header Type: 00 Latency Timer: 00 Cache Line Size:
10
0x0010: BAR mem 64bit addr: 0xfeb22000/0x2000
0x0018: BAR empty ()
0x001c: BAR empty ()
0x0020: BAR empty ()
0x0024: BAR empty ()
0x0028: Cardbus CIS: 
0x002c: Subsystem Vendor ID: 1022 Product ID: 1410
0x0030: Expansion ROM Base Address: 
0x0038: 
0x003c: Interrupt Pin: 01 Line: 00 Min Gnt: 00 Max Lat: 00
0x0050: Capability 0x01: Power Management
State: D0
0x0070: Capability 0x05: Message Signaled Interrupts (MSI)
0x0090: Capability 0x11: Extended Message Signaled Interrupts (MSI-X)
0x00a0: Capability 0x10: PCI Express

$ doas pcidump -v 0:19:0
 0:19:0: AMD Hudson-2 USB2
0x: Vendor ID: 1022 Product ID: 7808
0x0004: Command: 0006 Status: 02b0
0x0008: Class: 0c Subclass: 03 Interface: 20 Revision: 39
0x000c: BIST: 00 Header Type: 00 Latency Timer: 40 Cache Line Size:
10
0x0010: BAR mem 32bit addr: 0xfeb25400/0x0100
0x0014: BAR empty ()
0x0018: BAR empty ()
0x001c: BAR empty ()
0x0020: BAR empty ()
0x0024: BAR empty ()
0x0028: Cardbus CIS: 
0x002c: Subsystem Vendor ID: 1022 Product ID: 7808
0x0030: Expansion ROM Base Address: 
0x0038: 
0x003c: Interrupt Pin: 01 Line: 00 Min Gnt: 00 Max Lat: 00
0x00c0: Capability 0x01: Power Management
State: D0
0x00e4: Capability 0x0a: Debug Port

- - - - Linux dmesg - - - -

# dmesg | egrep -i 'hci|hub|usb' | cut -c16-
pci :00:11.0: set SATA to AHCI mode
ACPI: bus type USB registered
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: