http://www.csdn.net/ http://www.arm.com/zh/ https://www.kernel.org/ http://www.linuxpk.com/ http://www.51develop.net/ http://linux.chinaitlab.com/ http://www.embeddedlinux.org.cn http://bbs.pediy.com/
全部博文(579)
发布时间:2014-03-10 11:18:47
uboot版本:uboot-1.1.6以linux为例: Armlinux.c (u-boot-1.1.6\lib_arm) 中,点击(此处)折叠或打开#include <common.h>#include <command.h>#include <image.h>#include <zlib.h>.........【阅读全文】
发布时间:2014-02-20 11:17:54
操作系统:ubuntu10.04前言: 在上一章节中,分析了实现的思路。下面就是实现的源码,在源码中有详细的注释。1,start.S点击(此处)折叠或打开/* watch dog registers */#define WTCON  .........【阅读全文】
发布时间:2014-01-19 16:21:25
操作系统:ubuntu10.04前言: 在上一章节中,详细分析了uboot中的顶级makefile,了解了uboot的编译流程,在本章节中,将要详细分析的是uboot 的执行流程。而uboot的第一条执行,是在 start.S 的。一,start.S的详细分析。点击(此处)折叠或打开/* * armboot - Sta.........【阅读全文】
发布时间:2014-01-17 19:09:58
ARM Linux Kernel Boot Requirements 是ARM Linux内核的维护者Russell King写的。详细内容如下:Booting ARM LinuxAuthor: Russell KingInitial date: May 18, 2002Revision: 2 - 30 September 2004In order to boot ARM Linux, you require a boot loader, which is a smallprogram that runs before the mai.........【阅读全文】
发布时间:2014-01-15 18:44:07
操作系统:ubuntu10.04 前言: 要完成自己的uboot,首先要熟悉广泛使用的Uboot的架构,实现。 而看linux的大项目的源码,切入点基本都是从makefile开始。1,makefile详解: 如果对makefile有疑惑的请看:*makefile 博文链接 点击(此处)折叠或打.........【阅读全文】
发布时间:2013-12-31 11:36:45
启动armlinux,bootloader必须提供下面几步: 1. 设置并初始化ram 2. 初始化一个串口 3. 检测处理器类型 4. 设置内核标记列表 5. 调用内核映像 1. 设置并初始化ram &n.........【阅读全文】
发布时间:2013-11-27 17:55:35
操作系统:ubuntu11.04开发板:arm9开发板前言: 通过uboot来启动开发板。1,uboot实现概述 1)实现思路 通过 J-FLASH 软件实现把编译好的软件烧写到 nand flash 的相关位置,不使用网络,或usb,或串口等方式来烧写程序到flash中。因此,核心工.........【阅读全文】
发布时间:2013-02-20 11:34:47
PC操作系统:ubuntu11.10开发板:am335x_evmuboot :u-boot-2011.09-psp04.06.00.07生成所需文件:MLO(SPL),uboot.img,命令如下:#make O=am335x am335x_evmmakefile的执行流程如下:1,生成板子依赖文件:$(obj).boards.depend:boards.cfgawk '(NF && $$1 !~ /^#/) { print $$1 .........【阅读全文】
发布时间:2012-12-28 19:25:31
研究内核源码和内核运行原理的时候,很总要的一点是要了解内核的初始情况,也就是要了解内核启动过程。我在研究内核的内存管理的时候,想知道内核启动后的页表的放置,页表的初始化等信息,这促使我这次仔细地研究内核的启动代码。 CPU在bootloader的帮助下将内核载入到了内存中,并开始执行。当然,bootloader必须为zImage做好必要的准备: 1. CPU 寄存器的设置:R0=0;R1=Machine ID(即Machine Type Number,定义在linux/arch/arm/tools/mach-types);R2=内......【阅读全文】
发布时间:2012-12-27 17:13:20
1.1 U-Boot工作过程 U-Boot启动内核的过程可以分为两个阶段,两个阶段的功能如下: (1)第一阶段的功能 Ø 硬件设备初始化 Ø 加载U-Boot第二阶段代码到RAM空间 Ø 设置好栈 Ø 跳转到第二阶段代码入口 (2)第二阶段的功能 Ø 初始化本阶段使用的硬件设备 Ø 检测系统内存映射 Ø 将内核从Flash读取到RAM中 Ø 为内核设置启动参数 Ø 调用内核 1.1.1 U-Boot启动第一阶段代码分析 第一阶段对应的文......【阅读全文】
发布时间:2012-12-27 17:06:42
两年前总结的东西,一时没时间整理,放了很久居然差点忘了,现在重见天日了。但是还不是很完整,先放上来,以后有时间就完善她。~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 最近需要在板子上加上一块WatchDog,以确保在系统出错时自动重启,所以看了一些在嵌入式系统中使用看门狗的资料,现在总结如下:一、看门狗原理 在产品化的嵌入式系统中,为了使系统在异常情况下能自动复位,一般都需要引入看门狗。 看门狗其实就是一个可以在一定时间内被复位的计数器。当看门狗启动后,计数器开始自动计......【阅读全文】
发布时间:2012-12-27 16:07:06
现在我们再来看看lib_arm/board.c中的第二阶段入口函数start_armboot : void start_armboot (void) { init_fnc_t **init_fnc_ptr; &nbs......【阅读全文】
发布时间:2012-12-27 16:03:47
本次移植使用的是U-boot-2009.11。 先来看看源码目录结构,再按照代码的执行顺序简单地分析源码 1.U-boot源码整体框架 源码解压以后,我们可以看到以下的文件和文件夹: cpu 与处理器相关的文件。每个子目录中都包括cpu.c和interrupt.c、start.S、u-boot.lds。 cpu.c初始化CPU、设置指令Cache和数据Cache等 interrupt.c设置系统的各种中断和异常 start.S是U-boot启动时执行的第一个文件,它主要做最早其的......【阅读全文】
发布时间:2012-12-27 15:47:16
下载与烧写 使用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 init mmc: Probing for SDHC ... mmc: SD 2......【阅读全文】
发布时间:2012-12-27 15:46:46
(6) 内存/寄存器操作指令 nm 修改内存值 (指定地址) 格式: nm [.b, .w, .l] address mm 修改内存值(地址自动加一)格式: mm [.b, .w, .l] address md 显示内存值格式: md [.b, .w, .l] address [# of objects......【阅读全文】
发布时间:2012-12-27 15:45:39
(3)串口传输命令 命令:loadb - load binary file over serial line (kermit mode)loadx - load binary file over serial line (xmodem mode)loady - load binary file over serial line (ymodem mode) 功能:以不同的协议从串口获取文件.。格式基本都为:load? [ off ] [ baud ]第1个参数是下载到SDRAM的地址,如果不填,就是用默认......【阅读全文】
发布时间:2012-12-27 15:16:44
我一贯认为:对于一个技术类的东西,你连用都不会用,那根本就不可能会开发。就好像一个人连Linux不会用,那还谈何开发Linux程序呢? 同样的要开发和移植U-boot,首先要对U-boot有一定的了解,起码要会使用。 所以这里我们首先熟悉一下U-boot的使用以及如何将U-boot烧入mini2440。 当然在这之前首先必须保证你的板子上已经有了U-boot。如果没有那就先烧上一个吧。针对mini2440的U-boot-2009.11的bin文件我已经上......【阅读全文】