Subject: [patch 15/20] acpi hotplug: fix slot power-down problem with acpiphp

From: [email-masked]
Date: Thu, 28 Apr 2005 00:25:55 -0700

From: Rajesh Shah <[email-masked]>

Earlier I reported that Matthew's acpiphp rewrite had problem in powering down
slot on my i386 system.  The following patch is needed to get the acpiphp
rewrite properly powering down the slot.

Signed-off-by: Dely Sy <[email-masked]>
Signed-off-by: Andrew Morton <[email-masked]>
Signed-off-by: Greg Kroah-Hartman <[email-masked]>

---
 drivers/pci/hotplug/acpiphp_glue.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

--- gregkh-2.6.orig/drivers/pci/hotplug/acpiphp_glue.c	2005-05-03 22:28:43.000000000 -0700
+++ gregkh-2.6/drivers/pci/hotplug/acpiphp_glue.c	2005-05-03 22:28:47.000000000 -0700
@@ -600,7 +600,7 @@
 	list_for_each (l, &slot->funcs) {
 		func = list_entry(l, struct acpiphp_func, sibling);
 
-		if (func->pci_dev && (func->flags & FUNC_HAS_PS3)) {
+		if (func->flags & FUNC_HAS_PS3) {
 			status = acpi_evaluate_object(func->handle, "_PS3", NULL, NULL);
 			if (ACPI_FAILURE(status)) {
 				warn("%s: _PS3 failed\n", __FUNCTION__);
@@ -615,7 +615,7 @@
 		func = list_entry(l, struct acpiphp_func, sibling);
 
 		/* We don't want to call _EJ0 on non-existing functions. */
-		if (func->pci_dev && (func->flags & FUNC_HAS_EJ0)) {
+		if (func->flags & FUNC_HAS_EJ0) {
 			/* _EJ0 method take one argument */
 			arg_list.count = 1;
 			arg_list.pointer = &arg;