I have an old Behringer BCF 2000 generic MIDI controller which refuses to
work on my DeskMini X300-based computer running OpenBSD 7.6. When I turn
on the controller, it is (mal)discovered in the following way:

umidi0 at uhub1 port 1 configuration 1 interface 1 "BEHRINGER BCF2000" rev 
1.10/1.00 addr 2
umidi0: (genuine USB-MIDI)
umidi0: disabled.
ugen1 at uhub1 port 1 configuration 1 "BEHRINGER BCF2000" rev 1.10/1.00 addr 2

If I then turn it off or disconnect the USB cable, the system completely
freezes and I have to force power off by keeping the power button
pressed. I have tried all USB ports on the system with no better
results. Also, a different cable did not change anything.

Here is what I transcribed from a picture taken from the panic message:

$ uvm_fault(0xffffffff828b76c8,  0x10,  0,  1) -> e
kernel: page fault trap, code=0
Stopped at     umidi detach+0x2c7:     movq    
0xfffffffffFfFfff8(%r13,%r15,1),%rdi
    TIO    PID   UID    PRFLAGS    PFLAGS  CPU  COMMAND
*356252  12133     0    0x14000     0x200    0K usbtask
umidi_detach(ffff800001faa600,1) at umidi_detach+0x2c7
config_detach(ffFf800001faa600,1) at config_detach+0x166
usbd_detach(ffff800001739300,ffff8000008cff00) at usbd_detach+0x5a
uhub_port_connect(ffff8000008cff00,1,2a0) at uhub port_connect+0x82
uhub_explore(ffff80000091d500) at uhub_explore+0xb8
usb_explore(ffff80000091d400) at usb_expLore+0x13c
usb_task_thread(ffff8000380a31d0) at usb_task_thread+0x110
end trace frame: 0x0, count: 8

I tested another generic MIDI controller (KORG nanoKONTROL), and it
works fine on this system under OpenBSD. There is also a Linux partition
on this machine. The Behringer works fine there, so it does not seem to
be an obvious hardware issue.

$ usbdevs -v
Controller /dev/usb0:
addr 01: 1022:0000 AMD, xHCI root hub
         super speed, self powered, config 1, rev 1.00
         driver: uhub0
addr 02: 0bda:5411 Generic, 4-Port USB 2.0 Hub
         high speed, self powered, config 1, rev 1.27
         driver: uhub2
addr 03: 046a:c12a CHERRY, CHERRY USB KEYBOARD
         full speed, power 100 mA, config 1, rev 1.00
         driver: uhidev0
         driver: uhidev1
addr 04: 145f:01c8 vendor 0x145f, Trust Wireless Mouse
         full speed, power 100 mA, config 1, rev 2.00
         driver: uhidev2
addr 05: 05e3:0608 Genesys Logic, USB2.0 Hub
         high speed, self powered, config 1, rev 88.32
         driver: uhub3
addr 06: 0582:00e7 Roland, UA-25EX
         full speed, power 480 mA, config 1, rev 1.01
         driver: uaudio0
addr 07: 0bda:0411 Generic, 4-Port USB 3.0 Hub
         super speed, self powered, config 1, rev 1.27
         driver: uhub4
addr 08: 0944:010f KORG INC., nanoKONTROL
         full speed, power 100 mA, config 1, rev 1.00
         driver: umidi1
Controller /dev/usb1:
addr 01: 1022:0000 AMD, xHCI root hub
         super speed, self powered, config 1, rev 1.00
         driver: uhub1
addr 02: 1397:00bc BEHRINGER, BCF2000
         full speed, self powered, config 1, rev 1.00
         driver: umidi0
         driver: ugen0

To rule out a problem with OpenBSD, I connected the Behringer to my
laptop, which is also running OpenBSD 7.6:

umidi0 at uhub3 port 2 configuration 1 interface 1 "BEHRINGER BCF2000" rev 
1.10/1.00 addr 3
umidi0: (genuine USB-MIDI)
umidi0: out=1, in=1
midi0 at umidi0: <USB MIDI I/F>
ugen0 at uhub3 port 2 configuration 1 "BEHRINGER BCF2000" rev 1.10/1.00 addr 3

It works flawlessly on the laptop. I could record and play back fader
movements using midish. Maybe I am missing something obvious, but I
don't see it right now.
OpenBSD 7.6 (GENERIC.MP) #338: Mon Sep 30 08:55:35 MDT 2024
    dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 14939992064 (14247MB)
avail mem = 14463836160 (13793MB)
random: good seed from bootblocks
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 3.2 @ 0xdce24000 (24 entries)
bios0: vendor American Megatrends Inc. version "P3.60" date 10/28/2019
bios0: ASRock A300M-STX
efi0 at bios0: UEFI 2.7
efi0: American Megatrends rev 0x5000e
acpi0 at bios0: ACPI 6.0
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP APIC FPDT FIDT SSDT SSDT SSDT MCFG AAFT HPET UEFI VFCT 
IVRS SSDT CRAT CDIT BGRT SSDT SSDT SSDT WSMT
acpi0: wakeup devices GPP0(S4) GPP2(S4) GPP3(S4) GPP4(S4) GPP5(S4) GPP6(S4) 
GP17(S4) XHC0(S4) XHC1(S4) GP18(S4) GPP1(S4) PTXH(S4)
acpitimer0 at acpi0: 3579545 Hz, 32 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.00 MHz, 17-18-01, patch 
08108102
cpu0: cpuid 1 
edx=178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT>
 
ecx=76d8320b<SSE3,PCLMUL,MWAIT,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,MOVBE,POPCNT,AES,XSAVE,AVX,F16C,RDRAND>
cpu0: cpuid 6 eax=4<ARAT> ecx=1<EFFFREQ>
cpu0: cpuid 7.0 
ebx=209c01a9<FSGSBASE,BMI1,AVX2,SMEP,BMI2,RDSEED,ADX,SMAP,CLFLUSHOPT,SHA>
cpu0: cpuid d.1 eax=f<XSAVEOPT,XSAVEC,XGETBV1,XSAVES>
cpu0: cpuid 80000001 edx=2fd3fbff<NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG> 
ecx=35c233ff<LAHF,CMPLEG,SVM,EAPICSP,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,SKINIT,TCE,TOPEXT,CPCTR,DBKP,PCTRL3,MWAITX>
cpu0: cpuid 80000007 edx=6599<HWPSTATE,ITSC>
cpu0: cpuid 80000008 ebx=1007<IBPB>
cpu0: cpuid 8000001F eax=f<SME,SEV,PFLUSH_MSR,SEVES> ecx=f
cpu0: 32KB 64b/line 8-way D-cache, 64KB 64b/line 4-way I-cache, 512KB 64b/line 
8-way L2 cache, 4MB 64b/line 16-way L3 cache
cpu0: smt 0, core 0, package 0
mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
cpu0: apic clock running at 25MHz
cpu0: mwait min=64, max=64, C-substates=1.1, IBE
cpu1 at mainbus0: apid 2 (application processor)
cpu1: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.00 MHz, 17-18-01, patch 
08108102
cpu1: smt 0, core 1, package 0
cpu2 at mainbus0: apid 4 (application processor)
cpu2: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.00 MHz, 17-18-01, patch 
08108102
cpu2: smt 0, core 2, package 0
cpu3 at mainbus0: apid 6 (application processor)
cpu3: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.00 MHz, 17-18-01, patch 
08108102
cpu3: smt 0, core 3, package 0
cpu4 at mainbus0: apid 1 (application processor)
cpu4: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.01 MHz, 17-18-01, patch 
08108102
cpu4: smt 1, core 0, package 0
cpu5 at mainbus0: apid 3 (application processor)
cpu5: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.01 MHz, 17-18-01, patch 
08108102
cpu5: smt 1, core 1, package 0
cpu6 at mainbus0: apid 5 (application processor)
cpu6: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.01 MHz, 17-18-01, patch 
08108102
cpu6: smt 1, core 2, package 0
cpu7 at mainbus0: apid 7 (application processor)
cpu7: AMD Ryzen 5 3400G with Radeon Vega Graphics, 3700.01 MHz, 17-18-01, patch 
08108102
cpu7: smt 1, core 3, package 0
ioapic0 at mainbus0: apid 9 pa 0xfec00000, version 21, 24 pins
ioapic1 at mainbus0: apid 10 pa 0xfec01000, version 21, 32 pins
acpimcfg0 at acpi0
acpimcfg0: addr 0xf8000000, bus 0-63
acpihpet0 at acpi0: 14318180 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 1 (GPP0)
acpiprt2 at acpi0: bus -1 (GPP2)
acpiprt3 at acpi0: bus -1 (GPP3)
acpiprt4 at acpi0: bus -1 (GPP4)
acpiprt5 at acpi0: bus 2 (GPP5)
acpiprt6 at acpi0: bus 3 (GPP6)
acpiprt7 at acpi0: bus 4 (GP17)
acpiprt8 at acpi0: bus 5 (GP18)
acpiprt9 at acpi0: bus -1 (GPP1)
acpipci0 at acpi0 PCI0: 0x00000010 0x00000011 0x00000000
acpicmos0 at acpi0
com0 at acpi0 UAR1 addr 0x3f8/0x8 irq 4: ns16550a, 16 byte fifo
acpibtn0 at acpi0: PWRB
amdgpio0 at acpi0 GPIO uid 0 addr 0xfed81500/0x400 irq 7, 184 pins
"PNP0C14" at acpi0 not configured
acpicpu0 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpicpu1 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpicpu2 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpicpu3 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpicpu4 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpicpu5 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpicpu6 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpicpu7 at acpi0: C2(0@400 io@0x414), C1(0@1 mwait), PSS
acpivideo0 at acpi0: VGA_
acpivout0 at acpivideo0: LCD_
acpivideo1 at acpi0: VGA_
acpivout1 at acpivideo1: LCD_
cpu0: 3700 MHz: speeds: 3700 2300 1400 MHz
pci0 at mainbus0 bus 0
ksmn0 at pci0 dev 0 function 0 "AMD 17h/1xh Root Complex" rev 0x00
"AMD 17h/1xh IOMMU" rev 0x00 at pci0 dev 0 function 2 not configured
pchb0 at pci0 dev 1 function 0 "AMD 17h PCIE" rev 0x00
ppb0 at pci0 dev 1 function 1 "AMD 17h/1xh PCIE" rev 0x00: msi
pci1 at ppb0 bus 1
nvme0 at pci1 dev 0 function 0 "Samsung SM981/PM981 NVMe" rev 0x00: msix, NVMe 
1.3
nvme0: Samsung SSD 970 EVO Plus 500GB, firmware 2B2QEXM7, serial S4EVNMFN747549K
scsibus1 at nvme0: 2 targets, initiator 0
sd0 at scsibus1 targ 1 lun 0: <NVMe, Samsung SSD 970, 2B2Q>
sd0: 476940MB, 512 bytes/sector, 976773168 sectors
ppb1 at pci0 dev 1 function 6 "AMD 17h/1xh PCIE" rev 0x00: msi
pci2 at ppb1 bus 2
iwm0 at pci2 dev 0 function 0 "Intel Dual Band Wireless-AC 9260" rev 0x29, msix
ppb2 at pci0 dev 1 function 7 "AMD 17h/1xh PCIE" rev 0x00: msi
pci3 at ppb2 bus 3
re0 at pci3 dev 0 function 0 "Realtek 8168" rev 0x15: RTL8168H/8111H (0x5400), 
msi, address a8:a1:59:23:6c:14
rgephy0 at re0 phy 7: RTL8251, rev. 0
pchb1 at pci0 dev 8 function 0 "AMD 17h PCIE" rev 0x00
ppb3 at pci0 dev 8 function 1 "AMD 17h/1xh PCIE" rev 0x00
pci4 at ppb3 bus 4
amdgpu0 at pci4 dev 0 function 0 "ATI Picasso" rev 0xc8
drm0 at amdgpu0
amdgpu0: msi
azalia0 at pci4 dev 0 function 1 "ATI Radeon Vega HD Audio" rev 0x00: msi
azalia0: no supported codecs
ccp0 at pci4 dev 0 function 2 "AMD 17h/1xh Crypto" rev 0x00: msix
psp0 at ccp0
xhci0 at pci4 dev 0 function 3 "AMD 17h/1xh xHCI" rev 0x00: msix, xHCI 1.10
usb0 at xhci0: USB revision 3.0
uhub0 at usb0 configuration 1 interface 0 "AMD xHCI root hub" rev 3.00/1.00 
addr 1
xhci1 at pci4 dev 0 function 4 "AMD 17h/1xh xHCI" rev 0x00: msix, xHCI 1.10
usb1 at xhci1: USB revision 3.0
uhub1 at usb1 configuration 1 interface 0 "AMD xHCI root hub" rev 3.00/1.00 
addr 1
azalia1 at pci4 dev 0 function 6 "AMD 17h/1xh HD Audio" rev 0x00: msi
azalia1: codecs: Realtek ALC233
audio0 at azalia1
ppb4 at pci0 dev 8 function 2 "AMD 17h/1xh PCIE" rev 0x00
pci5 at ppb4 bus 5
ahci0 at pci5 dev 0 function 0 "AMD FCH AHCI" rev 0x61: msi, AHCI 1.3.1
ahci0: port 0: 6.0Gb/s
scsibus2 at ahci0: 32 targets
sd1 at scsibus2 targ 0 lun 0: <ATA, Samsung SSD 870, SVQ0> naa.5002538f70600edb
sd1: 953869MB, 512 bytes/sector, 1953525168 sectors, thin
piixpm0 at pci0 dev 20 function 0 "AMD FCH SMBus" rev 0x61: SMI
iic0 at piixpm0
spdmem0 at iic0 addr 0x50: 8GB DDR4 SDRAM PC4-25600 SO-DIMM
spdmem1 at iic0 addr 0x51: 8GB DDR4 SDRAM PC4-25600 SO-DIMM
iic1 at piixpm0
pcib0 at pci0 dev 20 function 3 "AMD FCH LPC" rev 0x51
pchb2 at pci0 dev 24 function 0 "AMD 17h/1xh Data Fabric" rev 0x00
pchb3 at pci0 dev 24 function 1 "AMD 17h/1xh Data Fabric" rev 0x00
pchb4 at pci0 dev 24 function 2 "AMD 17h/1xh Data Fabric" rev 0x00
pchb5 at pci0 dev 24 function 3 "AMD 17h/1xh Data Fabric" rev 0x00
pchb6 at pci0 dev 24 function 4 "AMD 17h/1xh Data Fabric" rev 0x00
pchb7 at pci0 dev 24 function 5 "AMD 17h/1xh Data Fabric" rev 0x00
pchb8 at pci0 dev 24 function 6 "AMD 17h/1xh Data Fabric" rev 0x00
pchb9 at pci0 dev 24 function 7 "AMD 17h/1xh Data Fabric" rev 0x00
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5 irq 1 irq 12
pckbd0 at pckbc0 (kbd slot)
wskbd0 at pckbd0: console keyboard
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
vmm0 at mainbus0: SVM/RVI
efifb at mainbus0 not configured
uhidev0 at uhub0 port 2 configuration 1 interface 0 "CHERRY CHERRY USB 
KEYBOARD" rev 2.00/1.00 addr 2
uhidev0: iclass 3/1
ukbd0 at uhidev0: 8 variable keys, 6 key codes
wskbd1 at ukbd0 mux 1
uhidev1 at uhub0 port 2 configuration 1 interface 1 "CHERRY CHERRY USB 
KEYBOARD" rev 2.00/1.00 addr 2
uhidev1: iclass 3/0, 5 report ids
ukbd1 at uhidev1 reportid 1: 120 variable keys, 0 key codes
wskbd2 at ukbd1 mux 1
uhid0 at uhidev1 reportid 2: input=1, output=0, feature=0
ucc0 at uhidev1 reportid 3: 573 usages, 20 keys, array
wskbd3 at ucc0 mux 1
uhid1 at uhidev1 reportid 5: input=0, output=0, feature=5
uhub2 at uhub0 port 3 configuration 1 interface 0 "Genesys Logic USB2.0 Hub" 
rev 2.00/88.32 addr 3
uaudio0 at uhub2 port 2 configuration 1 interface 1 "Roland UA-25EX" rev 
1.10/1.01 addr 4
uaudio0: class v1, full-speed, sync, channels: 2 play, 2 rec, 0 ctls
audio1 at uaudio0
vscsi0 at root
scsibus3 at vscsi0: 256 targets
softraid0 at root
scsibus4 at softraid0: 256 targets
sd2 at scsibus4 targ 1 lun 0: <OPENBSD, SR CRYPTO, 006>
sd2: 953609MB, 512 bytes/sector, 1952992063 sectors
root on sd2a (1445094d46abceab.a) swap on sd2b dump on sd2b
iwm0: hw rev 0x320, fw ver 46.7e3e4b69.0, address 34:2e:b7:90:23:51
amdgpu0: PICASSO GC 9.1.0 11 CU rev 0x01
amdgpu0: 1920x1080, 32bpp
wsdisplay0 at amdgpu0 mux 1: console (std, vt100 emulation), using wskbd0
wskbd1: connecting to wsdisplay0
wskbd2: connecting to wsdisplay0
wskbd3: connecting to wsdisplay0
wsdisplay0: screen 1-5 added (std, vt100 emulation)

Reply via email to