u-boot-brain/arch/powerpc/cpu
Timur Tabi 6ca88b0958 powerpc/85xx: relocate CCSR before creating the initial RAM area
Before main memory (DDR) is initialized, the on-chip L1 cache is used as a
memory area for the stack and the global data (gd_t) structure.  This is
called the initial RAM area, or initram.  The L1 cache is locked and the TLBs
point to a non-existent address (so that there's no chance it will overlap
main memory or any device).  The L1 cache is also configured not to write
out to memory or the L2 cache, so everything stays in the L1 cache.

One of the things we might do while running out of initram is relocate CCSR.
On reset, CCSR is typically located at some high 32-bit address, like
0xfe000000, and this may not be the best place for CCSR.  For example, on
36-bit systems, CCSR is relocated to 0xffe000000, near the top of 36-bit
memory space.

On some future Freescale SOCs, the L1 cache will be forced to write to the
backing store, so we can no longer have the TLBs point to non-existent address.
Instead, we will point the TLBs to an unused area in CCSR.  In order for this
technique to work, CCSR needs to be relocated before the initram memory is
enabled.

Unlike the original CCSR relocation code in cpu_init_early_f(), the TLBs
we create now for relocating CCSR are deleted after the relocation is finished.
cpu_init_early_f() will still need to create a TLB for CCSR (at the new
location) for normal U-Boot purposes.  This is done to keep the impact to
existing U-Boot code minimal and to better isolate the CCSR relocation code.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2011-09-29 19:01:04 -05:00
..
74xx_7xx unify version_string 2011-07-28 17:22:53 +02:00
mpc5xx unify version_string 2011-07-28 17:22:53 +02:00
mpc5xxx unify version_string 2011-07-28 17:22:53 +02:00
mpc8xx unify version_string 2011-07-28 17:22:53 +02:00
mpc8xxx powerpc/8xxx: Remove dependency on <usb.h> 2011-07-29 16:04:56 -05:00
mpc83xx unify version_string 2011-07-28 17:22:53 +02:00
mpc85xx powerpc/85xx: relocate CCSR before creating the initial RAM area 2011-09-29 19:01:04 -05:00
mpc86xx unify version_string 2011-07-28 17:22:53 +02:00
mpc512x video: Add SHARP LQ084S3LG01 LCD support on P1022DS 2011-08-04 22:55:33 +02:00
mpc824x unify version_string 2011-07-28 17:22:53 +02:00
mpc8220 unify version_string 2011-07-28 17:22:53 +02:00
mpc8260 Convert ISO-8859 files to UTF-8 2011-08-04 23:34:02 +02:00
ppc4xx ppc4xx: Flush dcache after DDR2 autocalibration with caches on 2011-09-19 11:51:21 +02:00