summaryrefslogtreecommitdiffstats
path: root/mtdutils/mtdutils.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-04-30Check all lseek calls succeed.Elliott Hughes1-32/+22
Also add missing TEMP_FAILURE_RETRYs on read, write, and lseek. Bug: http://b/20625546 Change-Id: I03b198e11c1921b35518ee2dd005a7cfcf4fd94b (cherry picked from commit 7bad7c4646ee8fd8d6e6ed0ffd3ddbb0c1b41a2f)
2015-03-23Always use strerror to report errno in recovery.Elliott Hughes1-4/+4
Change-Id: I7009959043150fabf5853a43ee2448c7fbea176e
2014-06-30Changes in rk30hackKra1o51-5/+5
This works on rk3188 based devices too so rename it to rk3xhack. Change-Id: Ia3d9d52d99205057f8bece735a938986491b7522
2013-07-09recovery: move log output to stdoutDoug Zongker1-13/+13
Recovery currently has a random mix of messages printed to stdout and messages printed to stderr, which can make logs hard to read. Move everything to stdout. Change-Id: Ie33bd4a9e1272e731302569cdec918e0534c48a6
2013-01-05Work around MEMERASE ioctl for rk3066 compatibilitySergey 'Jin' Bostandzhyan1-0/+22
Due to a kernel bug and no available sources we have to work around the MEMERASE ioctl - if used, it hangs and never returns. I straced the original recovery executable and could see that it is simply calling write() with a bunch of zeroes instead of using MEMERASE. Added a hack that does the same and now the resulting TWRP recovery image works. Change-Id: I1b1c1c9e870e350776346bdca5d442c7ef565aa0
2012-09-05TWRP-ify AOSP codeDees_Troy1-12/+211
Pull in most TWRP sources Stub out partition management code Make it compile -- probably will not boot Kind of a mess but have to start somewhere
2012-08-21Fixed warnings in libmtdutilsEdwin Vane1-4/+4
A few signed/unsigned comparison warnings were all that stood in the way of a clean clang build. Change-Id: Id8c47fcfa500a6ac164bddb855831cdc17d99847 Author: Edwin Vane <edwin.vane@intel.com> Reviewed-by: Tareq A Siraj <tareq.a.siraj@intel.com>
2011-01-19Free allocated struct after freeing fieldChristian Lindeberg1-1/+1
Free allocated MtdReadContext after freeing buffer field in struct, not before. Change-Id: I237920dc36115389cd2d6948e7a962dbec22fe56
2010-11-03fix comparison of ECC stats before and after mtd readsDoug Zongker1-0/+2
ECC errors are found by comparing the result of ioctl(ECCGETSTATS) before and after the read. But if an error was found causing us to go to the next block, we'd compare the stats before the *first* read to the stats after the second (third, fourth, etc.) reads, so we'd read to the end of the partition without ever succeeding. Fix logic so we compare the values before and after each read independently. Bug: 3162777 Change-Id: I5a13abd7243d2afd1d21bd98cbb233e5124b2e80
2010-09-15close update package before installing; allow remountDoug Zongker1-1/+1
Close the update package before invoking the binary, to allow the installer to unmount /cache if it wants to. Add a function to allow remounting of a mount as read-only. Change-Id: Idfcc96c3da66083295177f729263560be58034e4
2010-09-15add the ability to seek to a raw location while reading MTD partitionDoug Zongker1-0/+7
Change-Id: Id1563ca667c50e61cf1bb15d2cf783a50937eece
2010-09-12stop treating all-zero blocks as badDoug Zongker1-8/+1
Change-Id: If49fa6485f66598d16a7e44fce3129de55fab422
2010-09-10block is bad if ioctl() returns nonzeroDoug Zongker1-2/+5
Change-Id: I6fc4ce796bc663d05035927c0af0ce7ab6d07218
2010-01-13make offsets in firmware update header not point to bad blocksDoug Zongker1-4/+42
(This is being cherry-picked from master.) hboot will apparently fail to install if the first block of the image (the one pointed to by the offset in the block 0 header) is a bad block. (Hopefully it handles subsequent bad blocks.) This change makes the MTD write code keep track of the bad blocks it has skipped over, so that the offset in the header can be adjusted to be the address of the first successfully written block. http://b/2358012 - passion: failure to flash hboot (bad blocks?)
2010-01-13make offsets in firmware update header not point to bad blocksDoug Zongker1-4/+42
hboot will apparently fail to install if the first block of the image (the one pointed to by the offset in the block 0 header) is a bad block. (Hopefully it handles subsequent bad blocks.) This change makes the MTD write code keep track of the bad blocks it has skipped over, so that the offset in the header can be adjusted to be the address of the first successfully written block. Change-Id: I45d58e32a36d0c1dbc0a7f871bd5985b6c8ff524 http://b/2358012 - passion: failure to flash hboot (bad blocks?)
2010-01-13android-2.1_r1 snapshotThe Android Open Source Project1-5/+12
2009-12-15use MEMGETBADBLOCK to look for bad blocks when reading MTD partitionsDoug Zongker1-5/+12
2009-07-01skip over all-zero blocks when reading MTD partitionDoug Zongker1-1/+12
We fail to detect certain bad blocks (marked in the factory as bad, I think?) when reading mtd partitions. These come back as a block of all zeros. Since it's fairly unlikely a legitimate boot or recovery block will contain 128k of zeros, change mtdutils to skip over such blocks. Arve says https://review.source.android.com/10535 may be a long-term fix for this, but he isn't yet sure.
2009-03-04auto import from //depot/cupcake/@135843The Android Open Source Project1-0/+510
2009-03-04auto import from //depot/cupcake/@135843The Android Open Source Project1-510/+0