From: Bjorn Helgaas <bjorn.helgaas@hp.com>

Add documentation for pci_disable_device().  We don't actually deallocate
IRQ resources in pci_disable_device() yet, but I suspect we'll need to do
so soon.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/Documentation/pci.txt |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff -puN Documentation/pci.txt~document-pci_disable_device Documentation/pci.txt
--- 25/Documentation/pci.txt~document-pci_disable_device	2004-08-04 21:19:40.396689880 -0700
+++ 25-akpm/Documentation/pci.txt	2004-08-04 21:19:40.401689120 -0700
@@ -25,6 +25,7 @@ on (either the old or the new way), it n
 	Discover resources (addresses and IRQ numbers) provided by the device
 	Allocate these resources
 	Communicate with the device
+	Disable the device
 
 Most of these topics are covered by the following sections, for the rest
 look at <linux/pci.h>, it's hopefully well commented.
@@ -162,8 +163,8 @@ You must eventually (possibly at module 
 count on these devices by calling pci_dev_put().
 
 
-3. Enabling devices
-~~~~~~~~~~~~~~~~~~~
+3. Enabling and disabling devices
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Before you do anything with the device you've found, you need to enable
 it by calling pci_enable_device() which enables I/O and memory regions of
 the device, allocates an IRQ if necessary, assigns missing resources if
@@ -180,6 +181,12 @@ and also ensures that the cache line siz
 Make sure to check the return value of pci_set_mwi(), not all architectures
 may support Memory-Write-Invalidate.
 
+   If your driver decides to stop using the device (e.g., there was an
+error while setting it up or the driver module is being unloaded), it
+should call pci_disable_device() to deallocate any IRQ resources, disable
+PCI bus-mastering, etc.  You should not do anything with the device after
+calling pci_disable_device().
+
 4. How to access PCI config space
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    You can use pci_(read|write)_config_(byte|word|dword) to access the config
_