summaryrefslogtreecommitdiff
path: root/board/amcc
diff options
context:
space:
mode:
authorStefan Roese <sr@denx.de>2008-04-08 10:33:29 +0200
committerStefan Roese <sr@denx.de>2008-04-18 16:30:49 +0200
commit499e7831e1baaac6bfb959213f1950c216fbc5ba (patch)
tree4466db197406c088d09b51996913276dc9c7a100 /board/amcc
parent5e182dce04d68cc94407a1b1fa09307f2bb96719 (diff)
ppc4xx: Change Canyonlands to support booting from 2k page NAND devices
Signed-off-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'board/amcc')
-rw-r--r--board/amcc/canyonlands/bootstrap.c13
-rw-r--r--board/amcc/canyonlands/init.S1
-rw-r--r--board/amcc/canyonlands/u-boot-nand.lds4
3 files changed, 16 insertions, 2 deletions
diff --git a/board/amcc/canyonlands/bootstrap.c b/board/amcc/canyonlands/bootstrap.c
index 37fa1c926c..1d125b6e6e 100644
--- a/board/amcc/canyonlands/bootstrap.c
+++ b/board/amcc/canyonlands/bootstrap.c
@@ -63,9 +63,22 @@ static u8 boot_configs[][17] = {
/*
* Bytes 5,6,8,9,11 change for NAND boot
*/
+#if 0
+/*
+ * Values for 512 page size NAND chips, not used anymore, just
+ * keep them here for reference
+ */
static u8 nand_boot[] = {
0x90, 0x01, 0xa0, 0x68, 0x58
};
+#else
+/*
+ * Values for 2k page size NAND chips
+ */
+static u8 nand_boot[] = {
+ 0x90, 0x01, 0xa0, 0xe8, 0x58
+};
+#endif
static int do_bootstrap(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
{
diff --git a/board/amcc/canyonlands/init.S b/board/amcc/canyonlands/init.S
index bd4cab56d8..258fb5de8f 100644
--- a/board/amcc/canyonlands/init.S
+++ b/board/amcc/canyonlands/init.S
@@ -51,6 +51,7 @@ tlbtab:
#else
tlbentry(CFG_NAND_BOOT_SPL_SRC, SZ_4K, CFG_NAND_BOOT_SPL_SRC, 4, AC_R|AC_W|AC_X|SA_G)
tlbentry(CFG_SDRAM_BASE, SZ_256M, CFG_SDRAM_BASE, 0, AC_R|AC_W|AC_X|SA_G|SA_I)
+ tlbentry(256 << 20, SZ_256M, 256 << 20, 0, AC_R|AC_W|AC_X|SA_G|SA_I)
#endif
/*
diff --git a/board/amcc/canyonlands/u-boot-nand.lds b/board/amcc/canyonlands/u-boot-nand.lds
index f0837d415f..332e3aaf2a 100644
--- a/board/amcc/canyonlands/u-boot-nand.lds
+++ b/board/amcc/canyonlands/u-boot-nand.lds
@@ -56,10 +56,10 @@ SECTIONS
cpu/ppc4xx/start.o (.text)
/* Align to next NAND block */
- . = ALIGN(0x4000);
+ . = ALIGN(0x20000);
common/environment.o (.ppcenv)
/* Keep some space here for redundant env and potential bad env blocks */
- . = ALIGN(0x10000);
+ . = ALIGN(0x80000);
*(.text)
*(.fixup)