mtd: nand-gpio: Use default dev_ready function if RDY is missing in configuration
authorAlexander Shiyan <shc_work@mail.ru>
Mon, 6 May 2013 13:53:49 +0000 (17:53 +0400)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Mon, 5 Aug 2013 19:45:05 +0000 (20:45 +0100)
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
drivers/mtd/nand/gpio.c

index c35f46e81d1cb78064fcd49d7ac97e0ac4073780..8f102d162126ca4b5b01f2c5b581455683aacb77 100644 (file)
@@ -136,10 +136,7 @@ static int gpio_nand_devready(struct mtd_info *mtd)
 {
        struct gpiomtd *gpiomtd = gpio_nand_getpriv(mtd);
 
-       if (gpio_is_valid(gpiomtd->plat.gpio_rdy))
-               return gpio_get_value(gpiomtd->plat.gpio_rdy);
-
-       return 1;
+       return gpio_get_value(gpiomtd->plat.gpio_rdy);
 }
 
 #ifdef CONFIG_OF
@@ -307,6 +304,7 @@ static int gpio_nand_probe(struct platform_device *dev)
                if (ret)
                        return ret;
                gpio_direction_input(gpiomtd->plat.gpio_rdy);
+               this->dev_ready = gpio_nand_devready;
        }
 
        this->IO_ADDR_W  = this->IO_ADDR_R;
@@ -316,7 +314,6 @@ static int gpio_nand_probe(struct platform_device *dev)
 
        /* install our routines */
        this->cmd_ctrl   = gpio_nand_cmd_ctrl;
-       this->dev_ready  = gpio_nand_devready;
 
        if (this->options & NAND_BUSWIDTH_16) {
                this->read_buf   = gpio_nand_readbuf16;