Re: [PATCH] Netmos parallel/serial/combo support

From: Michael Tokarev (mjt_at_tls.msk.ru)
Date: 03/24/05

  • Next message: Jeff Garzik: "Re: How's the nforce4 support in Linux?"
    Date:	Thu, 24 Mar 2005 23:40:07 +0300
    To: Bjorn Helgaas <bjorn.helgaas@hp.com>
    
    

    [Hmm... Too large Cc list. Dunno which addresses should be keept...]

    Bjorn Helgaas wrote:
    > Here's another iteration of my patch for better Netmos support.
    > This is against 2.6.12-rc1-mm1. Kerry and Darac have sucessfully
    > tested a similar patch with 9835 cards. I think we're ready for
    > wider testing, such as -mm.
    >
    > There's a bugzilla entry for this here:
    > http://bugzilla.kernel.org/show_bug.cgi?id=4334
    >
    > I'd like to hear about any problems or issues (or even better,
    > about successes, of course :-)). If you encounter a problem,
    > please include the dmesg log and the output of "lspci -vvn".
    >
    > This should fix all the problems I know about with Netmos combo cards:
    > - 9735, 9835, and 9855 are not supported
    > - combo cards with parallel are erroneously claimed by serial driver
    > - serial and parport_serial blindly probe for ports

    So, do you expect 9[78]35 cards to work? ;)

    With this patch applied, my 9835 card now works when loading 8250_pci
    module. But things does not completely work still.

    I've a 9835 card with two serial and no parallel ports:

    0000:01:00.0 0700: 9710:9835 (rev 01) (prog-if 02)
             Subsystem: 1000:0002
             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 193
             Region 0: I/O ports at a400 [size=8]
             Region 1: I/O ports at a000 [size=8]
             Region 2: I/O ports at 9800 [size=8]
             Region 3: I/O ports at 9400 [size=8]
             Region 4: I/O ports at 9000 [size=8]
             Region 5: I/O ports at 8800 [size=16]

    When I first load 8250_pci, it correctly detects one onboard
    serial port (ttyS0) and two ports on the card (ttyS4 and ttyS5):

    Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing enabled
    ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
    ACPI: PCI interrupt 0000:01:00.0[A] -> GSI 18 (level, low) -> IRQ 193
    ttyS4 at I/O 0xa400 (irq = 193) is a 16550A
    ttyS5 at I/O 0xa000 (irq = 193) is a 16550A

    When I load parport_pc after loading 8250_pci, it correctly detects
    onboard parallel port and nothing more:

    parport: PnPBIOS parport detected.
    parport0: PC-style at 0x378, irq 7 [PCSPP]

    But after reloading parport_pc, it does not see the built-in
    port anymore; more, after unloading 8250_pci and 8250,
    parport_pc finds one parallel port -- on this netmos
    card only (there's no parallel port on this card):

    PCI parallel port detected: 9710:9835, I/O at 0x9800(0x9400)
    parport0: PC-style at 0x9800 (0x9400) [PCSPP,TRISTATE]

    When parport_pc loaded, 8250[_pci] can't detect the two
    serial ports it detected previously:

    Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing enabled
    ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

    So, when loading 8250_pci first, and parport_pc second
    (and not unloading anything), things works as expected.
    When loading parport_pc first (not parport_serial), and
    8250_pci after, there will be 2 parallel and only one
    serial ports:

    parport: PnPBIOS parport detected.
    parport0: PC-style at 0x378, irq 7 [PCSPP]
    ACPI: PCI interrupt 0000:01:00.0[A] -> GSI 18 (level, low) -> IRQ 193
    PCI parallel port detected: 9710:9835, I/O at 0x9800(0x9400)
    parport1: PC-style at 0x9800 (0x9400) [PCSPP,TRISTATE]
    Serial: 8250/16550 driver $Revision: 1.90 $ 8 ports, IRQ sharing enabled
    ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

    When loading parport_serial only (which loads all the
    rest), things works as expected (well... it's due
    to dependencies resolved in a "correct" order -
    8250 stuff first and parport_pc second).

    The issue with built-in port not being detected after
    re-loading parport_pc may be unrelated - looks like
    it is this way without the card inserted.

    /mjt
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/


  • Next message: Jeff Garzik: "Re: How's the nforce4 support in Linux?"

    Relevant Pages

    • Re: IBM 4019 Laser printer
      ... I purchased a PCI Express parallel port card ... PCI: 1 Slot ... Windows Printing Team ... While I haven't installed a Parallel port card in Vista, ...
      (microsoft.public.windows.vista.print_fax_scan)
    • Re: Simple SD Interface
      ... Basically I want to connect an SD card to my PC's parallel port. ... with some capacitors to smooth the power. ... buffer which I have laying here already. ...
      (sci.electronics.basics)
    • SOLVED_aditional parallel port problems
      ... The solution was that the parallel port of the card ... ports and they both have a ground pin. ... With this orders, the circuit turn on/off ...
      (Linux-Kernel)
    • aditional parallel port problems
      ... circuit that works with the orders of a parallel port ... With this orders, the circuit turn on/off ... a PCI Multio I/O card with NM9835CV chip. ... some devices turn on and other turn off. ...
      (Linux-Kernel)
    • RE: panic on ifconfig tun0 destroy
      ... <ACPI PCI bus> on pcib0 ... ppc0: parallel port not found. ... Loading /lib/libalias_cuseeme.so ...
      (freebsd-current)