霡霂的个人空间 https://blog.eetop.cn/maimu [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

uclinux板级移植

已有 1287 次阅读| 2006-6-24 20:21 |个人分类:备份

天气: 晴朗
心情: 高兴
当使用处理器已经被uClinux支持时,主要的工作就是针对硬件电路板的区别进行的板级移植。板级移植的主要内容是由电路板存储区外围电路所决定的相关程序地址设置,如果有需要会涉及部分驱动程序的编写。
1. 存储器参数
存储器参数在文件uClinux/linux-x.x.x/include/linux/autoconf.h中定义,包括DRAM_BASE、DRAM_SIZE、FLASH_MEM_BASE和FLASH_SIZE四个参数,分别定义内存的起始地址、内存的长度、Flash的起始地址和Flash的长度。针对不同的电路板,这些参数可能不同。
2. 内核运行起始地址
内核运行起始地址符号TEXTADDR,一般在RAM区或FLASH区起始地址偏移0x8000位置,在linux-2.4.x/arch/armnommu/makefile中定义,由链接脚本linux-2.4.x/arch/armnommu/vmlinux.lds引用。
3. 内核解压引导程序相关地址
内核解压引导程序运行起始地址符号ZTEXTADDR,解压程序从这个地址开会是运行。解压后的内核放置的起始地址ZRELADDR,与内核运行起始地址TEXTADDR相同。这两个参数在linux-2.4.x/arch/armnommu/boot/makefile中定义。
4. 内核解压引导程序存储区初始化
linux-2.4.x/arch/armnommu/boot/compressed/head.S文件中存储区映射(memory map)代码,必须根据外围存储区电路的硬件实现进行修改。
5、驱动程序 37
一个基本的驱动程序就是串行口驱动,串行口驱动在内核启动之初即可提供调试用的终端,内核通过start_kernel函数里的console_init函数调用终端,console_init函数在linux-2.4.x/drivers/char/tty_io.c文件中定义。

点赞

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 0

    总排名
  • 0

    关注
  • 3

    粉丝
  • 1

    好友
  • 6

    获赞
  • 45

    评论
  • 3123

    访问数
关闭

站长推荐 上一条 /1 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-27 05:17 , Processed in 0.024924 second(s), 14 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部