|
@@ -1919,6 +1919,7 @@ static int onenand_default_block_markbad(struct mtd_info *mtd, loff_t ofs)
|
|
*/
|
|
*/
|
|
int onenand_block_markbad(struct mtd_info *mtd, loff_t ofs)
|
|
int onenand_block_markbad(struct mtd_info *mtd, loff_t ofs)
|
|
{
|
|
{
|
|
|
|
+ struct onenand_chip *this = mtd->priv;
|
|
int ret;
|
|
int ret;
|
|
|
|
|
|
ret = onenand_block_isbad(mtd, ofs);
|
|
ret = onenand_block_isbad(mtd, ofs);
|
|
@@ -1929,7 +1930,10 @@ int onenand_block_markbad(struct mtd_info *mtd, loff_t ofs)
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
|
|
- ret = mtd_block_markbad(mtd, ofs);
|
|
|
|
|
|
+ onenand_get_device(mtd, FL_WRITING);
|
|
|
|
+ ret = this->block_markbad(mtd, ofs);
|
|
|
|
+ onenand_release_device(mtd);
|
|
|
|
+
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
|