Skip to content

Commit

Permalink
PCI: remove useless pci driver method
Browse files Browse the repository at this point in the history
Remove pointless and never-called enable_wake() hook from pci_driver and
from documentation.  Evidently this was introduced in the 2.4.6 kernel,
but there's no evidence it was ever called; and it was rarely implemented.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
David Brownell authored and Greg Kroah-Hartman committed Jul 11, 2007
1 parent e57571a commit 56906c6
Show file tree
Hide file tree
Showing 8 changed files with 0 additions and 64 deletions.
3 changes: 0 additions & 3 deletions Documentation/pci.txt
Original file line number Diff line number Diff line change
Expand Up @@ -113,9 +113,6 @@ initialization with a pointer to a structure describing the driver
(Please see Documentation/power/pci.txt for descriptions
of PCI Power Management and the related functions.)

enable_wake Enable device to generate wake events from a low power
state.

shutdown Hook into reboot_notifier_list (kernel/sys.c).
Intended to stop any idling DMA operations.
Useful for enabling wake-on-lan (NIC) or changing
Expand Down
37 changes: 0 additions & 37 deletions Documentation/power/pci.txt
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,6 @@ struct pci_driver:

int (*suspend) (struct pci_dev *dev, pm_message_t state);
int (*resume) (struct pci_dev *dev);
int (*enable_wake) (struct pci_dev *dev, pci_power_t state, int enable);


suspend
Expand Down Expand Up @@ -251,42 +250,6 @@ The driver should update the current_state field in its pci_dev structure in
this function, except for PM-capable devices when pci_set_power_state is used.


enable_wake
-----------

Usage:

if (dev->driver && dev->driver->enable_wake)
dev->driver->enable_wake(dev,state,enable);

This callback is generally only relevant for devices that support the PCI PM
spec and have the ability to generate a PME# (Power Management Event Signal)
to wake the system up. (However, it is possible that a device may support
some non-standard way of generating a wake event on sleep.)

Bits 15:11 of the PMC (Power Mgmt Capabilities) Register in a device's
PM Capabilities describe what power states the device supports generating a
wake event from:

+------------------+
| Bit | State |
+------------------+
| 11 | D0 |
| 12 | D1 |
| 13 | D2 |
| 14 | D3hot |
| 15 | D3cold |
+------------------+

A device can use this to enable wake events:

pci_enable_wake(dev,state,enable);

Note that to enable PME# from D3cold, a value of 4 should be passed to
pci_enable_wake (since it uses an index into a bitmask). If a driver gets
a request to enable wake events from D3, two calls should be made to
pci_enable_wake (one for both D3hot and D3cold).


A reference implementation
-------------------------
Expand Down
7 changes: 0 additions & 7 deletions drivers/net/typhoon.c
Original file line number Diff line number Diff line change
Expand Up @@ -2267,12 +2267,6 @@ typhoon_suspend(struct pci_dev *pdev, pm_message_t state)
typhoon_resume(pdev);
return -EBUSY;
}

static int
typhoon_enable_wake(struct pci_dev *pdev, pci_power_t state, int enable)
{
return pci_enable_wake(pdev, state, enable);
}
#endif

static int __devinit
Expand Down Expand Up @@ -2636,7 +2630,6 @@ static struct pci_driver typhoon_driver = {
#ifdef CONFIG_PM
.suspend = typhoon_suspend,
.resume = typhoon_resume,
.enable_wake = typhoon_enable_wake,
#endif
};

Expand Down
2 changes: 0 additions & 2 deletions drivers/net/wireless/hostap/hostap_pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -453,8 +453,6 @@ static struct pci_driver prism2_pci_drv_id = {
.suspend = prism2_pci_suspend,
.resume = prism2_pci_resume,
#endif /* CONFIG_PM */
/* Linux 2.4.6 added save_state and enable_wake that are not used here
*/
};


Expand Down
3 changes: 0 additions & 3 deletions drivers/net/wireless/hostap/hostap_plx.c
Original file line number Diff line number Diff line change
Expand Up @@ -613,9 +613,6 @@ static struct pci_driver prism2_plx_drv_id = {
.id_table = prism2_plx_id_table,
.probe = prism2_plx_probe,
.remove = prism2_plx_remove,
.suspend = NULL,
.resume = NULL,
.enable_wake = NULL
};


Expand Down
1 change: 0 additions & 1 deletion drivers/net/wireless/prism54/islpci_hotplug.c
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,6 @@ static struct pci_driver prism54_driver = {
.remove = prism54_remove,
.suspend = prism54_suspend,
.resume = prism54_resume,
/* .enable_wake ; we don't support this yet */
};

/******************************************************************************
Expand Down
10 changes: 0 additions & 10 deletions drivers/scsi/nsp32.c
Original file line number Diff line number Diff line change
Expand Up @@ -3487,15 +3487,6 @@ static int nsp32_resume(struct pci_dev *pdev)
return 0;
}

/* Enable wake event */
static int nsp32_enable_wake(struct pci_dev *pdev, pci_power_t state, int enable)
{
struct Scsi_Host *host = pci_get_drvdata(pdev);

nsp32_msg(KERN_INFO, "pci-enable_wake: stub, pdev=0x%p, enable=%d, slot=%s, host=0x%p", pdev, enable, pci_name(pdev), host);

return 0;
}
#endif

/************************************************************************
Expand Down Expand Up @@ -3571,7 +3562,6 @@ static struct pci_driver nsp32_driver = {
#ifdef CONFIG_PM
.suspend = nsp32_suspend,
.resume = nsp32_resume,
.enable_wake = nsp32_enable_wake,
#endif
};

Expand Down
1 change: 0 additions & 1 deletion include/linux/pci.h
Original file line number Diff line number Diff line change
Expand Up @@ -371,7 +371,6 @@ struct pci_driver {
int (*suspend_late) (struct pci_dev *dev, pm_message_t state);
int (*resume_early) (struct pci_dev *dev);
int (*resume) (struct pci_dev *dev); /* Device woken up */
int (*enable_wake) (struct pci_dev *dev, pci_power_t state, int enable); /* Enable wake event */
void (*shutdown) (struct pci_dev *dev);

struct pci_error_handlers *err_handler;
Expand Down

0 comments on commit 56906c6

Please sign in to comment.