aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty
diff options
context:
space:
mode:
authorIan Abbott <abbotti@mev.co.uk>2017-02-03 15:25:00 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-03-14 22:02:40 -0400
commitc4c590be494404531f54fa1acf580a08031f5bb9 (patch)
tree533669369b086574b1ea23e8d185a79cd408f8d7 /drivers/tty
parente5b9778761558ff3d239ed76925a1a7a734918ea (diff)
serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards
commit 1c9c858e2ff8ae8024a3d75d2ed080063af43754 upstream. The MKS Instruments SCOM-0800 and SCOM-0801 cards (originally by Tenta Technologies) are 3U CompactPCI serial cards with 4 and 8 serial ports, respectively. The first 4 ports are implemented by an OX16PCI954 chip, and the second 4 ports are implemented by an OX16C954 chip on a local bus, bridged by the second PCI function of the OX16PCI954. The ports are jumper-selectable as RS-232 and RS-422/485, and the UARTs use a non-standard oscillator frequency of 20 MHz (base_baud = 1250000). Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty')
-rw-r--r--drivers/tty/serial/8250/8250_pci.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c
index b98c1578f45a..4d09bd495a88 100644
--- a/drivers/tty/serial/8250/8250_pci.c
+++ b/drivers/tty/serial/8250/8250_pci.c
@@ -2688,6 +2688,8 @@ enum pci_board_num_t {
2688 pbn_b0_4_1152000_200, 2688 pbn_b0_4_1152000_200,
2689 pbn_b0_8_1152000_200, 2689 pbn_b0_8_1152000_200,
2690 2690
2691 pbn_b0_4_1250000,
2692
2691 pbn_b0_2_1843200, 2693 pbn_b0_2_1843200,
2692 pbn_b0_4_1843200, 2694 pbn_b0_4_1843200,
2693 2695
@@ -2919,6 +2921,13 @@ static struct pciserial_board pci_boards[] = {
2919 .uart_offset = 0x200, 2921 .uart_offset = 0x200,
2920 }, 2922 },
2921 2923
2924 [pbn_b0_4_1250000] = {
2925 .flags = FL_BASE0,
2926 .num_ports = 4,
2927 .base_baud = 1250000,
2928 .uart_offset = 8,
2929 },
2930
2922 [pbn_b0_2_1843200] = { 2931 [pbn_b0_2_1843200] = {
2923 .flags = FL_BASE0, 2932 .flags = FL_BASE0,
2924 .num_ports = 2, 2933 .num_ports = 2,
@@ -5549,6 +5558,10 @@ static struct pci_device_id serial_pci_tbl[] = {
5549 { PCI_DEVICE(0x1c29, 0x1108), .driver_data = pbn_fintek_8 }, 5558 { PCI_DEVICE(0x1c29, 0x1108), .driver_data = pbn_fintek_8 },
5550 { PCI_DEVICE(0x1c29, 0x1112), .driver_data = pbn_fintek_12 }, 5559 { PCI_DEVICE(0x1c29, 0x1112), .driver_data = pbn_fintek_12 },
5551 5560
5561 /* MKS Tenta SCOM-080x serial cards */
5562 { PCI_DEVICE(0x1601, 0x0800), .driver_data = pbn_b0_4_1250000 },
5563 { PCI_DEVICE(0x1601, 0xa801), .driver_data = pbn_b0_4_1250000 },
5564
5552 /* 5565 /*
5553 * These entries match devices with class COMMUNICATION_SERIAL, 5566 * These entries match devices with class COMMUNICATION_SERIAL,
5554 * COMMUNICATION_MODEM or COMMUNICATION_MULTISERIAL 5567 * COMMUNICATION_MODEM or COMMUNICATION_MULTISERIAL