Fixes an issue with chip->state not always being set causing troubles.

Signed-off-by: Marcel Ziswiler <[EMAIL PROTECTED]>
---
 drivers/mtd/nand/nand_base.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
index bfd5cac..4a61fee 100644
--- a/drivers/mtd/nand/nand_base.c
+++ b/drivers/mtd/nand/nand_base.c
@@ -768,6 +768,7 @@ nand_get_device(struct nand_chip *chip, struct mtd_info 
*mtd, int new_state)
 #else
 static int nand_get_device (struct nand_chip *this, struct mtd_info *mtd, int 
new_state)
 {
+       this->state = new_state;
        return 0;
 }
 #endif
@@ -1649,6 +1650,9 @@ static int nand_write_page(struct mtd_info *mtd, struct 
nand_chip *chip,
         */
        cached = 0;
 
+       /* Somehow chip->state does not always get set causing troubles. */
+       chip->state = FL_WRITING;
+
        if (!cached || !(chip->options & NAND_CACHEPRG)) {
 
                chip->cmdfunc(mtd, NAND_CMD_PAGEPROG, -1, -1);
-- 
1.5.4.1


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
U-Boot-Users mailing list
U-Boot-Users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/u-boot-users

Reply via email to