S3C2410 ARM编程学习记录
9-20 :
9-20 :
- UART初始化: init_UART(),串口字符输入、输出成功: getc(), putc();
( head.S, serial.c ) - SDRAM控制器初始化: memsetup(),
将0x0处的前4KB程序复制到SDRAM起始地址0x30000000,
堆栈指针初始化到SDRAM地址;
( head.S ) - NAND Flash 初始化: init_nand(),
从NAND读取全部程序到SDRAM: nand_read_ll(),跳转到SDRAM继续执行;
( nand_read.c ) - 使用Linux的lib/vsprintf.c实现printf、scanf两个函数
( /lib/vsprintf.c, /lib/printf.c )
- heap.c: mmalloc(), mfree();
- 启用MPLL,CPU on 200MHz;
- mmu.c: mmu映射,启用 I-Cache D-Cache,程序运行速度倍增!
- serial.c, head.S: 修改UART控制器参数,波特率改为115200bps,修改SDRAM控制器参数
- include/s3c2410.h:
新增#define CONFIG_MPLL_ON, #define CONFIG_CPU_I_CACHE_ON, #define CONFIG_CPU_D_CACHE_ON
10-3: 启动Linux内核映像,成功;
10-13: Linux 2.6.27 内核移植成功,内核成功引导,并挂上cramfs根目录
10-14:
- Busybox 1. 移植成功(官方代码个别部分存在bug,如宏未定义等,须自行修正);
- 系统启动脚本、配置文件编写完成;
- cramfs文件系统制作完成;
<计划安排>: