Your SlideShare is downloading. ×
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
271 Ch
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

271 Ch

558

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
558
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 7.3.1 配置和编译 U-Boot 注意:要编译 U-Boot 请使用光盘带的 arm-linux-gcc-3.4.1 编译器,这是带有浮点处理 功能的编译器。U-Boot 源代码包位于光盘的/OpenSourceBootloader 目录中 首先解压源代码包到工作目录: #tar xvzf u-boot-1.1.6-FA24x0.tar.gz –C /opt/FriendlyARM/mini2440 执行该命令将把 U-Boot 源代码解压到/opt/FriendlyARM/mini2440 目录。 再检查一下当前编译器版本,执行: #arm-linux-gcc -v 如图,注意是带软浮点运算功能的编译器: 配置 U-Boot 十分简单,进入 U-Boot 目录,执行: #make open24x0_config #make 就可以开始编译了,编译完毕,如图所示生成 u-boot.bin 第 - 271 - 页
  • 2. 7.3.2 把 U-Boot 烧写到开发板 要烧写 U-Boot,需要把开发板拨动开关 S2 设置为 Nor Flash 启动,连接好串口和 USB 线,打开超级终端,打开电源,串口显示如图: 第 - 272 - 页
  • 3. 选择功能号 “a” 打开 DNW, , 确认 USB 连接正常 OK, UsbPort Transmit/Restore, 点 选择刚才所编译的 u-boot.bin,下载和烧写很快就会结束。 把 mini2440 启动模式改为 Nand Flash 启动,重新复位或者重启开机电源开关,在串 口终端可以看到如图信息,如果开发板中已经安装了 linux 系统,U-Boot 将会自动启动它, 否则会进入 U-Boot 的功能菜单(也可以根据提示,在开机后 3 秒中内按任意键进入): 第 - 273 - 页
  • 4. U-Boot 的功能菜单如图,您可以按照功能选项进行测试,它和 supervivi 基本是类似的: 注意:若使用 U-Boot,这时你需要完全抛弃 Nor Flash 中 supervivi 的那些功能命令, 使用 U-Boot 本身的功能来下载和烧写内核,以及文件系统。关于 U-Boot 的使用方法用户可 以参考网上的资料,我们将在以后的文档更新中添加。 第 - 274 - 页
  • 5. 第 - 275 - 页
  • 6. 第八章 配置和编译 linux 内核 注意:编译内核需要设置交叉编译环境为 3.4.1 版本的编译器,请参考“建立 linux 开 发环境”一节。 8.1 使用缺省配置文件编译内核 8.1.1 解压内核源代码 Linux 内 核 的 源 代 码 包 位 于 光 盘 的 linux 目 录 , 您 在 该 目 录 下 还 会 看 到 类 似 linux-2.6.13-mini2440_20080910.tgz 的文件。 把内核源代码包复制到某一个目录,进入该目录,运行以下命令: #tar xvzf linux-2.6.13-mini2440_20080910.tgz –C /opt/FriendlyARM/mini2440 第 - 276 - 页
  • 7. 这样将把内核源代码解压到/opt/FriendlyARM/mini2440/kernel-2.6.13 目录 8.1.2 装载缺省配置文件 进入内核源代码目录,然后执行“make menuconfig” ,出现配置内核界面,选择进入 “Load an Alternate Configuration File”配置栏: 输入配置文件名如 config_n35 并回车,在主菜单里选择<Exit>退出并保存设置。 第 - 277 - 页
  • 8. 8.1.3 编译内核 再次提示:编译内核需要 arm-linux-gcc-3.4.1 版本的编译器,请务必检查安装好。 输入以下命令,开始编译内核: #make zImage 第 - 278 - 页
  • 9. 编译结束后,会在 arch/arm/boot 目录下生成 linux 内核映象文件:zImage 第 - 279 - 页
  • 10. 您可以使用以上章节介绍的方法把 zImage 下载到开发板测试。 8.1.4 各个 Linux 驱动程序源代码位置 说明: 解压内核源代码(linux-2.6.13 开头的 tgz 压缩文件)可以找到如下驱动, mini2440 提供 linux-2.6.13 内核 100%完全可以使用的驱动源代码,绝无库文件,敬请放心使用。 (1)DM9000 网卡驱动 kernel-2.6.13/drivers/net/dm9000x.c (2)串口(包括三个串口驱动 0,1,2,对应设备名/dev/tts/0,1,2) kernel-2.6.13/drivers/serial/s3c2410.c (3)实时时钟 RTC 驱动 kernel-2.6.13/drivers/char/s3c2410-rtc.c (4)LED 驱动 kernel-2.6.13/drivers/char/qq2440_leds.c (5)按键驱动 kernel-2.6.13/drivers/char/qq2440_buttons.c (6)触摸屏驱动 kernel-2.6.13/drivers/input/touchscreen/s3c2410_ts.c 第 - 280 - 页
  • 11. (7)yaffs 文件系统源代码目录 kernel-2.6.13/fs/yaffs2 (8)USB 鼠标、键盘源代码 kernel-2.6.13/drivers/ usb/input/hid-input.c (9)SD/MMC 卡驱动源代码目录(在 2.6.13 内核中仅支持 2G 容量以内的 SD 卡) kernel-2.6.13/drivers/mmc (10)Nand Flash 驱动 kernel-2.6.13/drivers/mtd/nand (11)UDA1341 音频驱动目录 kernel-2.6.13/ sound/oss/uda1341.c kernel-2.6.13/ drivers/l3 (12)LCD 驱动(包含 3.5quot;, 7quot;, 8.4quot;, 10.4quot;, 12.4quot;, 15quot;等大小的驱动) kernel-2.6.13/drivers/video/s3c2410fb.c (13)优盘支持驱动 kernel-2.6.13/drivers/usb/storage (14)中星微 USB 摄像头驱动 kernel-2.6.13/drivers/usb/media/gspca 8.2 定制 linux 内核 上面我们使用缺省文件配置和编译了内核,其实 linux 内核的配置选项有很多,下面我 们就常见的一些选项分别予以图解,帮助你尽快熟悉内核配置,以便定制自己需要的内核。 运行 make menuconfig 后,进入内核配置主菜单 第 - 281 - 页
  • 12. 8.2.1 如何配置 CPU 选项 在主菜单里面,选择 System Type,按回车进入 第 - 282 - 页
  • 13. 可以看到,系统大部分使用了标注了 S3C2410 的选项,这是因为 S3C2410 和 S3C2440 的很多寄存器地址等地址和设置是完全相同的, 该版本的 linux-2.6 内核不再对这两种 CPU 分 别设置。 如果您要选择板级选项,可以进入 S3C24XX Implementations 子菜单,里面有很多常 见的使用基于 S3C2410 和 S3C2440 的目标板平台选项 第 - 283 - 页
  • 14. 它们分别对应于 arch/arm/mach-s3c2410/mach-* 开头的文件, IPAQ H1940 对应于 如 mach-h1940.c,我们的开发板平台为 mini2440,它和 QQ2440 使用基本相同的配置,因此它 对应于 mach-qq2440.c。另外,在这个文件中,还会用到一个机器码 MACH_TYPE,该机器 码的定义文件为 arch/arm/tools/mach-types,其中,我们开发板的机器码为 782,它还对应于 vivi 源代码中 include/platform/smdk2440.h 文件的 MACH_TYPE 8.2.2 如何配置各个尺寸的 LCD 驱动支持 在主菜单里面,选择 Device Drivers,按回车进入 第 - 284 - 页
  • 15. 选择 Graphics support,按回车进入,选中: <*> Support for frame buffer devices <*> S3C2410 LCD framebuffer support 选中 LCD select,按回车进入,如图 第 - 285 - 页

×