diff options
author | Marian Balakowicz | 2008-05-07 13:10:04 +0200 |
---|---|---|
committer | Wolfgang Denk | 2008-05-10 00:16:13 +0200 |
commit | 1b5605ca57fbb364f4d78eeee28b974ed875e888 (patch) | |
tree | 0a19c491ded69f7b2e1771e654e6b90807bde522 /common/image.c | |
parent | c59518e15949b3403df5c5b0c2c48ea0e5bea24b (diff) |
Avoid initrd and logbuffer area overlaps
Add logbuffer to reserved LMB areas to prevent initrd allocation
from overlaping with it.
Make sure to use correct logbuffer base address.
Signed-off-by: Marian Balakowicz <m8@semihalf.com>
Diffstat (limited to 'common/image.c')
-rw-r--r-- | common/image.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/common/image.c b/common/image.c index f4070fb3876..f7faf504d42 100644 --- a/common/image.c +++ b/common/image.c @@ -36,6 +36,10 @@ #include <dataflash.h> #endif +#ifdef CONFIG_LOGBUFFER +#include <logbuff.h> +#endif + #if defined(CONFIG_TIMESTAMP) || defined(CONFIG_CMD_DATE) #include <rtc.h> #endif @@ -1018,6 +1022,9 @@ int boot_ramdisk_high (struct lmb *lmb, ulong rd_data, ulong rd_len, initrd_high = ~0; } + /* Prevent initrd from overwriting logbuffer */ + lmb_reserve(lmb, logbuffer_base() - LOGBUFF_OVERHEAD, LOGBUFF_RESERVE); + debug ("## initrd_high = 0x%08lx, copy_to_ram = %d\n", initrd_high, initrd_copy_to_ram); |