diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/mtd/onenand/onenand_base.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/mtd/onenand/onenand_base.c b/drivers/mtd/onenand/onenand_base.c index 9f4fe73bc129..6df309b89e9a 100644 --- a/drivers/mtd/onenand/onenand_base.c +++ b/drivers/mtd/onenand/onenand_base.c | |||
@@ -616,7 +616,7 @@ static void onenand_update_bufferram(struct mtd_info *mtd, loff_t addr, | |||
616 | 616 | ||
617 | /* Invalidate another BufferRAM */ | 617 | /* Invalidate another BufferRAM */ |
618 | i = ONENAND_NEXT_BUFFERRAM(this); | 618 | i = ONENAND_NEXT_BUFFERRAM(this); |
619 | if (this->bufferram[i].blockpage == blockpage) { | 619 | if (this->bufferram[i].blockpage == blockpage) |
620 | this->bufferram[i].blockpage = -1; | 620 | this->bufferram[i].blockpage = -1; |
621 | 621 | ||
622 | /* Update BufferRAM */ | 622 | /* Update BufferRAM */ |
@@ -889,7 +889,7 @@ int onenand_do_read_oob(struct mtd_info *mtd, loff_t from, size_t len, | |||
889 | 889 | ||
890 | if (ret) { | 890 | if (ret) { |
891 | DEBUG(MTD_DEBUG_LEVEL0, "onenand_read_oob: read failed = 0x%x\n", ret); | 891 | DEBUG(MTD_DEBUG_LEVEL0, "onenand_read_oob: read failed = 0x%x\n", ret); |
892 | goto out; | 892 | break; |
893 | } | 893 | } |
894 | 894 | ||
895 | read += thislen; | 895 | read += thislen; |
@@ -907,7 +907,6 @@ int onenand_do_read_oob(struct mtd_info *mtd, loff_t from, size_t len, | |||
907 | } | 907 | } |
908 | } | 908 | } |
909 | 909 | ||
910 | out: | ||
911 | /* Deselect and wake up anyone waiting on the device */ | 910 | /* Deselect and wake up anyone waiting on the device */ |
912 | onenand_release_device(mtd); | 911 | onenand_release_device(mtd); |
913 | 912 | ||
@@ -1099,7 +1098,6 @@ static int onenand_write(struct mtd_info *mtd, loff_t to, size_t len, | |||
1099 | } | 1098 | } |
1100 | 1099 | ||
1101 | written += thislen; | 1100 | written += thislen; |
1102 | |||
1103 | if (written == len) | 1101 | if (written == len) |
1104 | break; | 1102 | break; |
1105 | 1103 | ||
@@ -1223,17 +1221,16 @@ static int onenand_do_write_oob(struct mtd_info *mtd, loff_t to, size_t len, | |||
1223 | ret = this->wait(mtd, FL_WRITING); | 1221 | ret = this->wait(mtd, FL_WRITING); |
1224 | if (ret) { | 1222 | if (ret) { |
1225 | DEBUG(MTD_DEBUG_LEVEL0, "onenand_write_oob: write failed %d\n", ret); | 1223 | DEBUG(MTD_DEBUG_LEVEL0, "onenand_write_oob: write failed %d\n", ret); |
1226 | goto out; | 1224 | break; |
1227 | } | 1225 | } |
1228 | 1226 | ||
1229 | ret = onenand_verify_oob(mtd, this->page_buf, to); | 1227 | ret = onenand_verify_oob(mtd, this->page_buf, to); |
1230 | if (ret) { | 1228 | if (ret) { |
1231 | DEBUG(MTD_DEBUG_LEVEL0, "onenand_write_oob: verify failed %d\n", ret); | 1229 | DEBUG(MTD_DEBUG_LEVEL0, "onenand_write_oob: verify failed %d\n", ret); |
1232 | goto out; | 1230 | break; |
1233 | } | 1231 | } |
1234 | 1232 | ||
1235 | written += thislen; | 1233 | written += thislen; |
1236 | |||
1237 | if (written == len) | 1234 | if (written == len) |
1238 | break; | 1235 | break; |
1239 | 1236 | ||
@@ -1242,7 +1239,6 @@ static int onenand_do_write_oob(struct mtd_info *mtd, loff_t to, size_t len, | |||
1242 | column = 0; | 1239 | column = 0; |
1243 | } | 1240 | } |
1244 | 1241 | ||
1245 | out: | ||
1246 | /* Deselect and wake up anyone waiting on the device */ | 1242 | /* Deselect and wake up anyone waiting on the device */ |
1247 | onenand_release_device(mtd); | 1243 | onenand_release_device(mtd); |
1248 | 1244 | ||