[MTD] [NAND] Fix endianess bug in ndfc.c

Linux-MTD Mailing List linux-mtd at lists.infradead.org
Tue Nov 28 17:59:02 EST 2006


Commit:     4010db56c8fe5bbb8e223bf9c9c36d41e9ad4f79
Parent:     ddacff1f20fc5c96cc73e2975258e05d298c97cc
commit 4010db56c8fe5bbb8e223bf9c9c36d41e9ad4f79
Author:     Stefan Roese <ml at stefan-roese.de>
AuthorDate: Fri Nov 10 12:19:32 2006 +0100
Commit:     David Woodhouse <dwmw2 at infradead.org>
CommitDate: Tue Nov 28 22:22:55 2006 +0000

    [MTD] [NAND] Fix endianess bug in ndfc.c
    
    The writel() call accidentally clears all bits in the NDFC_CCR
    register (endianess problem). Now __raw_writel() is used instead.
    
    Tested on Bamboo with NAND on chip select 0 and chip select 1.
    
    Signed-off-by: Stefan Roese <sr at denx.de>
    Signed-off-by: David Woodhouse <dwmw2 at infradead.org>
---
 drivers/mtd/nand/ndfc.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/mtd/nand/ndfc.c b/drivers/mtd/nand/ndfc.c
index 039c759..fd7a8d5 100644
--- a/drivers/mtd/nand/ndfc.c
+++ b/drivers/mtd/nand/ndfc.c
@@ -56,7 +56,7 @@ static void ndfc_select_chip(struct mtd_
 		ccr |= NDFC_CCR_BS(chip + pchip->chip_offset);
 	} else
 		ccr |= NDFC_CCR_RESET_CE;
-	writel(ccr, ndfc->ndfcbase + NDFC_CCR);
+	__raw_writel(ccr, ndfc->ndfcbase + NDFC_CCR);
 }
 
 static void ndfc_hwcontrol(struct mtd_info *mtd, int cmd, unsigned int ctrl)



More information about the linux-mtd-cvs mailing list