public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: David Hinds <dhinds@sonic.net>
To: Andrew Morton <akpm@zip.com.au>
Cc: lkml <linux-kernel@vger.kernel.org>,
	David Woodhouse <dwmw2@infradead.org>
Subject: Re: [patch] ip autoconfig for PCMCIA NICs
Date: Fri, 19 Oct 2001 20:24:42 -0700	[thread overview]
Message-ID: <20011019202442.A2666@sonic.net> (raw)
In-Reply-To: <3BD092A6.26A1CFE9@zip.com.au>
In-Reply-To: <3BD092A6.26A1CFE9@zip.com.au>; from akpm@zip.com.au on Fri, Oct 19, 2001 at 01:52:54PM -0700

On Fri, Oct 19, 2001 at 01:52:54PM -0700, Andrew Morton wrote:
> 
> This all works fine.  However it probably breaks something, but the rather
> unilluminating comment
> 
> #ifdef CONFIG_PCMCIA
>         init_pcmcia_ds();               /* Do this last */
> #endif
> 
> doesn't tell us what.

I'm not sure about the origin of the comment.  But I can think of one
reason for starting PCMCIA after at least other device drivers have
started: since the kernel generally relies on individual drivers to
announce their resource allocations, there is no way to reliably do
resource allocation for hot plug devices before non-hot-plug devices
have enumerated what resources they're already using.

> Now, every time I try to understand the relationship between socket
> services, card services, socket drivers and driver services my brain
> bursts.  Could some kind soul please what these things do, and how
> they fit together?   Thanks.

Card services manages a few things for PCMCIA client drivers: hot plug
event handling, resource allocation, PCMCIA bus configuration, Card
Information Structure parsing, and some abstractions for talking to
memory cards.  The Linux version, in the pcmcia_core module, is based
heavily on the PCMCIA standard documents.  Socket services is the
PCMCIA standard API for talking to socket drivers; Linux does not
really implement this API and there's a simpler interface between
pcmcia_core and socket drivers.  The Linux driver services layer, in
the "ds" module, supplies a few things for managing device drivers:
stuff for keeping track of which drivers manage which cards, and which
logical devices are associated with which cards and drivers.  It also
provides a user mode pseudo-device for some Card Services functions.

This stuff is also explained in the intro of the Linux PCMCIA
Programmer's Guide.

-- Dave

      parent reply	other threads:[~2001-10-20  3:25 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-10-19 20:52 [patch] ip autoconfig for PCMCIA NICs Andrew Morton
2001-10-19 22:22 ` David Woodhouse
2001-10-19 22:33   ` Andrew Morton
2001-10-20  3:24 ` David Hinds [this message]

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=20011019202442.A2666@sonic.net \
    --to=dhinds@sonic.net \
    --cc=akpm@zip.com.au \
    --cc=dwmw2@infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    /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