On 05/16/2012 07:06 AM, Amit Virdi wrote: > + if ((bits_ecc + bits_data) <= 8) { > + if (bits_data) > + memset(dat, 0xff, 512); > + return bits_data;
return bits_data + bits_ecc; > + i = 0; > + while (num_err--) { > + change_bit(0, &err_idx[i]); > + change_bit(1, &err_idx[i]); Where is change_bit defined? I see __change_bit in arch/arm/include/asm/bitops.h, but change_bit is defined as an extern prototype. In Linux change_bit (without the __) is defined as an atomic operation, which probably isn't appropriate here. These two in particular could just be err_idx[i] ^= 3, right? > + if (err_idx[i] < 512 * 8) { > + change_bit(err_idx[i], dat); > + i++; > + } Increment i unconditionally. -Scott _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot