Problem with BC-307

2004-08-14
2004-08-23
  • John Crowhurst
    John Crowhurst
    2004-08-14

    Hello,

    I have a problem with my BC-307 CF GPS card. I'm using the pcmcia adapter that came with the card in a Ricoh RL5c475 (PCD-RP-101CS) PCI card adapter.

    When I insert the CF card, I get a system lockup when cardmgr is running. Removing the card causes the system to recover.

    Without cardmgr running, diagnostics follow:
    #cardctl status
    Socket 0:
      3.3V 16-bit PC Card
      function 0: [ready]
    #cardctl config
    Socket 0:
      Vcc 3.3V  Vpp1 3.3V  Vpp2 3.3V
    #cardctl ident
    Socket 0:
      no product info available

    When I start cardmgr the system locks up, so after removal of the card, syslog has:
    kernel: Linux Kernel Card Services 3.1.22
    kernel:   options:  [pci] [cardbus] [pm]
    kernel: PCI: Found IRQ 12 for device 00:0e.0
    kernel: Yenta ISA IRQ mask 0x0000, PCI irq 12
    kernel: Socket status: 30000816
    cardmgr[1911]: watching 1 socket
    kernel: cs: IO port probe 0x0c00-0x0cff: clean.
    kernel: cs: IO port probe 0x0800-0x08ff: clean.
    kernel: cs: IO port probe 0x0100-0x04ff: excluding 0
    x170-0x177 0x370-0x37f 0x4d0-0x4d7
    cardmgr[1912]: socket 0: Serial or Modem
    kernel: ttyS17 at port 0x0100 (irq = 12) is a 16C950
    /954
    kernel: ttyS17 unloaded

    I also found that at one point the card issued the following into syslog, which I added to config:
    cardmgr[1442]:   product info: "CF CARD", "GENERIC", "", ""
    cardmgr[1442]:   manfid: 0x0279, 0x950b function: 2  (serial)

    Changing the port range (limiting it to the device only) appears to change the tty, but the system still locks up.

    Any ideas?

     
    • David Hinds
      David Hinds
      2004-08-23

      Since you've tried changing the port range and that did not help, I'd bet that the problem is with the interrupt assignment.  The choice of irq 12 is probably bad; maybe you've got a mouse on irq 12 already?  Since this is a PCI-to-CardBus adapter, you can't just edit /etc/pcmcia/config.opts to change the interrupt assignment.  Try booting with a kernel parameter of "pci=irqmask=0xefff".

      -- Dave