From 5ea7603e04d467c0b4a1be3ba53624b3c12b6bfc Mon Sep 17 00:00:00 2001 From: florian Date: Thu, 19 Jul 2007 16:19:19 +0000 Subject: Suppress promc.c.orig, fix the nand detection with newer boards (#2038) git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8063 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- target/linux/rb532-2.6/files/drivers/mtd/nand/rbmipsnand.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'target/linux/rb532-2.6/files/drivers') diff --git a/target/linux/rb532-2.6/files/drivers/mtd/nand/rbmipsnand.c b/target/linux/rb532-2.6/files/drivers/mtd/nand/rbmipsnand.c index 47bdbc7c3..35febc665 100644 --- a/target/linux/rb532-2.6/files/drivers/mtd/nand/rbmipsnand.c +++ b/target/linux/rb532-2.6/files/drivers/mtd/nand/rbmipsnand.c @@ -33,6 +33,8 @@ #define MEM32(x) *((volatile unsigned *) (x)) +extern unsigned int board_type; + struct rb500_nand_info { struct nand_chip chip; struct mtd_info mtd; @@ -123,9 +125,14 @@ static int rbmips_probe(struct platform_device *pdev) return -EIO; } - /* FIXME : this seems to work only for newer RB500, check the version to set the right flags accordingly */ - data->flags1 = LO_FOFF | LO_CEX; - data->flags2 = LO_ULED | LO_ALE | LO_CLE | LO_WPX; + if (board_type > 500) { + data->flags1 = LO_FOFF | LO_CEX; + data->flags2 = LO_ULED | LO_ALE | LO_CLE | LO_WPX; + } + else { + data->flags1 = LO_WPX | LO_FOFF | LO_CEX; + data->flags2 = LO_ULED | LO_ALE | LO_CLE; + } changeLatchU5(data->flags1, data->flags2); -- cgit v1.2.3