This particular 10Gb switch from Netgear has both a standard DB9
serial port for its console, and a mini-USB port, selectable via
switch.  The mini-USB is apparently connected to an internal CP2102
serial/USB adapter (0846:1100).

Comes with Windows drivers on CD; worked out-of-the-box (with 'cp210x'
module) on a random Linux box.  On OpenBSD it gets bound to ugen, but
after adding the device ID to the uslcom(4) driver, console access
works perfectly via cuaU0.

Before:
ugen0 at uhub3 port 1 "Silicon Labs CP2102 USB to UART Bridge
Controller" rev 1.10/1.00 addr 3

After:
uslcom0 at uhub3 port 1 "Silicon Labs CP2102 USB to UART Bridge
Controller" rev 1.10/1.00 addr 2
ucom0 at uslcom0 portno 0

usbdevs -dv:
Controller /dev/usb3:
addr 1: full speed, self powered, config 1, UHCI root hub(0x0000),
Intel(0x8086), rev 1.00
  uhub3
 port 1 addr 2: full speed, power 100 mA, config 1, CP2102 USB to UART
Bridge Controller(0x1100), Silicon Labs(0x0846), rev 1.00,
iSerialNumber 3713515PF00DF
   uslcom0
 port 2 addr 3: low speed, power 100 mA, config 1, APC AP5631(0x0706),
Avocent(0x0624), rev 1.00
   uhidev0
   uhidev1


Diff:
========
Index: sys/dev/usb/usbdevs
===================================================================
RCS file: /cvs/src/sys/dev/usb/usbdevs,v
retrieving revision 1.645
diff -u -p -r1.645 usbdevs
--- sys/dev/usb/usbdevs 16 Feb 2015 14:51:44 -0000 1.645
+++ sys/dev/usb/usbdevs 15 Jun 2015 18:24:38 -0000
@@ -3081,6 +3081,7 @@ product NETGEAR EA101 0x1001 Ethernet
 product NETGEAR EA101X 0x1002 Ethernet
 product NETGEAR FA101 0x1020 10/100 Ethernet
 product NETGEAR FA120 0x1040 USB 2.0 Fast Ethernet
+product NETGEAR M7100 0x1100 M7100 switch console
 product NETGEAR MA111NA 0x4110  802.11b
 product NETGEAR MA111V2 0x4230  802.11b V2
 product NETGEAR WG111V2_2 0x4240 PrismGT USB 2.0 WLAN
Index: sys/dev/usb/uslcom.c
===================================================================
RCS file: /cvs/src/sys/dev/usb/uslcom.c,v
retrieving revision 1.33
diff -u -p -r1.33 uslcom.c
--- sys/dev/usb/uslcom.c 23 Nov 2014 21:18:46 -0000 1.33
+++ sys/dev/usb/uslcom.c 15 Jun 2015 18:24:39 -0000
@@ -142,6 +142,7 @@ static const struct usb_devno uslcom_dev
  { USB_VENDOR_LINKINSTRUMENTS, USB_PRODUCT_LINKINSTRUMENTS_MSO28_2 },
  { USB_VENDOR_MEI, USB_PRODUCT_MEI_CASHFLOW_SC },
  { USB_VENDOR_MEI, USB_PRODUCT_MEI_S2000 },
+ { USB_VENDOR_NETGEAR, USB_PRODUCT_NETGEAR_M7100 },
  { USB_VENDOR_OWEN, USB_PRODUCT_OWEN_AC4 },
  { USB_VENDOR_PHILIPS, USB_PRODUCT_PHILIPS_ACE1001 },
  { USB_VENDOR_RENESAS, USB_PRODUCT_RENESAS_RX610 },
========
 (I also attached the diff, because gmail appears to be munging tabs
when I paste it inline.  Sorry about that; at least it's only two
lines.)

-Andrew
Index: sys/dev/usb/usbdevs
===================================================================
RCS file: /cvs/src/sys/dev/usb/usbdevs,v
retrieving revision 1.645
diff -u -p -r1.645 usbdevs
--- sys/dev/usb/usbdevs 16 Feb 2015 14:51:44 -0000      1.645
+++ sys/dev/usb/usbdevs 15 Jun 2015 18:24:38 -0000
@@ -3081,6 +3081,7 @@ product NETGEAR EA101             0x1001  Ethernet
 product NETGEAR EA101X         0x1002  Ethernet
 product NETGEAR FA101          0x1020  10/100 Ethernet
 product NETGEAR FA120          0x1040  USB 2.0 Fast Ethernet
+product NETGEAR M7100          0x1100  M7100 switch console
 product NETGEAR MA111NA                0x4110  802.11b
 product NETGEAR MA111V2                0x4230  802.11b V2
 product        NETGEAR WG111V2_2       0x4240  PrismGT USB 2.0 WLAN
Index: sys/dev/usb/uslcom.c
===================================================================
RCS file: /cvs/src/sys/dev/usb/uslcom.c,v
retrieving revision 1.33
diff -u -p -r1.33 uslcom.c
--- sys/dev/usb/uslcom.c        23 Nov 2014 21:18:46 -0000      1.33
+++ sys/dev/usb/uslcom.c        15 Jun 2015 18:24:39 -0000
@@ -142,6 +142,7 @@ static const struct usb_devno uslcom_dev
        { USB_VENDOR_LINKINSTRUMENTS,   USB_PRODUCT_LINKINSTRUMENTS_MSO28_2 },
        { USB_VENDOR_MEI,               USB_PRODUCT_MEI_CASHFLOW_SC },
        { USB_VENDOR_MEI,               USB_PRODUCT_MEI_S2000 },
+       { USB_VENDOR_NETGEAR,           USB_PRODUCT_NETGEAR_M7100 },
        { USB_VENDOR_OWEN,              USB_PRODUCT_OWEN_AC4 },
        { USB_VENDOR_PHILIPS,           USB_PRODUCT_PHILIPS_ACE1001 },
        { USB_VENDOR_RENESAS,           USB_PRODUCT_RENESAS_RX610 },

Reply via email to