Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1208065
  • 博文数量: 322
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 3276
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-17 09:21
文章分类

全部博文(322)

文章存档

2010年(155)

2009年(167)

我的朋友

分类: 嵌入式

2010-01-02 12:24:38

u-boot移植(将分(一)、(二)、(三)(四)部分完成移植工作)

(三)

1U-BOOTlinux内核传递合适参数的定义

修改include/configs/fs2410.h如下:

……

……

 

#define CONFIG_RTC_S3C24X0   1

#define CONFIG_ENV_OVERWRITE

#define CONFIG_BAUDRATE        115200

 

#define CONFIG_CMDLINE_TAG  1

#define CONFIG_SETUP_MEMORY_TAGS 1

#define CONFIG_INITRD_TAG       1

 

2、修改UBOOT2410CPU频率

smdk2410U-BOOT原来运行频率是202.8M,而FS2410BIOS里面是200M,所以不修改频率可能会出点问题。按照网上的说法,内核中,在\arch\arm\mach_s3c2410\fs2410.c 中,fclk = s3c2410_get_pll(MPLLCON, xtal);   //读出来的fclk结果和bootloader的频率不一致。

修改board/fs2410/fs2410.c文件如下:

#define FCLK_SPEED 1

#if FCLK_SPEED==0  

#define M_MDIV 0xC3

#define M_PDIV 0x4

#define M_SDIV 0x1

#elif FCLK_SPEED==1  

//#define M_MDIV 0xA1

//#define M_PDIV 0x3

//#define M_SDIV 0x1

#define M_MDIV 0x5c  

#define M_PDIV 0x4

#define M_SDIV 0x0

#endif

3、修改include/configs/fs2410.h中的CFG_LOAD_ADDR的地址为0x30007FC0

这是内核的加载地址,board/fs2410/config.mk文件注释中提到Linux内核希望自己被加载到0x30008000的内存地址,而由于uImage会在kernel镜像之前加上大小为0x40的头文件消息,所以需要减去0x40

 

阅读(599) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~