上传者: ma100
|
上传时间: 2025-06-05 20:41:08
|
文件大小: 1.04MB
|
文件类型: PDF
### OMAPL138系统移植知识点详解
#### 一、建立开发环境
##### 1.1 虚拟机环境
- **软件版本**: 使用VMWare 7.0.1 + Fedora Core 12作为虚拟机环境。Fedora Core 12提供了良好的开发基础,并且与OMAPL138的开发需求兼容。
- **安装TFTP服务器**: TFTP服务对于OMAPL138板子的调试至关重要。具体步骤如下:
- 下载`tftp-hpa5.0`,并编译生成客户端`tftp`和服务器`in.tftpd`两个文件。
- 在虚拟机上启动TFTP服务,命令为`in.tftpd –l sc/tftpboot`,其中`s`表示路径,`c`表示允许写权限。
- 将启动命令添加至开机脚本`/etc/rc.d/rc.local`中,确保每次重启后自动启动TFTP服务。
##### 1.1.3 关闭防火墙
- 在Fedora Core 12中,除了关闭标准的iptables服务之外,还需关闭SELinux,以及某些系统可能需要关闭的TCPWrapper服务。
##### 1.1.4 添加NFS服务
- 在虚拟机上添加NFS服务,具体操作如下:
- 编辑`/etc/exports`文件,添加NFS共享目录设置。
- 例如:`/root/workdir/filesys *(rw,no_root_squash,no_all_squash,sync)`,确保没有多余的空格。
##### 1.2 安装TI软件
- 本案例中未采用dsplink安装过程,而是选择了Sourcery G++ Lite 2009q1-203 for ARM作为开发工具。
- **安装步骤**:
- 下载并执行安装程序:`./arm-2009q1-203-arm-none-linux-gnueabi.bin`。
- 修改环境变量,确保编译器能够被正确调用。
- 创建软链接`arm-g++`指向实际编译器位置,方便后续使用。
#### 二、硬件体系结构
##### 2.1 内存地址
- 需要详细了解OMAPL138芯片的内存映射,特别是RAM和其他存储器的地址范围。
##### 2.2 SPI Flash
- SPI Flash通常用于存储引导加载程序或关键系统数据。
##### 2.3 NAND Flash
- NAND Flash是主存储器,用于存储操作系统和应用程序。
##### 2.4 文件烧写
- 烧写文件到NAND Flash的过程,通常涉及特定的工具和技术。
#### 三、Bootloader
##### 3.1 启动框架图
- 描述了OMAPL138启动过程中的各个阶段,以及各组件之间的交互关系。
##### 3.2 ARM-UBL
- UBL (Universal Boot Loader) 是一种轻量级的启动加载程序,用于初始化硬件环境,并准备加载更复杂的U-Boot。
##### 3.3 U-Boot
- **精简**:根据项目需求对U-Boot进行裁剪,移除不必要的功能模块。
- **修改配置文件**:调整配置选项以适应OMAPL138的具体需求。
- **关闭dspwake**:如果不需要DSP功能,则可以在U-Boot中禁用dspwake。
- **增加启动画面**:定制启动时显示的Logo或信息。
- **删除DHCP**:如果不需要网络功能,则可以移除DHCP支持。
- **编译**:使用安装好的编译器进行U-Boot的编译。
- **修改启动参数**:根据实际需求调整启动时的参数配置。
- **补丁制作**:对于特定的功能需求,可以通过制作补丁的方式进行实现。
#### 四、内核
##### 4.1 修改源代码
- **YAFFS2补丁**:适用于NAND Flash的文件系统。
- **CPU配置**:根据OMAPL138的特点进行必要的CPU配置。
- **LCD配置**:支持LCD显示器的配置。
- **NAND Flash配置**:优化NAND Flash的支持。
- **Flash分区**:合理规划Flash分区方案。
- **FAT从设备分区支持**:支持FAT文件系统的从设备分区。
- **启动画面**:自定义内核启动时显示的画面。
- **串口配置**:支持特定的串口功能。
- **PINMUX配置**:配置引脚复用。
- **I2C设备PCA953X**:支持特定的I2C设备。
- **删除多余的tty设备**:移除不必要的终端设备。
- **ECC配置**:配置错误校验码(ECC)功能。
##### 4.2 编译选项
- 配置内核编译时的各种选项,包括编译模式、目标架构等。
##### 4.3 编译
- 使用合适的编译器和配置文件进行内核的编译。
#### 五、根文件系统制作
- **BusyBox**:作为轻量级的工具集合,用于构建根文件系统。
- **给生产线制作安装文件**:制作用于生产线的安装包,便于批量部署。
- **生产线生产机器**:生产线上的机器根据制作好的安装文件进行自动化安装。
以上是对OMAPL138系统移植过程中涉及到的关键知识点的详细总结。在整个移植过程中,开发者需要深入理解每个步骤的目的和意义,并结合实际需求进行适当的调整。