Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Dec 2021 17:04:29 +1030
From:      Daniel O'Connor via freebsd-usb <freebsd-usb@freebsd.org>
To:        Hans Petter Selasky <hps@selasky.org>
Cc:        freebsd-usb@freebsd.org
Subject:   Re: Poor USB performance on ASUS 520 motherboard (no IRQ?)
Message-ID:  <499BEF34-F85D-4A0B-A4C1-30B7BCF40556@dons.net.au>
In-Reply-To: <3ec03f87-ec26-cb0a-58bb-76fd32c49060@selasky.org>
References:  <A4A84F57-67F2-4402-B81C-9742F2C2B218@dons.net.au> <abf22f4f-e8fc-86c3-e463-d98d4353591a@selasky.org> <D9637948-8B50-45D3-93BD-ADB5FE7D964B@dons.net.au> <3ec03f87-ec26-cb0a-58bb-76fd32c49060@selasky.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi,
Thanks, I discovered that if I connect the device to xhci0 it exhibits =
poor performance (and only shows 1000 IRQ/sec), however if I connect it =
to xhci1 it works fine (8kHz).

They show up slightly differently in dmesg:
xhci0: <XHCI (generic) USB 3.0 controller> mem 0xfcfa0000-0xfcfa7fff at =
device 0.0 on pci1
xhci0: 32 bytes context size, 64-bit DMA
usbus0 on xhci0
usbus0: 5.0Gbps Super Speed USB v3.0

xhci1: <XHCI (generic) USB 3.0 controller> mem 0xfcb00000-0xfcbfffff at =
device 0.3 on pci7
xhci1: 64 bytes context size, 64-bit DMA
usbus1 on xhci1
usbus1: 5.0Gbps Super Speed USB v3.0

However I don't know what the "context size" means, they are different =
PCI IDs too:

xhci0@pci0:1:0:0:       class=3D0x0c0330 rev=3D0x00 hdr=3D0x00 =
vendor=3D0x1022 device=3D0x43ec subvendor=3D0x1b21 subdevice=3D0x1142
    vendor     =3D 'Advanced Micro Devices, Inc. [AMD]'
    class      =3D serial bus
    subclass   =3D USB
    bar   [10] =3D type Memory, range 64, base 0xfcfa0000, size 32768, =
enabled
  PCI-e errors =3D Correctable Error Detected
                 Unsupported Request Detected
     Corrected =3D Advisory Non-Fatal Error

xhci1@pci0:7:0:3:       class=3D0x0c0330 rev=3D0x00 hdr=3D0x00 =
vendor=3D0x1022 device=3D0x15e0 subvendor=3D0x1043 subdevice=3D0x876b
    vendor     =3D 'Advanced Micro Devices, Inc. [AMD]'
    device     =3D 'Raven USB 3.1'
    class      =3D serial bus
    subclass   =3D USB
    bar   [10] =3D type Memory, range 64, base 0xfcb00000, size 1048576, =
enabled

I tried changing the imod value from 500 to 125 but it had no impact on =
the IRQ rate so I guess perhaps that controller is broken in some way..

> On 4 Dec 2021, at 16:32, Hans Petter Selasky <hps@selasky.org> wrote:
>=20
> On 12/4/21 03:12, Daniel O'Connor via freebsd-usb wrote:
>> How can I change it?
>=20
> Please refer to this:
>=20
>        /* set up interrupt rate */
>        XWRITE4(sc, runt, XHCI_IMOD(0), sc->sc_imod_default);
>=20
> --HPS

--
Daniel O'Connor
"The nice thing about standards is that there
are so many of them to choose from."
 -- Andrew Tanenbaum




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?499BEF34-F85D-4A0B-A4C1-30B7BCF40556>