* [PATCH] serial: support the Exsys EX-4055 4S four-port card
@ 2005-10-24 16:58 Bjorn Helgaas
2005-10-24 21:13 ` Russell King
0 siblings, 1 reply; 2+ messages in thread
From: Bjorn Helgaas @ 2005-10-24 16:58 UTC (permalink / raw)
To: Russell King; +Cc: linux-serial, Wolfgang Denk
Tested by Wolfgang Denk with this device:
00:0f.0 Network controller: PLX Technology, Inc. PCI <-> IOBus Bridge (rev 01)
Subsystem: Exsys EX-4055 4S(16C550) RS-232
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Interrupt: pin A routed to IRQ 10
Region 0: Memory at 80100000 (32-bit, non-prefetchable) [size=128]
Region 1: I/O ports at 7080 [size=128]
Region 2: I/O ports at 7400 [size=32]
00:0f.0 Class 0280: 10b5:9050 (rev 01)
Subsystem: d84d:4055
Results with this patch:
Serial: 8250/16550 driver $Revision: 1.90 $ 32 ports, IRQ sharing enabled
ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
PCI: Found IRQ 10 for device 0000:00:0f.0
ttyS4 at I/O 0x7400 (irq = 10) is a 16550A
ttyS5 at I/O 0x7408 (irq = 10) is a 16550A
ttyS6 at I/O 0x7410 (irq = 10) is a 16550A
ttyS7 at I/O 0x7418 (irq = 10) is a 16550A
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Index: denk/drivers/serial/8250_pci.c
===================================================================
--- denk.orig/drivers/serial/8250_pci.c 2005-10-24 10:21:43.000000000 -0600
+++ denk/drivers/serial/8250_pci.c 2005-10-24 10:21:44.000000000 -0600
@@ -226,8 +226,10 @@
}
irq_config = 0x41;
- if (dev->vendor == PCI_VENDOR_ID_PANACOM)
+ if (dev->vendor == PCI_VENDOR_ID_PANACOM ||
+ dev->subsystem_vendor == PCI_SUBVENDOR_ID_EXSYS) {
irq_config = 0x43;
+ }
if ((dev->vendor == PCI_VENDOR_ID_PLX) &&
(dev->device == PCI_DEVICE_ID_PLX_ROMULUS)) {
/*
@@ -664,6 +666,15 @@
{
.vendor = PCI_VENDOR_ID_PLX,
.device = PCI_DEVICE_ID_PLX_9050,
+ .subvendor = PCI_SUBVENDOR_ID_EXSYS,
+ .subdevice = PCI_SUBDEVICE_ID_EXSYS_4055,
+ .init = pci_plx9050_init,
+ .setup = pci_default_setup,
+ .exit = __devexit_p(pci_plx9050_exit),
+ },
+ {
+ .vendor = PCI_VENDOR_ID_PLX,
+ .device = PCI_DEVICE_ID_PLX_9050,
.subvendor = PCI_SUBVENDOR_ID_KEYSPAN,
.subdevice = PCI_SUBDEVICE_ID_KEYSPAN_SX2,
.init = pci_plx9050_init,
@@ -927,6 +938,7 @@
pbn_panacom,
pbn_panacom2,
pbn_panacom4,
+ pbn_exsys_4055,
pbn_plx_romulus,
pbn_oxsemi,
pbn_intel_i960,
@@ -1292,6 +1304,13 @@
.reg_shift = 7,
},
+ [pbn_exsys_4055] = {
+ .flags = FL_BASE2,
+ .num_ports = 4,
+ .base_baud = 115200,
+ .uart_offset = 8,
+ },
+
/* I think this entry is broken - the first_offset looks wrong --rmk */
[pbn_plx_romulus] = {
.flags = FL_BASE2,
@@ -1853,6 +1872,10 @@
PCI_SUBVENDOR_ID_CHASE_PCIRAS,
PCI_SUBDEVICE_ID_CHASE_PCIRAS8, 0, 0,
pbn_b2_8_460800 },
+ { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050,
+ PCI_SUBVENDOR_ID_EXSYS,
+ PCI_SUBDEVICE_ID_EXSYS_4055, 0, 0,
+ pbn_exsys_4055 },
/*
* Megawolf Romulus PCI Serial Card, from Mike Hudson
* (Exoray@isys.ca)
Index: denk/include/linux/pci_ids.h
===================================================================
--- denk.orig/include/linux/pci_ids.h 2005-10-24 10:21:43.000000000 -0600
+++ denk/include/linux/pci_ids.h 2005-10-24 10:21:44.000000000 -0600
@@ -2696,6 +2696,7 @@
#define PCI_SUBVENDOR_ID_EXSYS 0xd84d
#define PCI_SUBDEVICE_ID_EXSYS_4014 0x4014
+#define PCI_SUBDEVICE_ID_EXSYS_4055 0x4055
#define PCI_VENDOR_ID_TIGERJET 0xe159
#define PCI_DEVICE_ID_TIGERJET_300 0x0001
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH] serial: support the Exsys EX-4055 4S four-port card
2005-10-24 16:58 [PATCH] serial: support the Exsys EX-4055 4S four-port card Bjorn Helgaas
@ 2005-10-24 21:13 ` Russell King
0 siblings, 0 replies; 2+ messages in thread
From: Russell King @ 2005-10-24 21:13 UTC (permalink / raw)
To: Bjorn Helgaas; +Cc: linux-serial, Wolfgang Denk
On Mon, Oct 24, 2005 at 10:58:31AM -0600, Bjorn Helgaas wrote:
> Tested by Wolfgang Denk with this device:
>
> 00:0f.0 Network controller: PLX Technology, Inc. PCI <-> IOBus Bridge (rev 01)
> Subsystem: Exsys EX-4055 4S(16C550) RS-232
> Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
> Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
> Interrupt: pin A routed to IRQ 10
> Region 0: Memory at 80100000 (32-bit, non-prefetchable) [size=128]
> Region 1: I/O ports at 7080 [size=128]
> Region 2: I/O ports at 7400 [size=32]
>
> 00:0f.0 Class 0280: 10b5:9050 (rev 01)
> Subsystem: d84d:4055
>
> Results with this patch:
>
> Serial: 8250/16550 driver $Revision: 1.90 $ 32 ports, IRQ sharing enabled
> ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
> PCI: Found IRQ 10 for device 0000:00:0f.0
> ttyS4 at I/O 0x7400 (irq = 10) is a 16550A
> ttyS5 at I/O 0x7408 (irq = 10) is a 16550A
> ttyS6 at I/O 0x7410 (irq = 10) is a 16550A
> ttyS7 at I/O 0x7418 (irq = 10) is a 16550A
>
> Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Applied, thanks.
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2005-10-24 21:14 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-10-24 16:58 [PATCH] serial: support the Exsys EX-4055 4S four-port card Bjorn Helgaas
2005-10-24 21:13 ` Russell King
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).