diff options
author | Timur Tabi <timur@freescale.com> | 2011-04-28 13:41:20 -0500 |
---|---|---|
committer | Kumar Gala <galak@kernel.crashing.org> | 2011-07-11 13:24:19 -0500 |
commit | 26fd33b9be0ccfbefcfe89fe1632bbff0fc901c6 (patch) | |
tree | 3447866ac7afcb697ac96294ae05924db5e5753d /board/freescale/mpc8610hpcd/mpc8610hpcd.c | |
parent | 374a235d42fa63cc84dbf384944a69b2d05bdc81 (diff) | |
download | u-boot-imx-26fd33b9be0ccfbefcfe89fe1632bbff0fc901c6.zip u-boot-imx-26fd33b9be0ccfbefcfe89fe1632bbff0fc901c6.tar.gz u-boot-imx-26fd33b9be0ccfbefcfe89fe1632bbff0fc901c6.tar.bz2 |
powerpc/86xx: display boot device and bank on the MPC8610 HPCD
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Diffstat (limited to 'board/freescale/mpc8610hpcd/mpc8610hpcd.c')
-rw-r--r-- | board/freescale/mpc8610hpcd/mpc8610hpcd.c | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/board/freescale/mpc8610hpcd/mpc8610hpcd.c b/board/freescale/mpc8610hpcd/mpc8610hpcd.c index d7dd470..4e4b7c0 100644 --- a/board/freescale/mpc8610hpcd/mpc8610hpcd.c +++ b/board/freescale/mpc8610hpcd/mpc8610hpcd.c @@ -94,11 +94,32 @@ int checkboard(void) volatile ccsr_local_mcm_t *mcm = &immap->im_local_mcm; u8 *pixis_base = (u8 *)PIXIS_BASE; - printf ("Board: MPC8610HPCD, System ID: 0x%02x, " - "System Version: 0x%02x, FPGA Version: 0x%02x\n", + printf ("Board: MPC8610HPCD, Sys ID: 0x%02x, " + "Sys Ver: 0x%02x, FPGA Ver: 0x%02x, ", in_8(pixis_base + PIXIS_ID), in_8(pixis_base + PIXIS_VER), in_8(pixis_base + PIXIS_PVER)); + /* + * The MPC8610 HPCD workbook says that LBMAP=11 is the "normal" boot + * bank and LBMAP=00 is the alternate bank. However, the pixis + * altbank code can only set bits, not clear them, so we treat 00 as + * the normal bank and 11 as the alternate. + */ + switch (in_8(pixis_base + PIXIS_VBOOT) & 0xC0) { + case 0: + puts("vBank: Standard\n"); + break; + case 0x40: + puts("Promjet\n"); + break; + case 0x80: + puts("NAND\n"); + break; + case 0xC0: + puts("vBank: Alternate\n"); + break; + } + mcm->abcr |= 0x00010000; /* 0 */ mcm->hpmr3 = 0x80000008; /* 4c */ mcm->hpmr0 = 0; |