NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-arm/60021: USB-only boot: uhub0 attaches but uhub1 never appears, no hotplug events; SD-boot sees hub+umass fine



The following reply was made to PR port-arm/60021; it has been noted by GNATS.

From: Nick Hudson <nick.hudson%gmx.co.uk@localhost>
To: gnats-bugs%netbsd.org@localhost, port-arm-maintainer%netbsd.org@localhost,
 gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Cc: 
Subject: Re: port-arm/60021: USB-only boot: uhub0 attaches but uhub1 never
 appears, no hotplug events; SD-boot sees hub+umass fine
Date: Sat, 21 Feb 2026 10:39:41 +0000

 [...]
 
 > [ 1.0000040] dwctwo0 at simplebus1: USB controller
 > [ 1.0000040] dwctwo0: interrupting on icu irq 9 [ 1.0000040] bcmpmwdog0 at simplebus1: Power management, Reset and Watchdog controller
 [...]
 > [ 1.3676894] usb0 at dwctwo0: USB revision 2.0
 > [ 1.3876912] armpmu0: interrupting on local_intc irq 9
 > [ 1.3876912] uhub0 at usb0: NetBSD (0x0000) DWC2 root hub (0x0000), class 9/0, rev 2.00/1.00, addr 1
 > [ 1.4776999] sdmmc0: direct I/O error 5, r=6 p=0xffffc000b14fce5c write
 > [ 1.4877014] sdmmc0: couldn't enable card: 5 [ 1.5977105] sdmmc1: 4-bit width, 50.000 MHz
 > [ 1.5977105] bwfm0 at sdmmc1 function 1
 > [ 1.6077105] (manufacturer 0x2d0, product 0xa9a6) at sdmmc1 function 2 not configured
 > [ 1.6177115] swwdog0: software watchdog initialized
 > [ 1.6177115] WARNING: 3 errors while detecting hardware; check system log.
 > [ 1.6277118] boot device: <unknown>
 > [ 1.6277118] unknown device major 0xffffffffffffffff
 > [ 2.6277792] unknown device major 0xffffffffffffffff
 > [ 3.6278463] unknown device major 0xffffffffffffffff
 > [ 4.6279139] unknown device major 0xffffffffffffffff
 > [ 5.6279809] unknown device major 0xffffffffffffffff
 > [ 6.6280471] unknown device major 0xffffffffffffffff
 > [ 7.6281136] unknown device major 0xffffffffffffffff
 > [ 8.6281796] unknown device major 0xffffffffffffffff
 > [ 9.6282456] unknown device major 0xffffffffffffffff
 > [ 10.6283119] unknown device major 0xffffffffffffffff
 > [ 11.6283785] unknown device major 0xffffffffffffffff
 > [ 12.6284449] unknown device major 0xffffffffffffffff
 > [ 13.6285113] unknown device major 0xffffffffffffffff
 > [ 14.6285777] unknown device major 0xffffffffffffffff
 > [ 15.6286439] unknown device major 0xffffffffffffffff
 > [ 16.6287103] unknown device major 0xffffffffffffffff
 > [ 17.6287768] unknown device major 0xffffffffffffffff
 > [ 18.6288429] unknown device major 0xffffffffffffffff
 > [ 19.6289094] unknown device major 0xffffffffffffffff
 > [ 20.6289757] unknown device major 0xffffffffffffffff
 > [ 21.6290416] unknown device major 0xffffffffffffffff
 > [ 21.6290416] root device:
 
 This is almost certainly that autoconf doesn't wait (long enough) for sub-ordintate hubs
 
 https://nxr.netbsd.org/xref/src/sys/dev/usb/uhub.c#880
 
      880 	mutex_enter(&sc->sc_lock);
      881 	sc->sc_explorepending = false;
      882 	for (int i = 0; i < sc->sc_statuslen; i++) {
      883 		if (sc->sc_statuspend[i] != 0) {
      884 			memcpy(sc->sc_status, sc->sc_statuspend,
      885 			    sc->sc_statuslen);
      886 			memset(sc->sc_statuspend, 0, sc->sc_statuslen);
      887 			usb_needs_explore(sc->sc_hub);
      888 			break;
      889 		}
      890 	}
      891 	mutex_exit(&sc->sc_lock);
      892 	if (sc->sc_first_explore) {
      893 		config_pending_decr(sc->sc_dev);
      894 		sc->sc_first_explore = false;
      895 	}
      896
 


Home | Main Index | Thread Index | Old Index