umcs (4-Port-USB-serial) triggering way too much ehci IRQs

Lev Serebryakov lev at
Mon Sep 16 21:37:28 UTC 2013

Hello, Harald.
You wrote 16 сентября 2013 г., 20:11:38:

HS> I have some of these 4-Port-Serial-USB-Hubs:
HS> They have the MosChip MCS7840 inside, wich also understands RS485/422
HS> besides RS232.

HS> FreeBSDs umcs(4) supports the RS232 mode with standard baudrates and
HS> works with that device.

HS> Unfortunately, as soon as I open any of the 4 cuaU0.x ports, there are
HS> 500irq/s from ehci.
  I have only one 2-port noname adapter with this chip, which I used to
 write this driver. And it works fine (at least right now):

usbus0: 12Mbps Full Speed USB v1.0
usbus1: 12Mbps Full Speed USB v1.0
usbus2: 12Mbps Full Speed USB v1.0
usbus3: 480Mbps High Speed USB v2.0
ugen3.2: <vendor 0x9710> at usbus3
umcs78400: <vendor 0x9710 product 0x7840, rev 2.00/0.01, addr 2> on usbus3
umcs78400: Chip mcs7840, found 2 active ports
umcs78400: On-die confguration: RST: active low, HRD: yes, PLL: avail, POR: avail, Ports: 4, EEPROM write disabled, IrDA is not available

% vmstat -i
interrupt                          total       rate
irq1: atkbd0                         799          0
irq18: uhci2 ehci0+                 1210          0
irq20: hpet0                   529850590        647
irq21: uhci1                     2861007          3
irq23: uhci3 ehci1               2181202          2
irq256: em0                   1139745179       1393
irq257: ahci0                   76093174         93
Total                         1750731961       2140

  I have never seen other devices on this chip and I have never had chance
 to try it with 4-port version of device...

  To be honest, I didn't know much about USB at all, I wrote this driver
without complete understanding USB magic and use USB only as transport to
access MCS7840 registers...

 Maybe, local USB Guru Hans Petter Selasky could give cime advicec how to
 debug this situation. I've added freebsd-usb@ to CC:

// Black Lion AKA Lev Serebryakov <lev at>

More information about the freebsd-stable mailing list