|| ||"Straub, Michael" <Michael.Straub@avocent.com>|
|| ||[RFC][PATCH 0/13] Equinox multi-port serial (SST) driver|
|| ||Thu, 22 Jun 2006 09:04:44 -0400|
This patchset adds the Equinox multi-port serial (SST) driver. Later
versions of the board are manufactured and branded by Avocent
SST boards contain one or more ICP ASICs (intelligent communications
processor). There are two ICP types - a 4-channel ICP and a 64-channel
SST boards are PCI boards that contain one or more of these ICP ASICs in
to support 4, 8, 16, 64 or 128 serial ports.
This driver was derived from a previous version that has been in-use for
about 10 years. The source for the previous driver is licensed under
GPL. It is used to build an "out-of-tree" module.
The version provided here has been substantially re-engineered to
comply with the linux coding style and practices. This driver has been
built and tested on x86 (single and dual processor) and ppc systems.
Note that the driver is somewhat large. Seperated into several source
files (in its own directory in drivers/char) to make it more manageable.
This is the first attempt to mainline the driver. Any comments would be
part 1: Provides a modification to the tty subsystem routine
tty_register_device in order to make the allocated class device
to tty drivers.
part 2: Adds the appropriate vendor and device ids to PCI id table.
part 3: Modifies existing drivers/char Kconfig and Makefile.
part 4: Adds new Kconfig and Makefile. Note this driver is in its own
part 5: New header file. General defines.
part 6: New header file. Register definitions for ICP ASICs.
part 7: New header file. Structures and constants used by driver
part 8: New source file. Driver "main". Does initialization and
part 9: New source file. Provides standard TTY interface routines.
part 10: New source file. Provides support for standard TTY ioctl
part 11: New source file. Timer based routines.
part 12: New source file. Manages sysfs attribute files used for status
part 13: New source file. Miscellaneous routines.
Signed-off-by: Mike Straub <firstname.lastname@example.org>
drivers/char/Kconfig | 2
drivers/char/Makefile | 1
drivers/char/eqnx/Kconfig | 11
drivers/char/eqnx/Makefile | 6
drivers/char/eqnx/eqnx.h | 362 +++++++
drivers/char/eqnx/eqnx_def.h | 37
drivers/char/eqnx/icp.h | 857 ++++++++++++++++++
drivers/char/eqnx/sst.c | 1626 ++++++++++++++++++++++++++++++++++
drivers/char/eqnx/sst_ioctl.c | 440 +++++++++
drivers/char/eqnx/sst_misc.c | 758 ++++++++++++++++
drivers/char/eqnx/sst_poll.c | 1941
drivers/char/eqnx/sst_sysfs.c | 1379 +++++++++++++++++++++++++++++
drivers/char/eqnx/sst_tty.c | 1961
drivers/char/tty_io.c | 8
include/linux/pci_ids.h | 30
include/linux/tty.h | 4
16 files changed, 9418 insertions(+), 5 deletions(-)