[PATCH] ipw2200: Add pci .shutdown handler
If we don't disable the card in the pci .shutdown method, there might be pending interrupts still in the interrupt line after a reboot on some platform. This patch fixes the problem by disable the hardware in the pci .shutdown method. Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
@@ -11735,6 +11735,16 @@ static int ipw_pci_resume(struct pci_dev *pdev)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
static void ipw_pci_shutdown(struct pci_dev *pdev)
|
||||||
|
{
|
||||||
|
struct ipw_priv *priv = pci_get_drvdata(pdev);
|
||||||
|
|
||||||
|
/* Take down the device; powers it off, etc. */
|
||||||
|
ipw_down(priv);
|
||||||
|
|
||||||
|
pci_disable_device(pdev);
|
||||||
|
}
|
||||||
|
|
||||||
/* driver initialization stuff */
|
/* driver initialization stuff */
|
||||||
static struct pci_driver ipw_driver = {
|
static struct pci_driver ipw_driver = {
|
||||||
.name = DRV_NAME,
|
.name = DRV_NAME,
|
||||||
@@ -11745,6 +11755,7 @@ static struct pci_driver ipw_driver = {
|
|||||||
.suspend = ipw_pci_suspend,
|
.suspend = ipw_pci_suspend,
|
||||||
.resume = ipw_pci_resume,
|
.resume = ipw_pci_resume,
|
||||||
#endif
|
#endif
|
||||||
|
.shutdown = ipw_pci_shutdown,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init ipw_init(void)
|
static int __init ipw_init(void)
|
||||||
|
Reference in New Issue
Block a user