Explorar o código

[PATCH] SGI Hotplug: Incorrect power status

This is a repost of a patch submitted by Prarit Bhargava on 01-19-06 that
never got integrated.

The get_power_status function is currently reporting a bitwise mapping of
the slot if the slot is powered on.  It should return 1 if powered on and
0 if powered off.

Signed-off-by: Mike Habeck <habeck@sgi.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Mike Habeck %!s(int64=19) %!d(string=hai) anos
pai
achega
466ee36b62
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      drivers/pci/hotplug/sgi_hotplug.c

+ 3 - 1
drivers/pci/hotplug/sgi_hotplug.c

@@ -461,10 +461,12 @@ static inline int get_power_status(struct hotplug_slot *bss_hotplug_slot,
 {
 	struct slot *slot = bss_hotplug_slot->private;
 	struct pcibus_info *pcibus_info;
+	u32 power;
 
 	pcibus_info = SN_PCIBUS_BUSSOFT_INFO(slot->pci_bus);
 	mutex_lock(&sn_hotplug_mutex);
-	*value = pcibus_info->pbi_enabled_devices & (1 << slot->device_num);
+	power = pcibus_info->pbi_enabled_devices & (1 << slot->device_num);
+	*value = power ? 1 : 0;
 	mutex_unlock(&sn_hotplug_mutex);
 	return 0;
 }