Messages in this thread Patch in this message | | | Date | Mon, 09 Jun 2008 23:04:28 +0300 | From | "Catalin(ux) M BOIE" <> | Subject | Re: [PATCH] Add support for a no-name 4 ports multiserial card |
| |
Russell King wrote: > On Fri, Jun 06, 2008 at 11:14:00AM +0100, Alan Cox wrote: >> On Fri, 6 Jun 2008 10:13:13 +0300 >> "Catalin(ux) M BOIE" <catab@embedromix.ro> wrote: >> >>> It is a no-name PCI card. I found no reference to a producer so I >>> used the fake name "PDR". >> We don't really want to get fake names into pci_ids. I'd rather >> >> >>> .vendor = PCI_VENDOR_ID_PLX, >>> + .device = PCI_DEVICE_ID_PLX_9050, >>> + .subvendor = PCI_VENDOR_ID_PLX, >>> + .subdevice = PCI_SUBDEVICE_ID_PDR, >> Either the hex or a local and obviously unknown name like ID_UNKNOWN_1 >> >> >>> + pbn_plx_pdr, >> _unknown1 >> >>> pbn_oxsemi, >>> pbn_intel_i960, >>> pbn_sgi_ioc3, >>> @@ -1186,6 +1196,13 @@ static struct pciserial_board pci_boards[] __devinitdata = { >>> .base_baud = 115200, >>> .uart_offset = 8, >>> }, >>> + /* PDR */ >>> + [pbn_plx_pdr] = { >> Ditto >> >>> + /* PDR */ >> Ditto >> >>> + { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, >>> + PCI_VENDOR_ID_PLX, >>> + PCI_SUBDEVICE_ID_PDR, 0, 0, >> Ditto >> >> >>> +#define PCI_SUBDEVICE_ID_PDR 0x1584 >>> + >> And not in here at all. > > And there's no need for half the patch either - which I tried to explain > in a previous reply to Catalin but I just got repeated "My email address > has changed to ..." responses... so I gave up.
Rusell, I am very sorry about: sending e-mail without patch, sending from an old mail address and calling you "Rusty".
The last version of the patch is attached. Please Ack it if it is OK for you. If not, please let me know.
Andrew, please hold on a little bit to get the Ack from Russel.
Thank you all for your support and patience!
-- Catalin(ux) M BOIE http://kernel.embedromix.ro/ From fa0fceda773f553c2691f69ad989e81a3c5cc031 Mon Sep 17 00:00:00 2001 From: Catalin(ux) M BOIE <catab@embedromix.ro> Date: Tue, 8 Apr 2008 00:59:20 +0300 Subject: [PATCH] Add support for a no-name 4 ports multiserial card
It is a no-name PCI card. I found no reference to a producer so I used "UNKNOWN_0x1584" as the name.
Full lspci: 01:07.0 0780: 10b5:9050 (rev 01) Subsystem: 10b5:1584 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 1: I/O ports at ec00 [size=128] Region 2: I/O ports at e480 [size=32] Region 3: I/O ports at e400 [size=8] Capabilities: [40] Power Management version 1 Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA \ PME(D0+,D1-,D2-,D3hot+,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- Capabilities: [48] #06 [0080] Capabilities: [4c] Vital Product Data
After: 0000:01:07.0: ttyS4 at I/O 0xe480 (irq = 10) is a 16550A 0000:01:07.0: ttyS5 at I/O 0xe488 (irq = 10) is a 16550A 0000:01:07.0: ttyS6 at I/O 0xe490 (irq = 10) is a 16550A 0000:01:07.0: ttyS7 at I/O 0xe498 (irq = 10) is a 16550A
Signed-off-by: Catalin(ux) M BOIE <catab@embedromix.ro> --- drivers/serial/8250_pci.c | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-)
diff --git a/drivers/serial/8250_pci.c b/drivers/serial/8250_pci.c index 788c355..b64a17c 100644 --- a/drivers/serial/8250_pci.c +++ b/drivers/serial/8250_pci.c @@ -769,6 +769,9 @@ pci_default_setup(struct serial_private *priv, struct pciserial_board *board, #define PCI_SUBDEVICE_ID_POCTAL232 0x0308 #define PCI_SUBDEVICE_ID_POCTAL422 0x0408 +/* Unknown vendors/cards - this should not be in linux/pci_ids.h */ +#define PCI_SUBDEVICE_ID_UNKNOWN_0x1584 0x1584 + /* * Master list of serial port init/setup/exit quirks. * This does not describe the general nature of the port. @@ -884,6 +887,15 @@ static struct pci_serial_quirk pci_serial_quirks[] __refdata = { }, { .vendor = PCI_VENDOR_ID_PLX, + .device = PCI_DEVICE_ID_PLX_9050, + .subvendor = PCI_VENDOR_ID_PLX, + .subdevice = PCI_SUBDEVICE_ID_UNKNOWN_0x1584, + .init = pci_plx9050_init, + .setup = pci_default_setup, + .exit = __devexit_p(pci_plx9050_exit), + }, + { + .vendor = PCI_VENDOR_ID_PLX, .device = PCI_DEVICE_ID_PLX_ROMULUS, .subvendor = PCI_VENDOR_ID_PLX, .subdevice = PCI_DEVICE_ID_PLX_ROMULUS, @@ -2199,6 +2211,11 @@ static struct pci_device_id serial_pci_tbl[] = { { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_1077, PCI_ANY_ID, PCI_ANY_ID, 0, 0, pbn_b2_4_921600 }, + /* Unknown card - subdevice 0x1584 */ + { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, + PCI_VENDOR_ID_PLX, + PCI_SUBDEVICE_ID_UNKNOWN_0x1584, 0, 0, + pbn_b0_4_115200 }, { PCI_VENDOR_ID_PLX, PCI_DEVICE_ID_PLX_9050, PCI_SUBVENDOR_ID_KEYSPAN, PCI_SUBDEVICE_ID_KEYSPAN_SX2, 0, 0, -- 1.5.5.1
| |