mirror of
https://github.com/torvalds/linux.git
synced 2024-11-15 00:21:59 +00:00
mtd: mxc_nand: dont call suspend and resume explicitly
The mtd layer is responsible to call mtd->{suspend,resume}. Doing it again in the driver is wrong and results in a warning: nand_resume called for a chip which is not in suspended state at resume time. Removing the calls from the resume and suspend functions makes them empty allowing them to be deleted completely. Signed-off-by: Eric Bénard <eric@eukrea.com> Acked-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
This commit is contained in:
parent
c9fb67735b
commit
04dd0d3a9a
@ -871,52 +871,11 @@ static int __devexit mxcnd_remove(struct platform_device *pdev)
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PM
|
||||
static int mxcnd_suspend(struct platform_device *pdev, pm_message_t state)
|
||||
{
|
||||
struct mtd_info *mtd = platform_get_drvdata(pdev);
|
||||
struct nand_chip *nand_chip = mtd->priv;
|
||||
struct mxc_nand_host *host = nand_chip->priv;
|
||||
int ret = 0;
|
||||
|
||||
DEBUG(MTD_DEBUG_LEVEL0, "MXC_ND : NAND suspend\n");
|
||||
|
||||
ret = mtd->suspend(mtd);
|
||||
|
||||
/*
|
||||
* nand_suspend locks the device for exclusive access, so
|
||||
* the clock must already be off.
|
||||
*/
|
||||
BUG_ON(!ret && host->clk_act);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int mxcnd_resume(struct platform_device *pdev)
|
||||
{
|
||||
struct mtd_info *mtd = platform_get_drvdata(pdev);
|
||||
struct nand_chip *nand_chip = mtd->priv;
|
||||
int ret = 0;
|
||||
|
||||
DEBUG(MTD_DEBUG_LEVEL0, "MXC_ND : NAND resume\n");
|
||||
|
||||
mtd->resume(mtd);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
#else
|
||||
# define mxcnd_suspend NULL
|
||||
# define mxcnd_resume NULL
|
||||
#endif /* CONFIG_PM */
|
||||
|
||||
static struct platform_driver mxcnd_driver = {
|
||||
.driver = {
|
||||
.name = DRIVER_NAME,
|
||||
},
|
||||
},
|
||||
.remove = __devexit_p(mxcnd_remove),
|
||||
.suspend = mxcnd_suspend,
|
||||
.resume = mxcnd_resume,
|
||||
};
|
||||
|
||||
static int __init mxc_nd_init(void)
|
||||
|
Loading…
Reference in New Issue
Block a user