Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 06cc1c88 authored by philipl@overt.org's avatar philipl@overt.org Committed by Pierre Ossman
Browse files

ricoh_mmc: Use suspend_late/resume_early



If ricoh_mmc suspends before sdhci_pci, it will pull the card
out from under the controller, which could leave the system in
a very confused state.

Using suspend_late/resume_early ensures that sdhci_pci suspends first
and resumes second.

Signed-off-by: default avatarPhilip Langdale <philipl@overt.org>
Signed-off-by: default avatarPierre Ossman <drzeus@drzeus.cx>
parent cc30d60e
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -196,7 +196,7 @@ static void __devexit ricoh_mmc_remove(struct pci_dev *pdev)
	pci_set_drvdata(pdev, NULL);
	pci_set_drvdata(pdev, NULL);
}
}


static int ricoh_mmc_suspend(struct pci_dev *pdev, pm_message_t state)
static int ricoh_mmc_suspend_late(struct pci_dev *pdev, pm_message_t state)
{
{
	struct pci_dev *fw_dev = NULL;
	struct pci_dev *fw_dev = NULL;


@@ -210,7 +210,7 @@ static int ricoh_mmc_suspend(struct pci_dev *pdev, pm_message_t state)
	return 0;
	return 0;
}
}


static int ricoh_mmc_resume(struct pci_dev *pdev)
static int ricoh_mmc_resume_early(struct pci_dev *pdev)
{
{
	struct pci_dev *fw_dev = NULL;
	struct pci_dev *fw_dev = NULL;


@@ -229,8 +229,8 @@ static struct pci_driver ricoh_mmc_driver = {
	.id_table =	pci_ids,
	.id_table =	pci_ids,
	.probe = 	ricoh_mmc_probe,
	.probe = 	ricoh_mmc_probe,
	.remove =	__devexit_p(ricoh_mmc_remove),
	.remove =	__devexit_p(ricoh_mmc_remove),
	.suspend =	ricoh_mmc_suspend,
	.suspend_late =	ricoh_mmc_suspend_late,
	.resume =	ricoh_mmc_resume,
	.resume_early =	ricoh_mmc_resume_early,
};
};


/*****************************************************************************\
/*****************************************************************************\