On 29.08.2018 10:56, kos...@marvell.com wrote:
From: Ofer Heifetz <of...@marvell.com>

This commit simplifies the initial configuration performed
by pxa3xx_nand_scan. No functionality change is intended.

This commit is taken from Linux:
'commit 154f50fbde53'
("mtd: pxa3xx_nand: Simplify pxa3xx_nand_scan")

Signed-off-by: Chris Packham <judge.pack...@gmail.com>
Signed-off-by: Ofer Heifetz <of...@marvell.com>
Reviewed-by: Igal Liberman <ig...@marvell.com>
Cc: Stefan Roese <s...@denx.de>
Cc: Simon Glass <s...@chromium.org>
---
  drivers/mtd/nand/pxa3xx_nand.c | 30 ++++++++++++++----------------
  1 file changed, 14 insertions(+), 16 deletions(-)

diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
index 674496d..4faf787 100644
--- a/drivers/mtd/nand/pxa3xx_nand.c
+++ b/drivers/mtd/nand/pxa3xx_nand.c
@@ -1256,7 +1256,7 @@ static void pxa3xx_nand_config_tail(struct 
pxa3xx_nand_info *info)
        info->reg_ndcr |= (mtd->writesize == 2048) ? NDCR_PAGE_SZ : 0;
  }
-static int pxa3xx_nand_detect_config(struct pxa3xx_nand_info *info)
+static void pxa3xx_nand_detect_config(struct pxa3xx_nand_info *info)
  {
        struct pxa3xx_nand_platform_data *pdata = info->pdata;
        uint32_t ndcr = nand_readl(info, NDCR);
@@ -1268,7 +1268,6 @@ static int pxa3xx_nand_detect_config(struct 
pxa3xx_nand_info *info)
        info->reg_ndcr |= (pdata->enable_arbiter) ? NDCR_ND_ARB_EN : 0;
        info->ndtr0cs0 = nand_readl(info, NDTR0CS0);
        info->ndtr1cs0 = nand_readl(info, NDTR1CS0);
-       return 0;
  }
static int pxa3xx_nand_init_buff(struct pxa3xx_nand_info *info)
@@ -1388,22 +1387,21 @@ static int pxa3xx_nand_scan(struct mtd_info *mtd)
        int ret;
        uint16_t ecc_strength, ecc_step;
- if (pdata->keep_config && !pxa3xx_nand_detect_config(info))
-               goto KEEP_CONFIG;
-
-       ret = pxa3xx_nand_config_ident(info);
-       if (ret)
-               return ret;
-
-       ret = pxa3xx_nand_sensing(host);
-       if (ret) {
-               dev_info(&info->pdev->dev, "There is no chip on cs %d!\n",
-                        info->cs);
-
-               return ret;
+       if (pdata->keep_config) {
+               pxa3xx_nand_detect_config(info);
+       } else {
+               ret = pxa3xx_nand_config_ident(info);
+               if (ret)
+                       return ret;
+               ret = pxa3xx_nand_sensing(host);
+               if (ret) {
+                       dev_info(&info->pdev->dev,
+                                "There is no chip on cs %d!\n",
+                                info->cs);
+                       return ret;
+               }
        }
-KEEP_CONFIG:
        /* Device detection must be done with ECC disabled */
        if (info->variant == PXA3XX_NAND_VARIANT_ARMADA370)
                nand_writel(info, NDECCCTRL, 0x0);


Applied to u-boot-marvell/master

Thanks,
Stefan
_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to