|
@@ -1998,6 +1998,7 @@ pci_wch_ch38x_setup(struct serial_private *priv,
|
|
|
#define PCIE_DEVICE_ID_WCH_CH382_2S1P 0x3250
|
|
|
#define PCIE_DEVICE_ID_WCH_CH384_4S 0x3470
|
|
|
|
|
|
+#define PCI_DEVICE_ID_EXAR_XR17V4358 0x4358
|
|
|
#define PCI_DEVICE_ID_EXAR_XR17V8358 0x8358
|
|
|
|
|
|
/* Unknown vendors/cards - this should not be in linux/pci_ids.h */
|
|
@@ -2522,6 +2523,13 @@ static struct pci_serial_quirk pci_serial_quirks[] __refdata = {
|
|
|
.subdevice = PCI_ANY_ID,
|
|
|
.setup = pci_xr17v35x_setup,
|
|
|
},
|
|
|
+ {
|
|
|
+ .vendor = PCI_VENDOR_ID_EXAR,
|
|
|
+ .device = PCI_DEVICE_ID_EXAR_XR17V4358,
|
|
|
+ .subvendor = PCI_ANY_ID,
|
|
|
+ .subdevice = PCI_ANY_ID,
|
|
|
+ .setup = pci_xr17v35x_setup,
|
|
|
+ },
|
|
|
{
|
|
|
.vendor = PCI_VENDOR_ID_EXAR,
|
|
|
.device = PCI_DEVICE_ID_EXAR_XR17V8358,
|
|
@@ -3008,6 +3016,7 @@ enum pci_board_num_t {
|
|
|
pbn_exar_XR17V352,
|
|
|
pbn_exar_XR17V354,
|
|
|
pbn_exar_XR17V358,
|
|
|
+ pbn_exar_XR17V4358,
|
|
|
pbn_exar_XR17V8358,
|
|
|
pbn_exar_ibm_saturn,
|
|
|
pbn_pasemi_1682M,
|
|
@@ -3695,6 +3704,14 @@ static struct pciserial_board pci_boards[] = {
|
|
|
.reg_shift = 0,
|
|
|
.first_offset = 0,
|
|
|
},
|
|
|
+ [pbn_exar_XR17V4358] = {
|
|
|
+ .flags = FL_BASE0,
|
|
|
+ .num_ports = 12,
|
|
|
+ .base_baud = 7812500,
|
|
|
+ .uart_offset = 0x400,
|
|
|
+ .reg_shift = 0,
|
|
|
+ .first_offset = 0,
|
|
|
+ },
|
|
|
[pbn_exar_XR17V8358] = {
|
|
|
.flags = FL_BASE0,
|
|
|
.num_ports = 16,
|
|
@@ -5112,6 +5129,10 @@ static struct pci_device_id serial_pci_tbl[] = {
|
|
|
PCI_ANY_ID, PCI_ANY_ID,
|
|
|
0,
|
|
|
0, pbn_exar_XR17V358 },
|
|
|
+ { PCI_VENDOR_ID_EXAR, PCI_DEVICE_ID_EXAR_XR17V4358,
|
|
|
+ PCI_ANY_ID, PCI_ANY_ID,
|
|
|
+ 0,
|
|
|
+ 0, pbn_exar_XR17V4358 },
|
|
|
{ PCI_VENDOR_ID_EXAR, PCI_DEVICE_ID_EXAR_XR17V8358,
|
|
|
PCI_ANY_ID, PCI_ANY_ID,
|
|
|
0,
|