public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrew Pimlott <andrew@pimlott.net>
To: linux-kernel@vger.kernel.org
Cc: corey@world.std.com, rmk@arm.linuk.org.uk
Subject: PCMCIA (ray_cs) and CONFIG_ISA
Date: Tue, 28 Oct 2003 01:27:09 -0500	[thread overview]
Message-ID: <20031028062709.GA5658@pimlott.net> (raw)

I just tried to use the in-kernel ray_cs driver in 2.4.22 (after
having used the stand-alone PCMCIA driver for years).  I encountered
much frustration, and while I don't have a complete understanding of
the issues, it seems that there is a tangled relationship between
CONFIG_ISA and allocating interrupts for PCMCIA devices.  In short,
everything works with CONFIG_ISA enabled (even only in cs.c and
rsrc_mgr.c) and fails otherwise.  I'm pretty sure my notebook
doesn't have any ISA, and there is nothing in kconfig to require
CONFIG_ISA, leaving a nasty trap.

Looking at pcmcia_request_irq, it seems that there is no chance to
pick an irq if CONFIG_ISA is disabled and the IRQ_HANDLE_PRESENT
flag is set.  The only chance is if the socket irq_mask is zero, but
this doesn't seem to be the case for PC sockets (I'm using
yenta_socket).  So it ends up requesting irq 0, which doesn't work
out so well (CS_IN_USE).

The code is basically the same in the stand-alone drivers, but I
noticed that the Debian build scripts for the stand-alone drivers
force CONFIG_ISA on.  I didn't find any documentation of why.  I
guess that's why I never had a problem before.

So how are things supposed to work?  Is this driver doing something
wrong (I observed the pcnet_cs driver works fine without CONFIG_ISA:
it doesn't get its own irq and is happy with that)?  Pilot error?
Or just an undocumented pitfall?

Here are the kernel messages for a failed attempt to use the
in-kernel ray_cs driver:

    Linux Kernel Card Services 3.1.22
      options:  [pci] [cardbus] [pm]
    cs.c 1.279 2001/10/13 00:08:28 (David Hinds)
    PCI: Found IRQ 11 for device 00:0b.0
    PCI: Found IRQ 11 for device 00:0b.1
    Yenta IRQ list 06b0, PCI irq11
    Socket status: 30000007
    cs: pcmcia_register_socket(0xd0b9f360)
    Yenta IRQ list 06b0, PCI irq11
    ray_cs Detected: WebGear PC Card WLAN Adapter Version 4.88 Jan 1999
    ray_cs: AccessConfigurationRegister: Resource in use

Andrew

Cc: Rusty King since he seems to have submitted some maybe-related
patches for 2.5.

             reply	other threads:[~2003-10-28  6:37 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-28  6:27 Andrew Pimlott [this message]
2003-10-28 13:42 ` PCMCIA (ray_cs) and CONFIG_ISA Andrew Pimlott

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20031028062709.GA5658@pimlott.net \
    --to=andrew@pimlott.net \
    --cc=corey@world.std.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rmk@arm.linuk.org.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox