mtd: pxa3xx_nand: don't duplicate MTD suspend/resume
authorBrian Norris <computersforpeace@gmail.com>
Mon, 12 Oct 2015 20:33:11 +0000 (13:33 -0700)
committerBrian Norris <computersforpeace@gmail.com>
Mon, 19 Oct 2015 16:50:47 +0000 (09:50 -0700)
mtd_{suspend,resume}() get called from mtdcore in a class suspend/resume
callback. We don't need to call them again here. In practice, this would
actually work OK, as nand_base actually handles nesting OK -- it just
might print warnings.

Untested, but there are few (no?) users of PM for this driver AFAIK.

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Tested-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
Acked-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
drivers/mtd/nand/pxa3xx_nand.c

index 17d7a23f72b27a609ef6b1d79ca0ab1b6880d012..4abe7554b155abd528731653bdfd69a96a67015f 100644 (file)
@@ -1893,32 +1893,19 @@ static int pxa3xx_nand_probe(struct platform_device *pdev)
 static int pxa3xx_nand_suspend(struct platform_device *pdev, pm_message_t state)
 {
        struct pxa3xx_nand_info *info = platform_get_drvdata(pdev);
-       struct pxa3xx_nand_platform_data *pdata;
-       struct mtd_info *mtd;
-       int cs;
 
-       pdata = dev_get_platdata(&pdev->dev);
        if (info->state) {
                dev_err(&pdev->dev, "driver busy, state = %d\n", info->state);
                return -EAGAIN;
        }
 
-       for (cs = 0; cs < pdata->num_cs; cs++) {
-               mtd = info->host[cs]->mtd;
-               mtd_suspend(mtd);
-       }
-
        return 0;
 }
 
 static int pxa3xx_nand_resume(struct platform_device *pdev)
 {
        struct pxa3xx_nand_info *info = platform_get_drvdata(pdev);
-       struct pxa3xx_nand_platform_data *pdata;
-       struct mtd_info *mtd;
-       int cs;
 
-       pdata = dev_get_platdata(&pdev->dev);
        /* We don't want to handle interrupt without calling mtd routine */
        disable_int(info, NDCR_INT_MASK);
 
@@ -1936,10 +1923,6 @@ static int pxa3xx_nand_resume(struct platform_device *pdev)
         * all status before resume
         */
        nand_writel(info, NDSR, NDSR_MASK);
-       for (cs = 0; cs < pdata->num_cs; cs++) {
-               mtd = info->host[cs]->mtd;
-               mtd_resume(mtd);
-       }
 
        return 0;
 }