u-boot 在 s3c2410 开发板上移植(NAND Flash Boot)过程
1)u-boot 版本 1.1.3,gcc version 3.3.3 (DENX ELDK 3.1.1 3.3.3-9)
2)在 Makefile 中加入
bks2410_config : unconfig
@./mkconfig $(@:_config=) arm arm920t bks2410 NULL s3c24x0
我把我的板子起名叫 bks2410,可以依自己的喜好修改
3 )建立 board/bks2410 目录,拷贝 board/smdk2410 下 的文件到 board/bks2410 目 录,将
smdk2410.c 更名为 bks2410.c
4)cp include/configs/smdk2410.h include/configs/bks2410.h
5)将 arm-linux-gcc 的目录加入到 PATH 环境变量中,我的是目录/opt/eldk/usr/bin:/opt/eldk/
bin
6)测试编译能否成功:
make bks2410_config
make all ARCH=arm
生成 u-boot.bin 就 OK 了
7)依照你自己开发板的内存地址分配情况修改 board/bks2410/memsetup.S 文件,我的程序:
#include <config.h>
#include <version.h>
#define BWSCON 0x48000000
/* BWSCON */
#define DW8 (0x0)
#define DW16 (0x1)
#define DW32 (0x2)
#define WAIT (0x1<<2)
#define UBLB (0x1<<3)
#define B1_BWSCON (DW32)
#define B2_BWSCON (DW16)
#define B3_BWSCON (DW16 + WAIT + UBLB)
#define B4_BWSCON (DW16)
#define B5_BWSCON (DW16)
#define B6_BWSCON (DW32)
#define B7_BWSCON (DW32)
/* BANK0CON */
#if 0
#define B0_Tacs 0x0 /* 0clk */
#define B0_Tcos 0x0 /* 0clk */
#define B0_Tacc 0x7 /* 14clk */
#define B0_Tcoh 0x0 /* 0clk */
#define B0_Tah 0x0 /* 0clk */
#define B0_Tacp 0x0
#define B0_PMC 0x0 /* normal */
#endif
#define B0_Tacs 0x3 /* 0clk */
#define B0_Tcos 0x3 /* 0clk */
评论1