aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Roese <ml@stefan-roese.de>2006-11-10 12:19:32 +0100
committerDavid Woodhouse <dwmw2@infradead.org>2006-11-28 22:22:55 +0000
commit4010db56c8fe5bbb8e223bf9c9c36d41e9ad4f79 (patch)
treecdc33d44f08b82dab6d8f63280ce4263c5dffce6
parentddacff1f20fc5c96cc73e2975258e05d298c97cc (diff)
[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@denx.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
-rw-r--r--drivers/mtd/nand/ndfc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/nand/ndfc.c b/drivers/mtd/nand/ndfc.c
index 039c759cfbf..fd7a8d5ba29 100644
--- a/drivers/mtd/nand/ndfc.c
+++ b/drivers/mtd/nand/ndfc.c
@@ -56,7 +56,7 @@ static void ndfc_select_chip(struct mtd_info *mtd, int chip)
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)