USB regression on Overdrive 1000

From: John F Carr <jfc_at_mit.edu>
Date: Wed, 16 Mar 2022 13:46:06 UTC
I updated my kernel from 13.0-STABLE from early December to 13.1-STABLE from yesterday and I am having USB problems on my Overdrive 1000 ARM box.  I see some usb_msc_auto_quirk messages I haven't seen before and there is a long delay "Root mount waiting for: usbus0".  It does boot eventually off of the internal drive, ada0, but it continues to spew USB errors to the console.  It doesn't register a "CAMuhub0" device and it never finds the USB stick plugged into the external port which should appear as da0.  Any ideas?

dmesg output attached, "good" comes from "boot kernel.old".  The if_msk error is probably caused by a mismatch between old kernel and new root filesystem.


CPU  3: ARM Cortex-A57 r1p2 affinity:  1  1
Release APs...done
usbus0: 5.0Gbps Super Speed USB v3.0
Trying to mount root from zfs:zroot/ROOT/default []...
ugen0.1: <(0x1b73) XHCI root HUB> at usbus0
uhub0 on usbus0
uhub0: <(0x1b73) XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
ada0 at ahcich1 bus 0 scbus1 target 0 lun 0
ada0: <Patriot P200 1TB S0424A0> ACS-2 ATA SATA 3.x device
...
Root mount waiting for: usbus0
usb_msc_auto_quirk: UQ_MSC_NO_GETMAXLUN set for USB mass storage device Generic Mass Storage Device (0x14cd:0x125d)
usb_msc_auto_quirk: UQ_MSC_NO_TEST_UNIT_READY set for USB mass storage device Generic Mass Storage Device (0x14cd:0x125d)
usb_msc_auto_quirk: UQ_MSC_NO_PREVENT_ALLOW set for USB mass storage device Generic Mass Storage Device (0x14cd:0x125d)
usb_msc_auto_quirk: UQ_MSC_NO_SYNC_CACHE set for USB mass storage device Generic Mass Storage Device (0x14cd:0x125d)
Root mount waiting for: usbus0
xhci0: Resetting controller
Root mount waiting for: usbus0
usbd_req_re_enumerate: addr=1, set address failed! (USB_ERR_TIMEOUT, ignored)
Root mount waiting for: usbus0
...
xhci0: Resetting controller