All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nate Lawson <nate-Y6VGUYTwhu0@public.gmane.org>
To: Russell King <rmk-pci-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>
Cc: Greg KH <greg-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>,
	Adam Belay <ambx1-IBH0VoN/3vPQT0dZR+AlfA@public.gmane.org>,
	Matthew Wilcox <willy-8fiUuRrzOP0dnm+yROfE0A@public.gmane.org>,
	Jeff Garzik <jgarzik-e+AXbWqSrlAAvxtiuMwx3w@public.gmane.org>,
	Len Brown <len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	stefan.doesinger-dYJrdcitkgg0+Ua9VpOLR6Q1ief8SNuKXqFh9Ls21Oc@public.gmane.org,
	"linux-pci-jyMamyUUXNJG4ohzP4jBZS1Fcj925eT/@public.gmane.org"
	<linux-pci-jyMamyUUXNJG4ohzP4jBZS1Fcj925eT/@public.gmane.org>,
	ACPI Developers
	<acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: Re: pci bridge suspend/resume (Re: PCI not restored correctly after suspend to ram)
Date: Tue, 30 Mar 2004 22:03:35 -0800 (PST)	[thread overview]
Message-ID: <20040330214941.L85074@root.org> (raw)
In-Reply-To: <20040324090746.A13095-f404yB8NqCZvn6HldHNs0ANdhmdF6hFW@public.gmane.org>

On Wed, 24 Mar 2004, Russell King wrote:
> The way I discussed with Pat two OLS's ago (I think it was two) was that
> the bus type match method would return a value to indicate how well the
> IDs matched the device.
>
> When a driver matches a device, we remember this value, and call the
> drivers ->probe function, as we do today.
>
> However, when we add a new driver, we attempt to re-match all devices,
> including those with drivers.  If a device with an existing driver is
> found to have a "better" match with the new driver, the original driver's
> ->remove function is called to unbind the driver, and the new driver
> bound to the device.

This can screw up devices that don't allow full shutdown (i.e. require
BIOS initialization).  A two-pass approach works better.  First pass
allows the driver to match an ID but not initialize anything.  Second
allocates resources like memory, IRQs, etc.

> The match function would, for instance, return a lower value for a
> device driver matching only the class IDs, a higher ID for a device
> driver matching only the vendor ID, vendor ID + device ID, and the
> highest value for vendor ID + device ID + class ID.

The driver's match method (first pass) returns a value for how well it
matches the hardware.  The underlying bus code sorts those values and
picks the winning driver to have its initialize routine called.

http://www.freebsd.org/cgi/man.cgi?query=DEVICE_PROBE&sektion=9&apropos=0&manpath=FreeBSD+5.2-RELEASE+and+Ports
http://www.freebsd.org/cgi/man.cgi?query=DEVICE_ATTACH&sektion=9&apropos=0&manpath=FreeBSD+5.2-RELEASE+and+Ports

-Nate


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click

  parent reply	other threads:[~2004-03-31  6:03 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-18  8:35 PCI not restored correctly after suspend to ram Stefan Dösinger
     [not found] ` <200403180935.09436.stefan.doesinger-dYJrdcitkgg0+Ua9VpOLR6Q1ief8SNuKXqFh9Ls21Oc@public.gmane.org>
2004-03-19 10:59   ` Bruno Ducrot
2004-03-19 18:10   ` Len Brown
     [not found]     ` <1079719856.7278.30.camel-D2Zvc0uNKG8@public.gmane.org>
2004-03-21 19:28       ` Stefan Dösinger
2004-03-23 20:42       ` Stefan Dösinger
2004-03-31 16:15       ` Pavel Machek
2004-03-19 19:25   ` Len Brown
2004-03-19 20:35   ` b44 suspend/resume (Re: PCI not restored correctly after suspend to ram) Len Brown
     [not found]     ` <1079728500.7277.140.camel-D2Zvc0uNKG8@public.gmane.org>
2004-03-21 19:13       ` Stefan Dösinger
2004-03-22 20:27       ` Stefan Dösinger
2004-03-23  2:45       ` David S. Miller
2004-03-20  4:47   ` PCI not restored correctly after suspend to ram Len Brown
2004-03-20  5:46   ` pci bridge suspend/resume (Re: PCI not restored correctly after suspend to ram) Len Brown
     [not found]     ` <1079761564.7274.730.camel-D2Zvc0uNKG8@public.gmane.org>
2004-03-20  5:52       ` cardbus " Len Brown
     [not found]         ` <1079761951.7277.735.camel-D2Zvc0uNKG8@public.gmane.org>
2004-03-21 19:36           ` Stefan Dösinger
2004-03-20  8:28       ` pci " Jeff Garzik
     [not found]         ` <405C00C6.3010805-e+AXbWqSrlAAvxtiuMwx3w@public.gmane.org>
2004-03-20 13:45           ` Matthew Wilcox
     [not found]             ` <20040320134542.GV25059-+pPCBgu9SkPzIGdyhVEDUDl5KyyQGfY2kSSpQ9I8OhVaa/9Udqfwiw@public.gmane.org>
2004-03-20 18:00               ` Grant Grundler
2004-03-20 18:10               ` Greg KH
     [not found]                 ` <20040320181000.GA8272-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2004-03-22 22:34                   ` Adam Belay
     [not found]                     ` <20040322223425.GB3213-IBH0VoN/3vPQT0dZR+AlfA@public.gmane.org>
2004-03-23  9:23                       ` Russell King
     [not found]                         ` <20040323092338.A21352-f404yB8NqCZvn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2004-03-23 16:07                           ` Grant Grundler
2004-03-24  1:35                       ` Greg KH
     [not found]                         ` <20040324013557.GB21477-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org>
2004-03-24  9:07                           ` Russell King
     [not found]                             ` <20040324090746.A13095-f404yB8NqCZvn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2004-03-24 13:26                               ` Matthew Wilcox
     [not found]                                 ` <20040324132632.GI25059-+pPCBgu9SkPzIGdyhVEDUDl5KyyQGfY2kSSpQ9I8OhVaa/9Udqfwiw@public.gmane.org>
2004-03-24 15:14                                   ` Russell King
2004-03-31  6:03                               ` Nate Lawson [this message]
     [not found]                                 ` <20040330214941.L85074-Y6VGUYTwhu0@public.gmane.org>
2004-03-31  7:28                                   ` Russell King
     [not found]                                     ` <20040331082834.B27804-f404yB8NqCZvn6HldHNs0ANdhmdF6hFW@public.gmane.org>
2004-03-31 15:28                                       ` Grant Grundler

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=20040330214941.L85074@root.org \
    --to=nate-y6vguytwhu0@public.gmane.org \
    --cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=ambx1-IBH0VoN/3vPQT0dZR+AlfA@public.gmane.org \
    --cc=greg-U8xfFu+wG4EAvxtiuMwx3w@public.gmane.org \
    --cc=jgarzik-e+AXbWqSrlAAvxtiuMwx3w@public.gmane.org \
    --cc=len.brown-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=linux-pci-jyMamyUUXNJG4ohzP4jBZS1Fcj925eT/@public.gmane.org \
    --cc=rmk-pci-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
    --cc=stefan.doesinger-dYJrdcitkgg0+Ua9VpOLR6Q1ief8SNuKXqFh9Ls21Oc@public.gmane.org \
    --cc=willy-8fiUuRrzOP0dnm+yROfE0A@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.