diff options
author | Ian Abbott <abbotti@mev.co.uk> | 2017-02-03 15:25:00 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-03-14 22:02:40 -0400 |
commit | c4c590be494404531f54fa1acf580a08031f5bb9 (patch) | |
tree | 533669369b086574b1ea23e8d185a79cd408f8d7 /drivers/tty | |
parent | e5b9778761558ff3d239ed76925a1a7a734918ea (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.c | 13 |
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 |