Bootloader
文章平均质量分 78
qt_girl
这个作者很懒,什么都没留下…
展开
-
嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(一)
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。共享资源,欢迎转载:http://hbhuanggang.cublog.cn一、移植环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand,Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2.tgzu-boot:u-boot-2009.08.tar.bz2二、移植步骤本次移植的功能转载 2010-12-05 11:25:00 · 457 阅读 · 0 评论 -
U-boot的使用(一)
<br />我一贯认为:对于一个技术类的东西,你连用都不会用,那根本就不可能会开发。就好像一个人连Linux不会用,那还谈何开发Linux程序呢? 同样的要开发和移植U-boot,首先要对U-boot有一定的了解,起码要会使用。 所以这里我们首先熟悉一下U-boot的使用以及如何将U-boot烧入mini2440。<br /> 当然在这之前首先必须保证你的板子上已经有了U-boot。如果没有那就先烧上一个吧。针对mini2440的U-boot-2009.11的bin文件我已经上传到了博客中转载 2010-12-06 15:45:00 · 650 阅读 · 0 评论 -
U-boot的使用(二)
(3)串口传输命令<br />命令:<br />loadb - load binary file over serial line (kermit mode)<br />loadx - load binary file over serial line (xmodem mode)<br />loady - load binary file over serial line (ymodem mode) 功能:以不同的协议从串口获取文件.。<br />格式基本都为:<br />load? [ off转载 2010-12-06 15:51:00 · 1534 阅读 · 0 评论 -
U-boot的使用(三)
(6) 内存/寄存器操作指令nm 修改内存值 (指定地址) 格式: nm [.b, .w, .l] address mm 修改内存值(地址自动加一)格式: mm [.b, .w, .l] address md 显示内存值格式: md [.b, .w, .l] address [# of objects] mw 用指定的数据填充内存格式: mw [.b, .w, .l] address value [count] cp 内存的拷贝(包括内存与Nor转载 2010-12-06 15:54:00 · 1343 阅读 · 0 评论 -
U-boot的使用(四)
下载与烧写使用U-boot将映像文件烧写到板上的Flash,一般步骤是:(1)通过网络、串口、U盘、SD卡等方式将文件传输到SDRAM;(2)使用Nand Flash或Nor Flash相关的读写命令将SDRAM中的数据烧入Flash。下面是烧写范例:如果使用 SD卡和U盘形式更新U-boot,那么首先SD卡和U盘中必须有FAT32文件系统,并在里面存放了u-boot.bin 文件。1) 通过SD卡烧入Nand Flash:[u-boot@MINI2440]# mmc initmmc: Probing fo转载 2010-12-06 16:28:00 · 898 阅读 · 0 评论 -
U-boot开机logo的制作方法
<br />在有实现LCD显示和LCD命令行终端的U-boot中,在左上角都有显示一个logo,如果是atmel的芯片,就会有atmel的logo,三星的则是denx的logo。<br />有的网友发邮件说想改成自己公司的Logo,而且如果是自己玩的话,改成自己喜欢的logo也爽阿。所以今天我做好了实验,将简单的修改方法总结如下:<br />一、图片的放置路径<br />所有的开机logo都放在了 /tools/logos 之下,你只需要将你的班子作对应的logo替换就好了。<br />对于S3C2440,转载 2010-12-06 17:35:00 · 744 阅读 · 0 评论 -
u-boot烧写yaffs2文件系统
u-boot烧写yaffs2文件系统<br /> 以前移植的U-boot一直都支持Yaffs2文件系统的烧写,但是我一直都没有时间测试,其中的Bug也是网友发现后修正的。虽然现在又有新的UBI文件系统,但是UBI是在Linux2.6.28以后才被支持的,所以yaffs2还是需要的。前几天因为项目需要,我又试了一次Yaffs2的烧写引导,在这里记录下来,以备后用。<br /><br />一、下载Yaffs2映像制作工具。<br /> mkyaffs2image就在yaffs2的源码包里:Yaf转载 2010-12-06 17:42:00 · 1947 阅读 · 0 评论 -
嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(二)
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。共享资源,欢迎转载:http://hbhuanggang.cublog.cn<br />一、移植环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand,Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2.tgzu-boot:u-boot-2009.08.tar.bz2<br />二转载 2010-12-05 22:00:00 · 327 阅读 · 0 评论 -
Boot Loader的概念和功能
1、嵌入式Linux软件结构与分布在一般情况下嵌入式Linux系统中的软件主要分为以下及部分:(1)引导加载程序:其中包括内部ROM中的固化启动代码和Boot Loader两部分。而这个内部固化ROM是厂家在芯片生产时候固化的,作用基本上是引导Boot Loader。有的芯片比较复杂,比如Omap3,他在flash中没有代码的时候有许多启动方式:USB、UART或以太网等等。而S3C24x0则很简单,只有Norboot和Nandboot。(2)Linux kernel 和drivers。(3)文件系统。包括转载 2010-12-06 15:17:00 · 548 阅读 · 0 评论 -
开发环境准备
开发前的准备有以下几个方面:1 、交叉编译工具链的安装。 我在前段时间使用了Crosstool-ng编译出了for ARMv4t的交叉编译工具,Gcc的版本是4.3.2,可以用来编译最新版的Linux内核,当然也可以轻松的编译U-Boot.请看:《用crosstool-ng建立Linux 交叉编译环境》<br />在编译好交叉编译工具链后,关键是要在环境变量的PATH中添加编译工具的路径(也就是arm-*-linux-*-gcc所在的路径),在编译时系统才找得到命令。在Ubuntu下的修改方法: <br转载 2010-12-06 15:41:00 · 372 阅读 · 0 评论 -
U-boot简介
一、U-boot的起源U-Boot是Das U-Boot的简称,其含义是Universal Boot Loader,是遵循GPL条款的开放源码项目。一开始德国DENX软件工程中心的Wolfgang Denk基于8xxROM和FADSROM的源码创建了PPCBoot工程项目,此后不断添加处理器的支持。后来,Sysgo Gmbh把PPCBoot移植到ARM平台上,创建了ARMBoot工程项目。然后以PPCBoot工程和ARMBoot工程为基础,创建了U-Boot工程,2002年12月17日第一个版本U-Boot转载 2010-12-06 15:29:00 · 388 阅读 · 0 评论 -
嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(三)
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。<br /><br />一、移植环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand,Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2.tgzu-boot:u-boot-2009.08.tar.bz2<br />二、移植步骤<br />上接:u-boot-2009.08在244转载 2010-12-05 22:04:00 · 271 阅读 · 0 评论 -
U-boot源码简要分析(一)
<br />1.U-boot源码整体框架<br />源码解压以后,我们可以看到以下的文件和文件夹:<br /><br /><br /><br /><br /> cpu<br />与处理器相关的文件。每个子目录中都包括cpu.c和interrupt.c、start.S、u-boot.lds。<br />cpu.c初始化CPU、设置指令Cache和数据Cache等<br />interrupt.c设置系统的各种中断和异常<br />start.S是U-boot启动时执行的第一个文件,它主要做最早其的系统初始化,转载 2010-12-06 16:10:00 · 647 阅读 · 0 评论 -
U-boot源码简要分析(二)
<br />现在我们再来看看lib_arm/board.c中的第二阶段入口函数start_armboot :<br /><br />void start_armboot (void) <br />{<br /> init_fnc_t **init_fnc_ptr;<br /> char *s;<br />#if defined(CONFIG_VFD) || defined(CONFIG_LCD)<br /> unsigned lo转载 2010-12-06 16:24:00 · 484 阅读 · 0 评论 -
嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(四)
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。<br /><br />一、移植环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand,Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2.tgzu-boot:u-boot-2009.08.tar.bz2<br />二、移植步骤<br />上接:u-boot-2009.08在244转载 2010-12-05 22:06:00 · 331 阅读 · 0 评论 -
嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(五)
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。<br /><br />一、移植环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand,Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2.tgzu-boot:u-boot-2009.08.tar.bz2<br />二、移植步骤<br />上接:u-boot-2009.08在244转载 2010-12-05 22:08:00 · 421 阅读 · 0 评论 -
嵌入式Linux之我行——u-boot-2009.08在2440上的移植详解(六)
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。<br /><br />一、移植环境主 机:VMWare--Fedora 9开发板:Mini2440--64MB Nand,Kernel:2.6.30.4编译器:arm-linux-gcc-4.3.2.tgzu-boot:u-boot-2009.08.tar.bz2<br />二、移植步骤<br />上接:u-boot-2009.08在244转载 2010-12-05 22:10:00 · 615 阅读 · 0 评论 -
嵌入式Linux之我行——s3c2440的IO静态映射的分析
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。内存映射分3个层次:开发板的层次(如:声卡,网卡和开发板相关的部分) 最小系统的层次(系统必需的几个,如GPIO,IRQ,MEMCTRL,UART) 其他系统的层次(不影响开机的部分,如:usb,lcd,adc)<br /> 开发板的mapio的初始化: <br /> smdk2440_map_io函数中会调用: s3c24xx_ini转载 2010-12-05 22:27:00 · 614 阅读 · 0 评论 -
u-boot移植详细文档
做U-boot移植很久了,一直没有时间写一份详细的文档。这次花了很多时间写了这份可以说是比较全面的文档,希望对大家的移植和学习有用。 这次的移植使用的是友善之臂的mini2440,原先我在2008年的10月份买了一块64MB Nand Flash的板子,做了好几个版本的U-boot的移植。但是一直没有2K/页的 Nand Flash做移植实验,网友也常问到2K/页的 Nand Flash的U-boot引导移植问题,我在没有试验过的时候也是无能为力。 在这里要感谢友善之臂公司在2009年转载 2010-12-06 15:15:00 · 618 阅读 · 0 评论 -
在U-boot下实现自动识别启动Flash的原理(针对S3C24x0)
在U-boot下实现自动识别启动Flash的原理(针对S3C24x0)<br />有网友给我一个建议,是否可以同时支持64MB的flash和128MB的flash,我想了一下觉得可行,再想一下觉得还可以实现自动识别Nor boot 还是 Nand boot。 所以在移植u-boot-2009.08的时候,我决定实现这两个功能。其实实现这两个功能是只需要修改start.S文件和nand_read.c文件即可,关键在于检测手段,以下分别介绍我在u-boot-2009.08中实现的S3C2440启动识别flash转载 2010-12-06 17:33:00 · 498 阅读 · 0 评论