aboutsummaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorHolger Freyther <zecke@openmoko.org>2008-11-19 17:10:51 +0000
committerLars-Peter Clausen <lars@metafoo.de>2010-05-17 20:59:35 +0200
commit8d49d595540f8f06542d1343429f33994d02efd7 (patch)
tree3a6a8ef8232ebd2b95c812078a5011564fe20f89 /arch
parent77137a73fdc68f02a2893175e05c4b5755c0d94d (diff)
gta02: Disable hardware ECC unless we get instructed to enable it
Early verions off uboot used for the gta02 flashed the nand with ecc information incompatible to s3c2440 hardware ecc. Disable hardware error correction by default, unless the bootloader explicitly enables it. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-s3c2440/mach-gta02.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/mach-s3c2440/mach-gta02.c b/arch/arm/mach-s3c2440/mach-gta02.c
index c73421cae02..0e195f9a86f 100644
--- a/arch/arm/mach-s3c2440/mach-gta02.c
+++ b/arch/arm/mach-s3c2440/mach-gta02.c
@@ -455,6 +455,7 @@ static struct s3c2410_platform_nand __initdata gta02_nand_info = {
.twrph1 = 15,
.nr_sets = ARRAY_SIZE(gta02_nand_sets),
.sets = gta02_nand_sets,
+ .software_ecc = 1,
};
@@ -808,6 +809,18 @@ static void gta02_hijack_gpb(void)
s3c24xx_gpios[1].chip.get = gta02_gpb_get;
}
+/*
+ * Allow the bootloader to enable hw ecc
+ * hardware_ecc=1|0
+ */
+static int __init hardware_ecc_setup(char *str)
+{
+ if (str && str[0] == '1')
+ gta02_nand_info.software_ecc = 0;
+ return 1;
+}
+__setup("hardware_ecc=", hardware_ecc_setup);
+
static void gta02_request_gpios(void)
{
int ret;