[CentOS] Question about "generic" USB <=> Serial Port kernel drivers...

Fri Apr 27 02:13:56 UTC 2018
Robert Heller <heller at deepsoft.com>

OK, I am running CentOS 6 on my Laptop and Desktop, presently kernel version
2.6.32-696.20.1.el6.x86_64 (yes, a version or so out of date -- I'll probably 
do an update soon -- non-trivial since my Internet connection is via dialup).

I recently bought a couple of Adafruit Arduino compatibles, a Flora and a
Metro 328. Hooking up the Flora and the Metro to a Raspberry Pi running
Raspbian (kernel 4.9.35-v7+), tells me that the Metro 328's USB uses a FTDI
USB serial interface (ftdi_sio.ko) and the Flora uses the cdc_acm (cdc-acm.ko)
USB serial interface. Both of these drivers are available with CentOS 6's
kernel, but since Adafruit uses their own Vendor & Product IDs and my (old)
kernel's ftdi_sio and cdc-acm drivers don't have Adafruit Vendor & Product
IDs, the drivers don't automagically connect. The ftdi_sio has parameters for
the Vendor & Product IDs, and specifing the product ID for the Metro 328
allows the driver to latch onto the Metro 328's USB connect and things work (I
get a /dev/ttyUSB0 device). The cdc-acm does not have any parameters and I 
don't see any way to get it to connect.  I am pretty sure all Adafruit did was 
change the programming of the USB chip to have their Vendor & Product IDs and 
the driver should work (the FTDI one does, once the Vendor & Product IDs are 
passed to it).

My question: since the cdc-acm is not parameterized, I am guessing I need to
get the kernel module source (from RH's kernel source RPM? Or maybe Elrepo has
it?), hack in the Adafruit Vendor & Product IDs into its table of Vendor &
Product IDs and recompile it. Is this correct? Also: is there some "trick"
that allows me to create a kernel module that will work with kernel updates,
without having to re-compile it after every kernel update? 

Robert Heller             -- 978-544-6933
Deepwoods Software        -- Custom Software Services
http://www.deepsoft.com/  -- Linux Administration Services
heller at deepsoft.com       -- Webhosting Services