|
|
@@ -25,7 +25,6 @@
|
|
|
#include <linux/mtd/partitions.h>
|
|
|
#include <linux/of.h>
|
|
|
#include <linux/of_device.h>
|
|
|
-#include <linux/of_mtd.h>
|
|
|
#include "gpmi-nand.h"
|
|
|
#include "bch-regs.h"
|
|
|
|
|
|
@@ -1944,16 +1943,6 @@ static int gpmi_nand_init(struct gpmi_nand_data *this)
|
|
|
/* Set up swap_block_mark, must be set before the gpmi_set_geometry() */
|
|
|
this->swap_block_mark = !GPMI_IS_MX23(this);
|
|
|
|
|
|
- if (of_get_nand_on_flash_bbt(this->dev->of_node)) {
|
|
|
- chip->bbt_options |= NAND_BBT_USE_FLASH | NAND_BBT_NO_OOB;
|
|
|
-
|
|
|
- if (of_property_read_bool(this->dev->of_node,
|
|
|
- "fsl,no-blockmark-swap"))
|
|
|
- this->swap_block_mark = false;
|
|
|
- }
|
|
|
- dev_dbg(this->dev, "Blockmark swapping %sabled\n",
|
|
|
- this->swap_block_mark ? "en" : "dis");
|
|
|
-
|
|
|
/*
|
|
|
* Allocate a temporary DMA buffer for reading ID in the
|
|
|
* nand_scan_ident().
|
|
|
@@ -1968,6 +1957,16 @@ static int gpmi_nand_init(struct gpmi_nand_data *this)
|
|
|
if (ret)
|
|
|
goto err_out;
|
|
|
|
|
|
+ if (chip->bbt_options & NAND_BBT_USE_FLASH) {
|
|
|
+ chip->bbt_options |= NAND_BBT_NO_OOB;
|
|
|
+
|
|
|
+ if (of_property_read_bool(this->dev->of_node,
|
|
|
+ "fsl,no-blockmark-swap"))
|
|
|
+ this->swap_block_mark = false;
|
|
|
+ }
|
|
|
+ dev_dbg(this->dev, "Blockmark swapping %sabled\n",
|
|
|
+ this->swap_block_mark ? "en" : "dis");
|
|
|
+
|
|
|
ret = gpmi_init_last(this);
|
|
|
if (ret)
|
|
|
goto err_out;
|