Re: Someone broke USB

2019-07-09 Thread Steve Kargl
On Tue, Jul 09, 2019 at 10:19:55AM +0200, Niclas Zeising wrote:
> On 2019-07-09 06:33, Steve Kargl wrote:
> > On Mon, Jul 08, 2019 at 10:54:24PM +0200, Hans Petter Selasky wrote:
> >> On 2019-07-08 22:08, Steve Kargl wrote:
> >>> On Mon, Jul 08, 2019 at 09:08:17PM +0200, Hans Petter Selasky wrote:
>  Hi Steve,
> 
>  Can you revert all prior patches and try this one instead.
> 
> >>>
> >>> With the new patch, none of the USB devices are found.
> >>> I'll be away from the laptop for a few hours.
> >>>
> >>
> >> I've put the USB ACPI code into an own module, which is not enabled by
> >> default. So USB should be back to normal for now.
> >>
> >> https://svnweb.freebsd.org/changeset/base/349851
> >>
> > 
> > Thanks!  Unfortunately, things have gone left.  To update
> > /usr/src to get your change, I pulled in some vm changes,
> > which break the graphics/drm-legacy-kmod port.
> 
> 
> Can you report this, including the failure you're seeing, to 
> x...@freebsd.org or as an issue on the FreeBSDDesktop github?
> Thanks!
> Regards

Mark's patch to deal with the removed vm_page_unhold() has
gotten me past that problem.  One none hits

===>  Building for drm-legacy-kmod-g20190523
===> drm (all)
===> drm/drm (all)
===> drm/mach64 (all)
===> drm/mga (all)
===> drm/r128 (all)
===> drm/savage (all)
===> drm/sis (all)
===> drm/tdfx (all)
===> drm/via (all)
===> drm2 (all)
===> drm2/drm2 (all)
===> drm2/i915kms (all)
cc  -O2 -pipe -march=core2 -fno-strict-aliasing -march=core2  -Werror -D_KERNEL 
-DKLD_MODULE -nostdinc   -I. -I/usr/src/sys -I/usr/src/sys/contrib/ck/include 
-fno-common  -fdebug-prefix-map=./machine=/usr/src/sys/i386/include 
-fdebug-prefix-map=./x86=/usr/src/sys/x86/include -MD  
-MF.depend.intel_iic.o -MTintel_iic.o -mno-mmx -mno-sse -msoft-float 
-ffreestanding -fwrapv -fstack-protector -Wall -Wredundant-decls 
-Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith 
-Wcast-qual -Wundef -Wno-pointer-sign -D__printf__=__freebsd_kprintf__ 
-Wmissing-include-dirs -fdiagnostics-show-option -Wno-unknown-pragmas 
-Wno-error-tautological-compare -Wno-error-empty-body 
-Wno-error-parentheses-equality -Wno-error-unused-function 
-Wno-error-pointer-sign -Wno-error-shift-negative-value 
-Wno-address-of-packed-member  -mno-aes -mno-avx  -std=iso9899:1999 
-I/usr/ports/graphics/drm-legacy-kmod/work/drm-legacy-12bd551/drm2/../src/ -c 
/usr/ports/graphics/drm-legacy-kmod/work/drm-lega
 cy-12bd551/src/dev/drm2/i915/intel_iic.c -o intel_iic.o
/usr/ports/graphics/drm-legacy-kmod/work/drm-legacy-12bd551/src/dev/drm2/i915/intel_iic.c:570:2:
 error: implicit declaration of function 'iicbus_set_nostop' is invalid in C99 
[-Werror,-Wimplicit-function-declaration]
iicbus_set_nostop(idev, true);
^
/usr/ports/graphics/drm-legacy-kmod/work/drm-legacy-12bd551/src/dev/drm2/i915/intel_iic.c:570:2:
 error: this function declaration is not a prototype 
[-Werror,-Wstrict-prototypes]
2 errors generated.
*** Error code 1

Stop.
make[4]: stopped in 
/usr/ports/graphics/drm-legacy-kmod/work/drm-legacy-12bd551/drm2/i915kms
*** Error code 1

Stop.
make[3]: stopped in 
/usr/ports/graphics/drm-legacy-kmod/work/drm-legacy-12bd551/drm2
*** Error code 1

Stop.
make[2]: stopped in /usr/ports/graphics/drm-legacy-kmod/work/drm-legacy-12bd551
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/graphics/drm-legacy-kmod
*** Error code 1

Stop.
make: stopped in /usr/ports/graphics/drm-legacy-kmod

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-09 Thread Mark Johnston
On Tue, Jul 09, 2019 at 10:19:55AM +0200, Niclas Zeising wrote:
> On 2019-07-09 06:33, Steve Kargl wrote:
> > On Mon, Jul 08, 2019 at 10:54:24PM +0200, Hans Petter Selasky wrote:
> >> On 2019-07-08 22:08, Steve Kargl wrote:
> >>> On Mon, Jul 08, 2019 at 09:08:17PM +0200, Hans Petter Selasky wrote:
>  Hi Steve,
> 
>  Can you revert all prior patches and try this one instead.
> 
> >>>
> >>> With the new patch, none of the USB devices are found.
> >>> I'll be away from the laptop for a few hours.
> >>>
> >>
> >> I've put the USB ACPI code into an own module, which is not enabled by
> >> default. So USB should be back to normal for now.
> >>
> >> https://svnweb.freebsd.org/changeset/base/349851
> >>
> > 
> > Thanks!  Unfortunately, things have gone left.  To update
> > /usr/src to get your change, I pulled in some vm changes,
> > which break the graphics/drm-legacy-kmod port.
> 
> 
> Can you report this, including the failure you're seeing, to 
> x...@freebsd.org or as an issue on the FreeBSDDesktop github?

I submitted a PR: https://github.com/FreeBSDDesktop/drm-legacy/pull/12
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-09 Thread Niclas Zeising

On 2019-07-09 06:33, Steve Kargl wrote:

On Mon, Jul 08, 2019 at 10:54:24PM +0200, Hans Petter Selasky wrote:

On 2019-07-08 22:08, Steve Kargl wrote:

On Mon, Jul 08, 2019 at 09:08:17PM +0200, Hans Petter Selasky wrote:

Hi Steve,

Can you revert all prior patches and try this one instead.



With the new patch, none of the USB devices are found.
I'll be away from the laptop for a few hours.



I've put the USB ACPI code into an own module, which is not enabled by
default. So USB should be back to normal for now.

https://svnweb.freebsd.org/changeset/base/349851



Thanks!  Unfortunately, things have gone left.  To update
/usr/src to get your change, I pulled in some vm changes,
which break the graphics/drm-legacy-kmod port.



Can you report this, including the failure you're seeing, to 
x...@freebsd.org or as an issue on the FreeBSDDesktop github?

Thanks!
Regards
--
Niclas Zeising
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Dennis Clarke




Life with freebsd-current. :-/



Can be fun ... just try ppc64 or for a real hoot RISC-V !!


--
Dennis Clarke
RISC-V/SPARC/PPC/ARM/CISC
UNIX and Linux spoken
GreyBeard and suspenders optional
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Steve Kargl
On Mon, Jul 08, 2019 at 10:54:24PM +0200, Hans Petter Selasky wrote:
> On 2019-07-08 22:08, Steve Kargl wrote:
> > On Mon, Jul 08, 2019 at 09:08:17PM +0200, Hans Petter Selasky wrote:
> >> Hi Steve,
> >>
> >> Can you revert all prior patches and try this one instead.
> >>
> > 
> > With the new patch, none of the USB devices are found.
> > I'll be away from the laptop for a few hours.
> > 
> 
> I've put the USB ACPI code into an own module, which is not enabled by 
> default. So USB should be back to normal for now.
> 
> https://svnweb.freebsd.org/changeset/base/349851
> 

Thanks!  Unfortunately, things have gone left.  To update
/usr/src to get your change, I pulled in some vm changes,
which break the graphics/drm-legacy-kmod port.

Life with freebsd-current. :-/

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Takanori Watanabe
On Mon, Jul 08, 2019 at 10:54:24PM +0200, Hans Petter Selasky wrote:
> On 2019-07-08 22:08, Steve Kargl wrote:
> > On Mon, Jul 08, 2019 at 09:08:17PM +0200, Hans Petter Selasky wrote:
> >> Hi Steve,
> >>
> >> Can you revert all prior patches and try this one instead.
> >>
> > 
> > With the new patch, none of the USB devices are found.
> > I'll be away from the laptop for a few hours.
> > 
> 
> I've put the USB ACPI code into an own module, which is not enabled by 
> default. So USB should be back to normal for now.
> 
> https://svnweb.freebsd.org/changeset/base/349851

The tunable(kernel environment variable)
debug.acpi.disabled="usb" will disable the usb
acpi module probe.




___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Hans Petter Selasky

On 2019-07-08 22:08, Steve Kargl wrote:

On Mon, Jul 08, 2019 at 09:08:17PM +0200, Hans Petter Selasky wrote:

Hi Steve,

Can you revert all prior patches and try this one instead.



With the new patch, none of the USB devices are found.
I'll be away from the laptop for a few hours.



I've put the USB ACPI code into an own module, which is not enabled by 
default. So USB should be back to normal for now.


https://svnweb.freebsd.org/changeset/base/349851

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Steve Kargl
On Mon, Jul 08, 2019 at 09:08:17PM +0200, Hans Petter Selasky wrote:
> Hi Steve,
> 
> Can you revert all prior patches and try this one instead.
> 

With the new patch, none of the USB devices are found.
I'll be away from the laptop for a few hours.

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Hans Petter Selasky

Hi Steve,

Can you revert all prior patches and try this one instead.

--HPS
Index: sys/dev/usb/usb_hub_acpi.c
===
--- sys/dev/usb/usb_hub_acpi.c	(revision 349802)
+++ sys/dev/usb/usb_hub_acpi.c	(working copy)
@@ -80,24 +80,6 @@
 #include 
 #include 
 
-static UINT32 acpi_uhub_find_rh_cb(ACPI_HANDLE ah, UINT32 nl, void *ctx, void **status);
-static ACPI_STATUS acpi_uhub_find_rh(device_t dev, ACPI_HANDLE * ah);
-static ACPI_STATUS
-acpi_usb_hub_port_probe_cb(ACPI_HANDLE ah, UINT32 lv, void *ctx, void **rv);
-static ACPI_STATUS acpi_usb_hub_port_probe(device_t dev, ACPI_HANDLE ah);
-static int acpi_uhub_root_probe(device_t dev);
-static int acpi_uhub_probe(device_t dev);
-static int acpi_uhub_root_attach(device_t dev);
-static int acpi_uhub_attach(device_t dev);
-static int acpi_uhub_detach(device_t dev);
-static int
-acpi_uhub_read_ivar(device_t dev, device_t child, int idx,
-uintptr_t *res);
-static int
-acpi_uhub_child_location_string(device_t parent, device_t child,
-char *buf, size_t buflen);
-static int acpi_uhub_parse_upc(device_t dev, unsigned int port, ACPI_HANDLE ah);
-
 struct acpi_uhub_softc {
 	struct uhub_softc usc;
 	uint8_t	nports;
@@ -104,27 +86,25 @@
 	ACPI_HANDLE *porthandle;
 };
 
-UINT32
-acpi_uhub_find_rh_cb(ACPI_HANDLE ah, UINT32 nl, void *ctx, void **status){
+static UINT32
+acpi_uhub_find_rh_cb(ACPI_HANDLE ah, UINT32 nl, void *ctx, void **status)
+{
 	ACPI_DEVICE_INFO *devinfo;
-	UINT32 ret = AE_OK;
+	UINT32 ret;
 
 	*status = NULL;
 	devinfo = NULL;
 
 	ret = AcpiGetObjectInfo(ah, &devinfo);
-
-	if (ACPI_FAILURE(ret)) {
-		return ret;
+	if (ACPI_SUCCESS(ret)) {
+		if ((devinfo->Valid & ACPI_VALID_ADR) &&
+		(devinfo->Address == 0)) {
+			ret = AE_CTRL_TERMINATE;
+			*status = ah;
+		}
+		AcpiOsFree(devinfo);
 	}
-	if ((devinfo->Valid & ACPI_VALID_ADR) &&
-	(devinfo->Address == 0)) {
-		ret = AE_CTRL_TERMINATE;
-		*status = ah;
-	}
-	AcpiOsFree(devinfo);
-
-	return ret;
+	return (ret);
 }
 
 static int
@@ -134,14 +114,17 @@
 
 	buf.Pointer = NULL;
 	buf.Length = ACPI_ALLOCATE_BUFFER;
+
 	if (AcpiEvaluateObject(ah, "_UPC", NULL, &buf) == AE_OK) {
 		UINT64 porttypenum, conn;
 		const char *connectable;
-		const char *typelist[] = {"TypeA", "MiniAB", "Express",
+		const char *typelist[] = {
+			"TypeA", "MiniAB", "Express",
 			"USB3-A", "USB3-B", "USB-MicroB",
 			"USB3-MicroAB", "USB3-PowerB",
 			"TypeC-USB2", "TypeC-Switch",
-		"TypeC-nonSwitch"};
+			"TypeC-nonSwitch"
+		};
 		const char *porttype;
 		const int last = sizeof(typelist) / sizeof(typelist[0]);
 		ACPI_OBJECT *obj = buf.Pointer;
@@ -162,7 +145,7 @@
 	}
 	AcpiOsFree(buf.Pointer);
 
-	return 0;
+	return (0);
 }
 
 static int
@@ -172,6 +155,7 @@
 
 	buf.Pointer = NULL;
 	buf.Length = ACPI_ALLOCATE_BUFFER;
+
 	if (AcpiEvaluateObject(ah, "_PLD", NULL, &buf) == AE_OK) {
 		ACPI_OBJECT *obj;
 		unsigned char *resbuf;
@@ -235,15 +219,12 @@
 		}
 	skip:
 		AcpiOsFree(buf.Pointer);
-		
 	}
-
-
-	return 0;
+	return (0);
 }
 
-ACPI_STATUS
-acpi_uhub_find_rh(device_t dev, ACPI_HANDLE * ah)
+static ACPI_STATUS
+acpi_uhub_find_rh(device_t dev, ACPI_HANDLE *ah)
 {
 	device_t grand;
 	ACPI_HANDLE gah;
@@ -250,130 +231,133 @@
 
 	*ah = NULL;
 	grand = device_get_parent(device_get_parent(dev));
-	if ((gah = acpi_get_handle(grand)) == NULL) {
-		return AE_ERROR;
-	}
-	return AcpiWalkNamespace(ACPI_TYPE_DEVICE, gah, 1,
-	acpi_uhub_find_rh_cb, NULL, dev, ah);
+
+	if ((gah = acpi_get_handle(grand)) == NULL)
+		return (AE_ERROR);
+
+	return (AcpiWalkNamespace(ACPI_TYPE_DEVICE, gah, 1,
+	acpi_uhub_find_rh_cb, NULL, dev, ah));
 }
 
-ACPI_STATUS
+static ACPI_STATUS
 acpi_usb_hub_port_probe_cb(ACPI_HANDLE ah, UINT32 lv, void *ctx, void **rv)
 {
 	ACPI_DEVICE_INFO *devinfo;
 	device_t dev = ctx;
 	struct acpi_uhub_softc *sc = device_get_softc(dev);
+	UINT32 ret;
 
-	if (usb_debug)
-		device_printf(dev, "%s\n", acpi_name(ah));
-
-	AcpiGetObjectInfo(ah, &devinfo);
-	if ((devinfo->Valid & ACPI_VALID_ADR) &&
-	(devinfo->Address > 0) &&
-	(devinfo->Address <= (uint64_t)sc->nports)) {
-		sc->porthandle[devinfo->Address - 1] = ah;
-		acpi_uhub_parse_upc(dev, devinfo->Address, ah);
-		acpi_uhub_parse_pld(dev, devinfo->Address, ah);
-	} else {
-		device_printf(dev, "Skiping invalid devobj %s\n",
-		acpi_name(ah));
+	ret = AcpiGetObjectInfo(ah, &devinfo);
+	if (ACPI_SUCCESS(ret)) {
+		if ((devinfo->Valid & ACPI_VALID_ADR) &&
+		(devinfo->Address > 0) &&
+		(devinfo->Address <= (uint64_t)sc->nports)) {
+			sc->porthandle[devinfo->Address - 1] = ah;
+			acpi_uhub_parse_upc(dev, devinfo->Address, ah);
+			acpi_uhub_parse_pld(dev, devinfo->Address, ah);
+		}
+		AcpiOsFree(devinfo);
 	}
-	AcpiOsFree(devinfo);
-	return AE_OK;
+	return (AE_OK);
 }
 
-ACPI_STATUS
+static ACPI_STATUS
 acpi_usb_hub_port_probe(device_t dev, ACPI_HANDLE ah)
 {
-	return AcpiWalkNamespace(ACPI_TYPE_DEVICE,
+	return (AcpiWalkNamespace(ACPI_TYPE_DEVICE,
 	ah, 1,
 	acpi_usb_

Re: Someone broke USB

2019-07-08 Thread Hans Petter Selasky

On 2019-07-08 19:30, Steve Kargl wrote:

Setting hw.usb.explore_wait=500 in /boot/loader.conf
allowed the laptop to find the mouse and external
hard drive.  It seems at least for my laptop that
250 is too conservative.


I think there is a race on some shared variables inside the ACPI wrapper 
that was committed. Looking into it.


For example if I attach an external USB HUB to my machine it panics :-(

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Hans Petter Selasky

On 2019-07-08 19:24, Steve Kargl wrote:

Yes, the new sysctl is added.

% sysctl -a | grep usb | grep explore
hw.usb.explore_wait: 250


What happens if you set this sysctl to 1000 ?

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Steve Kargl
On Mon, Jul 08, 2019 at 10:24:14AM -0700, Steve Kargl wrote:
> On Mon, Jul 08, 2019 at 07:09:39PM +0200, Hans Petter Selasky wrote:
> > On 2019-07-08 19:03, Steve Kargl wrote:
> > > On Mon, Jul 08, 2019 at 11:50:31AM +0200, Hans Petter Selasky wrote:
> > >> Hi Steve,
> > >>
> > >> Can you test this patch?
> > >>
> > >> I made a slight variant which delay the explore threads instead of the
> > >> main thread running all the sysinits.
> > >>
> > >> --HPS
> > > 
> > > With this patch, the kernel does not find any
> > > USB devices.
> > > 
> > 
> > Did you double check the patch was compiled?
> > 
> > Do you see the new sysctl added?
> > 
> 
> Yes, the new sysctl is added. 
> 
> % sysctl -a | grep usb | grep explore
> hw.usb.explore_wait: 250
> 

Setting hw.usb.explore_wait=500 in /boot/loader.conf
allowed the laptop to find the mouse and external 
hard drive.  It seems at least for my laptop that
250 is too conservative.

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Steve Kargl
On Mon, Jul 08, 2019 at 07:09:39PM +0200, Hans Petter Selasky wrote:
> On 2019-07-08 19:03, Steve Kargl wrote:
> > On Mon, Jul 08, 2019 at 11:50:31AM +0200, Hans Petter Selasky wrote:
> >> Hi Steve,
> >>
> >> Can you test this patch?
> >>
> >> I made a slight variant which delay the explore threads instead of the
> >> main thread running all the sysinits.
> >>
> >> --HPS
> > 
> > With this patch, the kernel does not find any
> > USB devices.
> > 
> 
> Did you double check the patch was compiled?
> 
> Do you see the new sysctl added?
> 

Yes, the new sysctl is added. 

% sysctl -a | grep usb | grep explore
hw.usb.explore_wait: 250

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Hans Petter Selasky

On 2019-07-08 19:03, Steve Kargl wrote:

On Mon, Jul 08, 2019 at 11:50:31AM +0200, Hans Petter Selasky wrote:

Hi Steve,

Can you test this patch?

I made a slight variant which delay the explore threads instead of the
main thread running all the sysinits.

--HPS


With this patch, the kernel does not find any
USB devices.



Did you double check the patch was compiled?

Do you see the new sysctl added?

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Steve Kargl
On Mon, Jul 08, 2019 at 11:50:31AM +0200, Hans Petter Selasky wrote:
> Hi Steve,
> 
> Can you test this patch?
> 
> I made a slight variant which delay the explore threads instead of the 
> main thread running all the sysinits.
> 
> --HPS

With this patch, the kernel does not find any
USB devices.

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Enji Cooper


> On Jul 8, 2019, at 03:16, Hans Petter Selasky  wrote:
> 
>> On 2019-07-08 12:06, Gary Jennejohn wrote:
>> On Mon, 8 Jul 2019 11:50:31 +0200
>> Hans Petter Selasky  wrote:
>>> Hi Steve,
>>> 
>>> Can you test this patch?
>>> 
>>> I made a slight variant which delay the explore threads instead of the main 
>>> thread running all the sysinits.
>>> 
>> Shouldn't the patch set bus->explore_delay to 1 only if ms != 0?
> 
> I think it doesn't matter. The code is only supposed to be run once.

I think what Gary was referring to was that the patch only runs if the delay 
value is == 0. This seems like a logic [inversion] error to me.

Thanks,
-Enji
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Hans Petter Selasky

On 2019-07-08 12:06, Gary Jennejohn wrote:

On Mon, 8 Jul 2019 11:50:31 +0200
Hans Petter Selasky  wrote:


Hi Steve,

Can you test this patch?

I made a slight variant which delay the explore threads instead of the main 
thread running all the sysinits.



Shouldn't the patch set bus->explore_delay to 1 only if ms != 0?


I think it doesn't matter. The code is only supposed to be run once.

--HPS

___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Gary Jennejohn
On Mon, 8 Jul 2019 11:50:31 +0200
Hans Petter Selasky  wrote:

> Hi Steve,
> 
> Can you test this patch?
> 
> I made a slight variant which delay the explore threads instead of the main 
> thread running all the sysinits.
> 

Shouldn't the patch set bus->explore_delay to 1 only if ms != 0?

-- 
Gary Jennejohn
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-08 Thread Hans Petter Selasky

Hi Steve,

Can you test this patch?

I made a slight variant which delay the explore threads instead of the 
main thread running all the sysinits.


--HPS
Index: sys/dev/usb/controller/usb_controller.c
===
--- sys/dev/usb/controller/usb_controller.c	(revision 349802)
+++ sys/dev/usb/controller/usb_controller.c	(working copy)
@@ -105,6 +105,10 @@
 SYSCTL_INT(_hw_usb, OID_AUTO, no_shutdown_wait, CTLFLAG_RWTUN,
 &usb_no_shutdown_wait, 0, "No USB device waiting at system shutdown.");
 
+static int usb_explore_wait = 250;
+SYSCTL_INT(_hw_usb, OID_AUTO, explore_wait, CTLFLAG_RWTUN,
+&usb_explore_wait, 0, "Delay in milliseconds between initial root HUB explore.");
+
 static devclass_t usb_devclass;
 
 static device_method_t usb_methods[] = {
@@ -373,6 +377,13 @@
 	if (bus->no_explore != 0)
 		return;
 
+	if (bus->explore_delay == 0) {
+		int ms = device_get_unit(bus->bdev) * usb_explore_wait;
+		bus->explore_delay = 1;
+		if (ms != 0)
+			usb_pause_mtx(&bus->bus_mtx, howmany(ms * hz, 1000));
+	}
+
 	if (udev != NULL) {
 		USB_BUS_UNLOCK(bus);
 		uhub_explore_handle_re_enumerate(udev);
Index: sys/dev/usb/usb_bus.h
===
--- sys/dev/usb/usb_bus.h	(revision 349802)
+++ sys/dev/usb/usb_bus.h	(working copy)
@@ -131,6 +131,7 @@
 	uint8_t	do_probe;		/* set if USB should be re-probed */
 	uint8_t no_explore;		/* don't explore USB ports */
 	uint8_t dma_bits;		/* number of DMA address lines */
+	uint8_t explore_delay;		/* set if USB explore did initial delay */
 };
 
 #endif	/* _USB_BUS_H_ */
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Steve Kargl
On Sun, Jul 07, 2019 at 10:46:10PM +0200, Hans Petter Selasky wrote:
> On 2019-07-07 22:36, Steve Kargl wrote:
> > On Sun, Jul 07, 2019 at 09:10:00PM +0200, Hans Petter Selasky wrote:
> >> On 2019-07-07 20:58, Steve Kargl wrote:
> >>> I assume the pause goes after "max--;" statement.  I also
> >>> assume you want the info with the sysctl removed from
> >>> /boot/loader.conf.
> >>
> >> You can play with it and see what happens.
> >>
> > 
> > Built kernel with pause() added, and commented out the
> > sysctl in /boot/loader.conf.  One reboot took a long
> > time to get to the a login prompt, but all of my USB
> > devices were found.  A few reboots appeared to hang
> > after probing the USB mouse (or perhaps I was too
> > impatient).
> > 
> > On a side note, it seems the wpi0 mapped to wlan0
> > is now unstable.  Luckily, I have an ath(4) pccard
> > that I can use instead of the builtin wifi of the
> > laptop.  The joys of current. :-)
> > 
> 
> It sounds like we have a race there and that a wait between the probes 
> solves it.
> 
> Can you try the attached patch on top of -current:
> 

Hans, this patch seems to work.  Just booted a kernel and all
my devices were correctly found.  Thanks for your help.


-- 
Steve
20170425 https://www.youtube.com/watch?v=VWUpyCsUKR4
20161221 https://www.youtube.com/watch?v=IbCHE-hONow
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Hans Petter Selasky

On 2019-07-07 22:36, Steve Kargl wrote:

On Sun, Jul 07, 2019 at 09:10:00PM +0200, Hans Petter Selasky wrote:

On 2019-07-07 20:58, Steve Kargl wrote:

I assume the pause goes after "max--;" statement.  I also
assume you want the info with the sysctl removed from
/boot/loader.conf.


You can play with it and see what happens.



Built kernel with pause() added, and commented out the
sysctl in /boot/loader.conf.  One reboot took a long
time to get to the a login prompt, but all of my USB
devices were found.  A few reboots appeared to hang
after probing the USB mouse (or perhaps I was too
impatient).

On a side note, it seems the wpi0 mapped to wlan0
is now unstable.  Luckily, I have an ath(4) pccard
that I can use instead of the builtin wifi of the
laptop.  The joys of current. :-)



It sounds like we have a race there and that a wait between the probes 
solves it.


Can you try the attached patch on top of -current:

--HPS
Index: sys/dev/usb/usb_hub.c
===
--- sys/dev/usb/usb_hub.c	(revision 349802)
+++ sys/dev/usb/usb_hub.c	(working copy)
@@ -2274,18 +2274,19 @@
 }
 
 /**
- *	usb_needs_explore_all
+ *	usb_needs_explore_all_flags
  *
  * This function is called whenever a new driver is loaded and will
  * cause that all USB buses are re-explored.
  **/
-void
-usb_needs_explore_all(void)
+static void
+usb_needs_explore_all_flags(int flags)
 {
 	struct usb_bus *bus;
 	devclass_t dc;
 	device_t dev;
 	int max;
+	int x;
 
 	DPRINTFN(3, "\n");
 
@@ -2297,9 +2298,9 @@
 	/*
 	 * Explore all USB buses in parallel.
 	 */
-	max = devclass_get_maxunit(dc);
-	while (max >= 0) {
-		dev = devclass_get_device(dc, max);
+	max = devclass_get_maxunit(dc) + 1;
+	for (x = 0; x < max; x++) {
+		dev = devclass_get_device(dc, x);
 		if (dev) {
 			bus = device_get_softc(dev);
 			if (bus) {
@@ -2306,10 +2307,17 @@
 usb_needs_explore(bus, 1);
 			}
 		}
-		max--;
+		if (flags & 1)
+			pause("W", hz / max);
 	}
 }
 
+void
+usb_needs_explore_all(void)
+{
+	usb_needs_explore_all_flags(0);
+}
+
 /**
  *	usb_needs_explore_init
  *
@@ -2324,7 +2332,7 @@
 	 * being called:
 	 */
 	if (cold == 0)
-		usb_needs_explore_all();
+		usb_needs_explore_all_flags(1);
 	else
 		DPRINTFN(-1, "Cold variable is still set!\n");
 }
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Steve Kargl
On Sun, Jul 07, 2019 at 09:10:00PM +0200, Hans Petter Selasky wrote:
> On 2019-07-07 20:58, Steve Kargl wrote:
> > I assume the pause goes after "max--;" statement.  I also
> > assume you want the info with the sysctl removed from
> > /boot/loader.conf.
> 
> You can play with it and see what happens.
> 

Built kernel with pause() added, and commented out the
sysctl in /boot/loader.conf.  One reboot took a long
time to get to the a login prompt, but all of my USB 
devices were found.  A few reboots appeared to hang
after probing the USB mouse (or perhaps I was too 
impatient).

On a side note, it seems the wpi0 mapped to wlan0
is now unstable.  Luckily, I have an ath(4) pccard
that I can use instead of the builtin wifi of the
laptop.  The joys of current. :-)

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Hans Petter Selasky

On 2019-07-07 20:58, Steve Kargl wrote:

I assume the pause goes after "max--;" statement.  I also
assume you want the info with the sysctl removed from
/boot/loader.conf.


You can play with it and see what happens.

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Steve Kargl
On Sun, Jul 07, 2019 at 08:27:18PM +0200, Hans Petter Selasky wrote:
> On 2019-07-07 18:58, Hans Petter Selasky wrote:
> > On 2019-07-07 18:54, Steve Kargl wrote:
> >> This a 7720 line, 262KB file, do you want me to send it
> >> to you in private email or put in my home directory on
> >> freefall (i.e.,ka...@freefall.freebsd.org).
> > 
> > Send it to the people CC'ed, except the list.
> > 
> 
> 
> I'm wondering if there is a race by default, that wee need to explore 
> the root HUBs in a certain order?
> 
> Can you try to reverse the order in usb_needs_explore_all() in 
> sys/dev/usb and put a pause("W", hz); call between each iteration?
> 

I assume the pause goes after "max--;" statement.  I also
assume you want the info with the sysctl removed from 
/boot/loader.conf.

I'm in the middle of upgrading ImageMagick6 with portmaster.
As soon as it finishes, I get the info for you.

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Hans Petter Selasky

On 2019-07-07 18:58, Hans Petter Selasky wrote:

On 2019-07-07 18:54, Steve Kargl wrote:

This a 7720 line, 262KB file, do you want me to send it
to you in private email or put in my home directory on
freefall (i.e.,ka...@freefall.freebsd.org).


Send it to the people CC'ed, except the list.



Hi,

I'm wondering if there is a race by default, that wee need to explore 
the root HUBs in a certain order?


Can you try to reverse the order in usb_needs_explore_all() in 
sys/dev/usb and put a pause("W", hz); call between each iteration?


--HPS


void
usb_needs_explore_all(void)
{
struct usb_bus *bus;
devclass_t dc;
device_t dev;
int max;

DPRINTFN(3, "\n");

dc = usb_devclass_ptr;
if (dc == NULL) {
DPRINTFN(0, "no devclass\n");
return;
}
/*
 * Explore all USB buses in parallel.
 */
max = devclass_get_maxunit(dc);
while (max >= 0) {
dev = devclass_get_device(dc, max);
if (dev) {
bus = device_get_softc(dev);
if (bus) {
usb_needs_explore(bus, 1);
}
}
max--;
}
}

___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Hans Petter Selasky

On 2019-07-07 18:54, Steve Kargl wrote:

This a 7720 line, 262KB file, do you want me to send it
to you in private email or put in my home directory on
freefall (i.e.,ka...@freefall.freebsd.org).


Send it to the people CC'ed, except the list.

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Steve Kargl
On Sun, Jul 07, 2019 at 11:53:27AM +0200, Hans Petter Selasky wrote:
> On 2019-07-07 10:05, Steve Kargl wrote:
> > On Sat, Jul 06, 2019 at 04:14:53PM -0700, Steve Kargl wrote:
> >> On Sat, Jul 06, 2019 at 03:08:13PM -0600, Ian Lepore wrote:
> >>>
> >>> It seems almost certain to be r349161 that causes the problem.
> >>>
> >>
> >> I've backed out the change, and the buildkernel is currently
> >> running.  It won't finish for an hour or so (old hardware and
> >> rebuilding another project).
> >>
> > 
> > I can confirm that r349161 is the cause of my problem.
> > 
> 
> Hi,
> 
> Can you try the latest -current with:
> debug.acpi.disabled="usb"

Reverting my tree to include r349161, updating to top-of-tree,
the new kernel boots and USB works if the above sysctl is set.

> 
> In /boot/loader.conf ?
> 
> Also can you dump the ACPI tables:
> acpidump -dt > dump.txt

This a 7720 line, 262KB file, do you want me to send it
to you in private email or put in my home directory on
freefall (i.e., ka...@freefall.freebsd.org).

> 
> In the failing and working case can you show the differences in output from:
> devinfo
> 

Here's the diff when r349161 was revert (devinfo.working) and
top-of-tree with the sysctl set.

--- devinfo.working 2019-07-07 08:48:26.906454000 -0700
+++ devinfo.acpi_disabled   2019-07-07 09:44:09.22552 -0700
@@ -1,8 +1,8 @@
 nexus0
+  cryptosoft0
   vtvga0
   apic0
   ram0
-  cryptosoft0
   acpi0
 cpu0
   acpi_perf0
@@ -67,10 +67,10 @@
 uhub3
 uhci1
   usbus1
-uhub6
+uhub2
 ehci0
   usbus2
-uhub2
+uhub5
 hdac0
   hdacc0
 hdaa0
@@ -89,7 +89,7 @@
 uhub1
 uhci3
   usbus4
-uhub5
+uhub6
   ukbd0
   ums0
   uhid0

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Hans Petter Selasky

On 2019-07-07 10:05, Steve Kargl wrote:

On Sat, Jul 06, 2019 at 04:14:53PM -0700, Steve Kargl wrote:

On Sat, Jul 06, 2019 at 03:08:13PM -0600, Ian Lepore wrote:


It seems almost certain to be r349161 that causes the problem.



I've backed out the change, and the buildkernel is currently
running.  It won't finish for an hour or so (old hardware and
rebuilding another project).



I can confirm that r349161 is the cause of my problem.



Hi,

Can you try the latest -current with:
debug.acpi.disabled="usb"

In /boot/loader.conf ?

Also can you dump the ACPI tables:
acpidump -dt > dump.txt

In the failing and working case can you show the differences in output from:
devinfo

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-07 Thread Steve Kargl
On Sat, Jul 06, 2019 at 04:14:53PM -0700, Steve Kargl wrote:
> On Sat, Jul 06, 2019 at 03:08:13PM -0600, Ian Lepore wrote:
> > 
> > It seems almost certain to be r349161 that causes the problem.
> > 
> 
> I've backed out the change, and the buildkernel is currently
> running.  It won't finish for an hour or so (old hardware and
> rebuilding another project).
> 

I can confirm that r349161 is the cause of my problem.

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Steve Kargl
On Sat, Jul 06, 2019 at 03:08:13PM -0600, Ian Lepore wrote:
> On Sat, 2019-07-06 at 14:06 -0700, Steve Kargl wrote:
> > On Sat, Jul 06, 2019 at 10:50:59PM +0200, Hans Petter Selasky wrote:
> > > On 2019-07-06 21:41, Steve Kargl wrote:
> > > > On Sat, Jul 06, 2019 at 08:33:39PM +0200, Hans Petter Selasky
> > > > wrote:
> > > > > On 2019-07-06 20:23, Steve Kargl wrote:
> > > > > > So, how does one get usb working, again?
> > > > > > 
> > > > > > -- Steve
> > > > > 
> > > > > Can you show dmesg?
> > > > > 
> > > > 
> > > > It looks like the enumeration of busses and devices has changed.
> > > > grepping for uhub and usbus of the working and broken dmesg.boot
> > > > gives
> > > > 
> > > 
> > > Are you able to bisect the commit introducing the bad behaviour?
> > > 
> > 
> > I'll give it a shot.  I have two revision number to work with.
> > 
> 
> It seems almost certain to be r349161 that causes the problem.
> 

I've backed out the change, and the buildkernel is currently
running.  It won't finish for an hour or so (old hardware and
rebuilding another project).

-- 
Steve
20170425 https://www.youtube.com/watch?v=VWUpyCsUKR4
20161221 https://www.youtube.com/watch?v=IbCHE-hONow
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Thomas Laus
On 2019-07-06 16:50, Hans Petter Selasky wrote:
> 
> Are you able to bisect the commit introducing the bad behaviour?
>
I built and booted r349160.  My 'boot mount waiting for USBUS7 -> USBUS0
issue went away but the startup halted at the 'mounting late
filesystems' step of rc.conf.  I had the USB issue at r349161 but
building and loading the previous commit has other problems.

Tom


-- 
Public Keys:
PGP KeyID = 0x5F22FDC1
GnuPG KeyID = 0x620836CF
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Hans Petter Selasky

Hi Takanori,

Can you have a look at the issues reported in this thread?

Are the ACPI functions you call thread safe? USB will enumerate multiple 
busses at the same time.


--HPS

On 2019-07-06 23:08, Ian Lepore wrote:

On Sat, 2019-07-06 at 14:06 -0700, Steve Kargl wrote:

On Sat, Jul 06, 2019 at 10:50:59PM +0200, Hans Petter Selasky wrote:

On 2019-07-06 21:41, Steve Kargl wrote:

On Sat, Jul 06, 2019 at 08:33:39PM +0200, Hans Petter Selasky
wrote:

On 2019-07-06 20:23, Steve Kargl wrote:

So, how does one get usb working, again?

-- Steve


Can you show dmesg?



It looks like the enumeration of busses and devices has changed.
grepping for uhub and usbus of the working and broken dmesg.boot
gives



Are you able to bisect the commit introducing the bad behaviour?



I'll give it a shot.  I have two revision number to work with.



It seems almost certain to be r349161 that causes the problem.




___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Ian Lepore
On Sat, 2019-07-06 at 14:06 -0700, Steve Kargl wrote:
> On Sat, Jul 06, 2019 at 10:50:59PM +0200, Hans Petter Selasky wrote:
> > On 2019-07-06 21:41, Steve Kargl wrote:
> > > On Sat, Jul 06, 2019 at 08:33:39PM +0200, Hans Petter Selasky
> > > wrote:
> > > > On 2019-07-06 20:23, Steve Kargl wrote:
> > > > > So, how does one get usb working, again?
> > > > > 
> > > > > -- Steve
> > > > 
> > > > Can you show dmesg?
> > > > 
> > > 
> > > It looks like the enumeration of busses and devices has changed.
> > > grepping for uhub and usbus of the working and broken dmesg.boot
> > > gives
> > > 
> > 
> > Are you able to bisect the commit introducing the bad behaviour?
> > 
> 
> I'll give it a shot.  I have two revision number to work with.
> 

It seems almost certain to be r349161 that causes the problem.

-- Ian

___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Steve Kargl
On Sat, Jul 06, 2019 at 10:50:59PM +0200, Hans Petter Selasky wrote:
> On 2019-07-06 21:41, Steve Kargl wrote:
> > On Sat, Jul 06, 2019 at 08:33:39PM +0200, Hans Petter Selasky wrote:
> >> On 2019-07-06 20:23, Steve Kargl wrote:
> >>> So, how does one get usb working, again?
> >>>
> >>> -- Steve
> >>
> >> Can you show dmesg?
> >>
> > 
> > It looks like the enumeration of busses and devices has changed.
> > grepping for uhub and usbus of the working and broken dmesg.boot
> > gives
> > 
> 
> Are you able to bisect the commit introducing the bad behaviour?
> 

I'll give it a shot.  I have two revision number to work with.

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Hans Petter Selasky

On 2019-07-06 21:41, Steve Kargl wrote:

On Sat, Jul 06, 2019 at 08:33:39PM +0200, Hans Petter Selasky wrote:

On 2019-07-06 20:23, Steve Kargl wrote:

So, how does one get usb working, again?

-- Steve


Can you show dmesg?



It looks like the enumeration of busses and devices has changed.
grepping for uhub and usbus of the working and broken dmesg.boot
gives



Are you able to bisect the commit introducing the bad behaviour?

--HPS

___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Steve Kargl
On Sat, Jul 06, 2019 at 08:33:39PM +0200, Hans Petter Selasky wrote:
> On 2019-07-06 20:23, Steve Kargl wrote:
> > So, how does one get usb working, again?
> > 
> > -- Steve
> 
> Can you show dmesg?
> 

It looks like the enumeration of busses and devices has changed.
grepping for uhub and usbus of the working and broken dmesg.boot
gives

% grep uhub dmesg.boot.working
uhub0:  on usbus6
uhub1:  on usbus4
uhub2:  on usbus3
uhub3:  on usbus1
uhub4:  on usbus5
uhub5:  on usbus2
uhub6:  on usbus0
uhub1: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub4: 2 ports with 2 removable, self powered
uhub3: 2 ports with 2 removable, self powered
uhub6: 2 ports with 2 removable, self powered
uhub5: 4 ports with 4 removable, self powered
uhub0: 6 ports with 6 removable, self powered
umass0 on uhub0
ukbd0 on uhub1
ums0 on uhub1
uhid0 on uhub1

% grep uhub dmesg.boot.broken
uhub0 on usbus5
uhub0:  on usbus5
uhub1 on usbus3
uhub1:  on usbus3
uhub2 on usbus1
uhub2:  on usbus1
uhub3 on usbus6
uhub3:  on usbus6
uhub5 on usbus2
uhub5:  on usbus2
uhub4 on usbus4
uhub4:  on usbus4
uhub1: 2 ports with 2 removable, self powered
uhub0: 2 ports with 2 removable, self powered
uhub2: 2 ports with 2 removable, self powered
uhub4: 2 ports with 2 removable, self powered
uhub5: 4 ports with 4 removable, self powered
uhub3: 6 ports with 6 removable, self powered

 
% grep usbus dmesg.boot.working
usbus0 on uhci0
usbus0: 12Mbps Full Speed USB v1.0
usbus1 on uhci1
usbus1: 12Mbps Full Speed USB v1.0
usbus2: EHCI version 1.0
usbus2 on ehci0
usbus2: 480Mbps High Speed USB v2.0
usbus3 on uhci2
usbus3: 12Mbps Full Speed USB v1.0
usbus4 on uhci3
usbus4: 12Mbps Full Speed USB v1.0
usbus5 on uhci4
usbus5: 12Mbps Full Speed USB v1.0
usbus6: EHCI version 1.0
usbus6 on ehci1
usbus6: 480Mbps High Speed USB v2.0
ugen6.1:  at usbus6
uhub0:  on usbus6
ugen4.1:  at usbus4
uhub1:  on usbus4
ugen3.1:  at usbus3
uhub2:  on usbus3
ugen1.1:  at usbus1
uhub3:  on usbus1
ugen5.1:  at usbus5
uhub4:  on usbus5
ugen2.1:  at usbus2
uhub5:  on usbus2
ugen0.1:  at usbus0
uhub6:  on usbus0
ugen6.2:  at usbus6
umass0:  on usbus6
ugen4.2:  at usbus4
ukbd0:  on usbus4
ums0:  on usbus4
uhid0:  on usbus4

% grep usbus dmesg.boot.broken
usbus0 on uhci0
usbus0: 12Mbps Full Speed USB v1.0
usbus1 on uhci1
usbus1: 12Mbps Full Speed USB v1.0
usbus2: EHCI version 1.0
usbus2 on ehci0
usbus2: 480Mbps High Speed USB v2.0
usbus3 on uhci2
usbus3: 12Mbps Full Speed USB v1.0
usbus4 on uhci3
usbus4: 12Mbps Full Speed USB v1.0
usbus5 on uhci4
usbus5: 12Mbps Full Speed USB v1.0
usbus6: EHCI version 1.0
usbus6 on ehci1
usbus6: 480Mbps High Speed USB v2.0
ugen5.1:  at usbus5
ugen3.1:  at usbus3
ugen1.1:  at usbus1
ugen6.1:  at usbus6
ugen4.1:  at usbus4
ugen2.1:  at usbus2
ugen0.1:  at usbus0
uhub0 on usbus5
uhub0:  on usbus5
uhub1 on usbus3
uhub1:  on usbus3
uhub2 on usbus1
uhub2:  on usbus1
uhub3 on usbus6
uhub3:  on usbus6
uhub5 on usbus2
uhub5:  on usbus2
uhub4 on usbus4
uhub4:  on usbus4

-- 
Steve
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Re: Someone broke USB

2019-07-06 Thread Steve Kargl
On Sat, Jul 06, 2019 at 08:33:39PM +0200, Hans Petter Selasky wrote:
> On 2019-07-06 20:23, Steve Kargl wrote:
> > So, how does one get usb working, again?
> > 
> > -- Steve
> 
> Can you show dmesg?
> 

This is dmesg.boot for the kernel with the 
non-functioning USB stack.  I'll need to 
reboot with the older kernel to get the
dmesg.boot for a kernel with a functioning
stack.  Do you need that as well?

---<>---
Copyright (c) 1992-2019 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 13.0-CURRENT r349777 MOBILE i386
FreeBSD clang version 8.0.1 (branches/release_80 363030) (based on LLVM 8.0.1)
VT(vga): resolution 640x480
CPU: Intel(R) Core(TM)2 Duo CPU T7250  @ 2.00GHz (1995.05-MHz 686-class CPU)
  Origin="GenuineIntel"  Id=0x6fd  Family=0x6  Model=0xf  Stepping=13
  
Features=0xbfebfbff
  Features2=0xe3bd
  AMD Features=0x2010
  AMD Features2=0x1
  VT-x: (disabled in BIOS) HLT,PAUSE
  TSC: P-state invariant, performance statistics
real memory  = 4294967296 (4096 MB)
avail memory = 3654860800 (3485 MB)
Event timer "LAPIC" quality 100
ACPI APIC Table: 
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
FreeBSD/SMP: 1 package(s) x 2 core(s)
random: unblocking device.
ioapic0: Changing APIC ID to 2
ioapic0  irqs 0-23 on motherboard
Launching APs: 1
Timecounter "TSC" frequency 1995047160 Hz quality 1000
random: entropy device external interface
kbd1 at kbdmux0
module_register_init: MOD_LOAD (vesa, 0xf2bd70, 0) error 19
[ath_hal] loaded
[ath_dfs] loaded
[ath_rate] loaded
[ar9300] loaded
[ar5212] loaded
[ar5416] loaded
[ar5211] loaded
[ar5210] loaded
[ath] loaded
nexus0
vtvga0:  on motherboard
cryptosoft0:  on motherboard
acpi0:  on motherboard
hpet0:  iomem 0xfed0-0xfed003ff on acpi0
Timecounter "HPET" frequency 14318180 Hz quality 950
Event timer "HPET" frequency 14318180 Hz quality 450
Event timer "HPET1" frequency 14318180 Hz quality 440
Event timer "HPET2" frequency 14318180 Hz quality 440
cpu0:  on acpi0
atrtc0:  port 0x70-0x71,0x72-0x77 irq 8 on acpi0
atrtc0: registered as a time-of-day clock, resolution 1.00s
Event timer "RTC" frequency 32768 Hz quality 0
attimer0:  port 0x40-0x43,0x50-0x53 irq 2 on acpi0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
pcib0:  port 0xcf8-0xcff on acpi0
pcib0: Ignoring 3 range above 4GB (0x12000-0x317ff)
pci0:  on pcib0
vgapci0:  port 0xeff8-0xefff mem 
0xfea0-0xfeaf,0xe000-0xefff irq 16 at device 2.0 on pci0
agp0:  on vgapci0
agp0: aperture size is 256M, detected 7676k stolen memory
vgapci0: Boot video device
vgapci1:  mem 0xfeb0-0xfebf at device 2.1 on 
pci0
uhci0:  port 0x6f20-0x6f3f irq 20 at 
device 26.0 on pci0
usbus0 on uhci0
usbus0: 12Mbps Full Speed USB v1.0
uhci1:  port 0x6f00-0x6f1f irq 21 at 
device 26.1 on pci0
usbus1 on uhci1
usbus1: 12Mbps Full Speed USB v1.0
ehci0:  mem 
0xfed1c400-0xfed1c7ff irq 22 at device 26.7 on pci0
usbus2: EHCI version 1.0
usbus2 on ehci0
usbus2: 480Mbps High Speed USB v2.0
hdac0:  mem 0xfe9fc000-0xfe9f irq 21 at device 
27.0 on pci0
pcib1:  at device 28.0 on pci0
pcib1: [GIANT-LOCKED]
pcib2:  at device 28.1 on pci0
pcib2: [GIANT-LOCKED]
pci1:  on pcib2
wpi0:  mem 0xfe8ff000-0xfe8f irq 17 at 
device 0.0 on pci1
pcib3:  at device 28.5 on pci0
pcib3: [GIANT-LOCKED]
pci2:  on pcib3
bge0:  mem 
0xfe7f-0xfe7f irq 17 at device 0.0 on pci2
bge0: CHIP ID 0xa002; ASIC REV 0x0a; CHIP REV 0xa0; PCI-E
miibus0:  on bge0
brgphy0:  PHY 1 on miibus0
brgphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 
1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, auto, auto-flow
bge0: Ethernet address: 00:1d:09:ba:cc:0d
uhci2:  port 0x6f80-0x6f9f irq 20 at 
device 29.0 on pci0
usbus3 on uhci2
usbus3: 12Mbps Full Speed USB v1.0
uhci3:  port 0x6f60-0x6f7f irq 21 at 
device 29.1 on pci0
usbus4 on uhci3
usbus4: 12Mbps Full Speed USB v1.0
uhci4:  port 0x6f40-0x6f5f irq 22 at 
device 29.2 on pci0
usbus5 on uhci4
usbus5: 12Mbps Full Speed USB v1.0
ehci1:  mem 
0xfed1c000-0xfed1c3ff irq 20 at device 29.7 on pci0
usbus6: EHCI version 1.0
usbus6 on ehci1
usbus6: 480Mbps High Speed USB v2.0
pcib4:  at device 30.0 on pci0
pci3:  on pcib4
cbb0:  at device 1.0 on pci3
cardbus0:  on cbb0
pccard0: <16-bit PCCard bus> on cbb0
pci3:  at device 1.4 (no driver attached)
isab0:  at device 31.0 on pci0
isa0:  on isab0
atapci0:  port 
0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x6fa0-0x6faf irq 16 at device 31.1 on pci0
ata0:  at channel 0 on atapci0
ahci0:  port 
0x6eb0-0x6eb7,0x6eb8-0x6ebb,0x6ec0-0x6ec7,0x6ec8-0x6ecb,0x6ee0-0x6eff mem 
0xfe9fb800-0xfe9fbfff irq 17 at device 31.2 on pci0
ahci0: AHCI v1.10 with 3 3Gbps ports, Port Multi

Re: Someone broke USB

2019-07-06 Thread Hans Petter Selasky

On 2019-07-06 20:23, Steve Kargl wrote:

So, how does one get usb working, again?

-- Steve


Can you show dmesg?

--HPS
___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"


Someone broke USB

2019-07-06 Thread Steve Kargl
Updated a month old FreeBSD-current to top of tree.
Upon rebooting, the usb no longer functions. No
usb mouse.  No usb external hard drive.  Unplugging
and then re-plugging in external drive does not 
cause the drive to spin up.

Logged in as root.`

% usbconfig list
No device match or lack of permissions
% usbsonfig show_ifdrv
No device match or lack of permissions
% usbsonfig dump_all_desc
No device match or lack of permissions
% usbsonfig reset
No device match or lack of permissions

/usr/src/UPDATING does not show any recent entries 
for usb.  

So, how does one get usb working, again?

-- 
Steve

___
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"