umcs (4-Port-USB-serial) triggering way too much ehci IRQs
lev at FreeBSD.org
Mon Sep 16 21:37:28 UTC 2013
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 FreeBSD.org>
More information about the freebsd-stable