From mboxrd@z Thu Jan 1 00:00:00 1970 From: unsik Kim Date: Wed, 18 Feb 2009 19:51:45 +0900 Subject: [U-Boot] [U-BOOT][PATCH 2/4] mflash : Fix uncorrect mask operation Message-ID: <499BE841.4080002@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Signed-off-by: unsik Kim --- drivers/block/mg_disk.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/block/mg_disk.c b/drivers/block/mg_disk.c index 26b6a80..1f9debe 100644 --- a/drivers/block/mg_disk.c +++ b/drivers/block/mg_disk.c @@ -385,7 +385,7 @@ unsigned int mg_disk_read (u32 addr, u8 *buff, u32 len) if (cur_addr < end_addr) { sect_num = cur_addr >> MG_SECTOR_SIZE_SHIFT; - cnt = ((end_addr & MG_SECTOR_SIZE_MASK) - cur_addr) >> + cnt = ((end_addr & ~MG_SECTOR_SIZE_MASK) - cur_addr) >> MG_SECTOR_SIZE_SHIFT; if (cnt) @@ -411,7 +411,6 @@ mg_read_exit: return err; } - static int mg_do_write_sects(void *buff, u32 sect_num, u32 sect_cnt) { u32 i, j, err; @@ -523,7 +522,7 @@ unsigned int mg_disk_write(u32 addr, u8 *buff, u32 len) if (cur_addr < end_addr) { sect_num = cur_addr >> MG_SECTOR_SIZE_SHIFT; - cnt = ((end_addr & MG_SECTOR_SIZE_MASK) - cur_addr) >> + cnt = ((end_addr & ~MG_SECTOR_SIZE_MASK) - cur_addr) >> MG_SECTOR_SIZE_SHIFT; if (cnt) -- 1.5.6.6