主题 : 求助:ecos移植到友善的Micro2440的redboot的内存布局如何配置? 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 21281
精华: 0
发帖: 3
金钱: 15 两
威望: 3 点
综合积分: 6 分
注册时间: 2010-05-14
最后登录: 2010-05-18
楼主  发表于: 2010-05-16 15:54

 求助:ecos移植到友善的Micro2440的redboot的内存布局如何配置?

管理提醒: 本帖被 qq2440 从 micro2440技术交流专区 移动到本区(2013-11-18)
求助:前不我刚买了块友善的Micro2440板子,准备把ecos移到上面,但redboot移植没有成功。想请高手指点一下Micro2440内存布局文件应该如何进行配置?如果有移植成功的redboot就更好了。
我选的是RAM启动的方式。
板子的资源如下:
CPU CORE :ARM920T
内存:SDRAM 64M   物理地址:BANK6 0x30000000---0x34000000
bootrom : NORFlash :2M
片上SRAM:4K  物理地址:可根据启动方式不同映射为0x40000000(NOR启动)、0x0(NANA启动)

下面是我现在有内存布局文件:

/ eCos memory layout - Fri Oct 20 05:43:59 2000

// This is a generated file - do not edit

#ifndef __ASSEMBLER__
#include <cyg/infra/cyg_type.h>
#include <stddef.h>

#endif
#define CYGMEM_REGION_ram (0x0)
#define CYGMEM_REGION_ram_SIZE (0x4000000)
#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
#define CYGMEM_REGION_sram (0x30000000)
#define CYGMEM_REGION_sram_SIZE (0x1000)
#define CYGMEM_REGION_sram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
#ifndef __ASSEMBLER__
extern char CYG_LABEL_NAME (__heap1) [];
#endif
#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1))
#define CYGMEM_SECTION_heap1_SIZE (0x4000000 - (size_t) CYG_LABEL_NAME (__heap1))

LDI文件:
// eCos memory layout - Fri Oct 20 05:43:59 2000

// This is a generated file - do not edit

#include <cyg/infra/cyg_type.inc>

MEMORY
{
    ram  : ORIGIN = 0x0, LENGTH = 0x4000000
    sram : ORIGIN = 0x30000000, LENGTH = 0x1000
}

SECTIONS
{
    SECTIONS_BEGIN
    SECTION_fixed_vectors (ram, 0x20, LMA_EQ_VMA)
    SECTION_rom_vectors (ram, 0x30000000, LMA_EQ_VMA)
    SECTION_RELOCS (ram, ALIGN (0x1), LMA_EQ_VMA)
    SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_got (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
    SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
    SECTIONS_END
}
级别: 新手上路
UID: 7559
精华: 0
发帖: 3
金钱: 15 两
威望: 3 点
综合积分: 6 分
注册时间: 2009-07-20
最后登录: 2011-03-31
1楼  发表于: 2011-01-15 20:49
同样苦恼中,希望有经验的大侠指点啊!
心有期望,每天都是新期天!
级别: 新手上路
UID: 12732
精华: 0
发帖: 3
金钱: 15 两
威望: 3 点
综合积分: 6 分
注册时间: 2010-01-12
最后登录: 2012-02-28
2楼  发表于: 2012-02-22 16:15
我也是没有成功,估计就是内存布局这一块的问题。