The function insert_biterror should be designed to insert error at
the first '1' bit starting at offset byte.
But now, only bit 7 of each byte is checked, because checking mask
is always 0x80.
So, do right shift for checking mask after each checking to check
the whole 8 bits of each bytes.
Signed-off-by: Xiaolei Li <xiaolei.li@mediatek.com>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
int bit, mask, byte;
for (byte = 0; byte < pagesize; ++byte) {
- for (bit = 7, mask = 0x80; bit >= 0; bit--, mask>>=0) {
+ for (bit = 7, mask = 0x80; bit >= 0; bit--, mask >>= 1) {
if (wbuffer[byte] & mask) {
wbuffer[byte] &= ~mask;
printf("Inserted biterror @ %u/%u\n", byte, bit);