Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Oct 2011 13:44:33 +0200
From:      =?iso-8859-1?Q?Marcus_M=FCller?= <znek@mulle-kybernetik.com>
To:        freebsd-usb@freebsd.org
Subject:   Re: bad performance of aue device when used with nVidia nForce MCP79 USB
Message-ID:  <F1524373-5589-4223-A462-85449A3212D5@mulle-kybernetik.com>
In-Reply-To: <201110200911.21936.hselasky@c2i.net>
References:  <A54E761C-0326-4118-95B6-5386B1B729BC@mulle-kybernetik.com> <201110200911.21936.hselasky@c2i.net>

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

On 20.10.2011, at 09:11, Hans Petter Selasky wrote:

> Also see "sysctl hw.usb.ehci".

root@creutzfeld:(/home/znek)# sysctl hw.usb.ehci
sysctl: unknown oid 'hw.usb.ehci'

Please note that im on 8.2-STABLE=85 I suspect hw.usb.ehci is not =
available here (or is this another bug?)

root@creutzfeld:(/home/znek)# sysctl hw.usb    =20
hw.usb.no_boot_wait: 0
hw.usb.debug: 0
hw.usb.usb_lang_mask: 255
hw.usb.usb_lang_id: 9
hw.usb.template: 0
hw.usb.power_timeout: 30
hw.usb.no_pf: 0
hw.usb.no_cs_fail: 0

> The Nvidia chipsets are quirked due to what looks like hardware =
issues. See=20
> sys/dev/usb/controller/ehci_pci.c. This affects performance.

I commented out the specific quirks section in ehci_pci.c and now =
performance is as expected!

I didn't test any other USB devices on this board, yet. But the network =
device appears to be stable, thus I suspect the quirk setting based on =
vendor NVIDIA and NVIDIA2 is a bit too far fetched?

For reference, here is my patch:

Index: ehci_pci.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- ehci_pci.c	(revision 226546)
+++ ehci_pci.c	(working copy)
@@ -459,6 +459,7 @@
 	}
=20
 	/* Doorbell feature workaround */
+/*
 	switch (pci_get_vendor(self)) {
 	case PCI_EHCI_VENDORID_NVIDIA:
 	case PCI_EHCI_VENDORID_NVIDIA2:
@@ -470,7 +471,7 @@
 	default:
 		break;
 	}
-
+*/
 	err =3D ehci_init(sc);
 	if (!err) {
 		err =3D device_probe_and_attach(sc->sc_bus.bdev);






Thanks,

  Marcus




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F1524373-5589-4223-A462-85449A3212D5>