diff options
author | Niklaus Giger <niklaus.giger@netstal.com> | 2008-02-05 11:31:28 +0100 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2008-02-16 06:40:05 +0100 |
commit | 74973126d1be63ac75bdc192f46234dca3a7c421 (patch) | |
tree | 52e9b539ca6e6bb85d136c0cb2252e19b3306cd5 /board/netstal/hcu5 | |
parent | 8cc10d06b833ed917a19ad358c8ebbed8bc19555 (diff) | |
download | u-boot-imx-74973126d1be63ac75bdc192f46234dca3a7c421.zip u-boot-imx-74973126d1be63ac75bdc192f46234dca3a7c421.tar.gz u-boot-imx-74973126d1be63ac75bdc192f46234dca3a7c421.tar.bz2 |
ppc4xx: HCU4/5. Cleanups
- Fix some coding style violations.
- Use in/out_u16/32 where appropriate.
- Use register names from ppc405.h.
- Fix trace useage for Lauterbach.
- Remove obsolete generation HCU2.
- Renamed fixed_hcu4_sdram to init_ppc405_sdram.
Signed-off-by: Niklaus Giger <niklaus.giger@netstal.com>
Diffstat (limited to 'board/netstal/hcu5')
-rw-r--r-- | board/netstal/hcu5/hcu5.c | 8 | ||||
-rw-r--r-- | board/netstal/hcu5/sdram.c | 32 |
2 files changed, 22 insertions, 18 deletions
diff --git a/board/netstal/hcu5/hcu5.c b/board/netstal/hcu5/hcu5.c index 2c7afe2..c494e93 100644 --- a/board/netstal/hcu5/hcu5.c +++ b/board/netstal/hcu5/hcu5.c @@ -309,15 +309,13 @@ int misc_init_r(void) */ if (mfspr(dbcr0) & 0x80000000) { /* External debugger alive - * enable trace facilty for Lauterback - * CCR0[DAPUIB]=0 Enable broadcast of instruction data - * to auxiliary processor interface + * enable trace facilty for Lauterbach * CCR0[DTB]=0 Enable broadcast of trace information * SDR0_PFC0[TRE] Trace signals are enabled instead of * GPIO49-63 */ - mtspr(ccr0, mfspr(ccr0) &~ 0x00108000); - mtsdr(SDR0_PFC0, sdr0_pfc1 | 0x00000100); + mtspr(ccr0, mfspr(ccr0) &~ (CCR0_DTB)); + mtsdr(SDR0_PFC0, sdr0_pfc1 | SDR0_PFC0_TRE_ENABLE); } return 0; } diff --git a/board/netstal/hcu5/sdram.c b/board/netstal/hcu5/sdram.c index 5435de1..d3c2233 100644 --- a/board/netstal/hcu5/sdram.c +++ b/board/netstal/hcu5/sdram.c @@ -165,19 +165,25 @@ static void program_ecc(unsigned long start_address, unsigned long num_bytes) u32 val; char str[] = "ECC generation -"; #if defined(CONFIG_PRAM) - u32 *magic; - - /* Check whether vxWorks is using EDR logging, if yes zero */ - /* also PostMortem and user reserved memory */ - magic = (u32 *)in_be32((u32 *)(start_address + num_bytes - - (CONFIG_PRAM*1024) + sizeof(u32))); - - debug("\n%s: CONFIG_PRAM %d kB magic 0x%x 0x%p -> 0x%x\n", __FUNCTION__, - CONFIG_PRAM, - start_address + num_bytes - (CONFIG_PRAM*1024) + sizeof(u32), - magic, in_be32(magic)); - if (in_be32(magic) == 0xbeefbabe) - num_bytes -= (CONFIG_PRAM*1024) - PM_RESERVED_MEM; + u32 *magicPtr; + u32 magic; + + if ((mfspr(dbcr0) & 0x80000000) == 0) { + /* only if no external debugger is alive! + * Check whether vxWorks is using EDR logging, if yes zero + * also PostMortem and user reserved memory + */ + magicPtr = (u32 *)(start_address + num_bytes - + (CONFIG_PRAM*1024) + sizeof(u32)); + magic = in_be32(magicPtr); + debug("%s: CONFIG_PRAM %d kB magic 0x%x 0x%p\n", + __FUNCTION__, CONFIG_PRAM, + magicPtr, magic); + if (magic == 0xbeefbabe) { + printf("%s: preserving at %p\n", __FUNCTION__, magicPtr); + num_bytes -= (CONFIG_PRAM*1024) - PM_RESERVED_MEM; + } + } #endif sync(); |