public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* take2: [Patch 1/3] Updated patches for PCI IRQ deallocation support
@ 2004-10-04 10:17 Kenji Kaneshige
  0 siblings, 0 replies; only message in thread
From: Kenji Kaneshige @ 2004-10-04 10:17 UTC (permalink / raw)
  To: Greg KH
  Cc: Andrew Morton, Len Brown, Luck, Tony, Linux Kernel Mailing List,
	acpi-devel, linux-ia64

Greg,

This is a patch for PCI code that has no dependencies.
Please note that this patch has been already included in 2.6.9-rc3-mm1.

Please apply.

Thanks,
Kenji Kaneshige

----
Name:		add_pcibios_disable_device_hook.patch
Kernel Version:	2.6.9-rc3
Depends:	none
Note:		This patch is already included in 2.6.9-rc3-mm1.
Change Log:

    - Ported to 2.6.9-rc3

    - Chaged to use __attrubute__ ((weak)) instead of modifying all
      arch specific code.

Description:

This patch adds a hook 'pcibios_disable_device()' into
pci_disable_device() to call architecture specific PCI resource
deallocation code. It's a opposite part of pcibios_enable_device().
We need this hook to deallocate architecture specific PCI resource
such as IRQ resource, etc.. This patch is just for adding the hook, so
'pcibios_disable_device()' is defined as a null function on all
architecture so far.

I tested this patch on i386, x86_64 and ia64. But it has not been
tested on other architectures because I don't have these machines.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>

---

 linux-2.6.9-rc3-kanesige/drivers/pci/pci.c |   12 ++++++++++++
 1 files changed, 12 insertions(+)

diff -puN drivers/pci/pci.c~add_pcibios_disable_device_hook drivers/pci/pci.c
--- linux-2.6.9-rc3/drivers/pci/pci.c~add_pcibios_disable_device_hook	2004-10-04 17:01:59.329143129 +0900
+++ linux-2.6.9-rc3-kanesige/drivers/pci/pci.c	2004-10-04 17:01:59.332072838 +0900
@@ -387,6 +387,16 @@ pci_enable_device(struct pci_dev *dev)
 }
 
 /**
+ * pcibios_disable_device - disable arch specific PCI resources for device dev
+ * @dev: the PCI device to disable
+ *
+ * Disables architecture specific PCI resources for the device. This
+ * is the default implementation. Architecture implementations can
+ * override this.
+ */
+void __attribute__ ((weak)) pcibios_disable_device (struct pci_dev *dev) {}
+
+/**
  * pci_disable_device - Disable PCI device after use
  * @dev: PCI device to be disabled
  *
@@ -406,6 +416,8 @@ pci_disable_device(struct pci_dev *dev)
 		pci_command &= ~PCI_COMMAND_MASTER;
 		pci_write_config_word(dev, PCI_COMMAND, pci_command);
 	}
+
+	pcibios_disable_device(dev);
 }
 
 /**

_


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-10-04 10:18 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-10-04 10:17 take2: [Patch 1/3] Updated patches for PCI IRQ deallocation support Kenji Kaneshige

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox