推荐阅读最新更新时间:2024-03-16 16:15
uboot 替代 eboot 烧写、启动 wince
一、wince 启动过程分析 我用的是utu2440的开发板,板子自带的启动文件包括NBOOT1、NBOOT2、EBOOT、wince内核,各个文件作用是: NBOOT1:S3C2440对于NAND FLash,最大加载4K的代码运行,可以直接运行这个程序,NBOOT1启动后会从FLASH中加载NBOOT2 NBOOT2:主要实现从FLASH中读取wince内核、加载eboot、显示启动画面 EBOOT:实现对FLASH进行分区、格式化和烧写WINCE内核镜像文件,这里要注意的是EBOOT在烧写 wince内核镜像的过程中会把NK.bin解压为NB.nb0再写入到flash中。 二、分析UBOOT启动wince的可能性
[单片机]
ARM汇编中的LDR及ADR的区别及其在UBOOT中的应用
我在看U-BOOT的lowlevel_init.S文件时看到以下代码: lowlevel_init: ldr r0, =SMRDATA ldr r1, _TEXT_BASE sub r0, r0, r1 ldr r1, =BWSCON add r2, r0, #13*4 0: ldr r3, , #4 str r3, , #4 cmp r2, r0 bne 0b mov pc, lr 这段代码实现了U-BOOT的内存控制器部分的寄存器初始化,一共13个寄存器,对U-BOOT来最重要的就是SDRAM的初始化,显然没有这部分代码,当U-BOOT从NAND FLASH中启动的时候,START.S文件是无法完成代码的relocate的。因
[单片机]
uboot的简单易懂的启动流程(参照韦东山的讲义)
static ulong get_PLLCLK(int pllreg) { S3C24X0_CLOCK_POWER* const clk_power = S3C24X0_GetBase_CLOCK_POWER(); ulong r, m, p, s; if (pllreg == MPLL) r = clk_power- MPLLCON; else if (pllreg == UPLL) r = clk_power- UPLLCON; else hang(); m = ((r & 0xFF000) 12) + 8; p = ((r & 0x003F0) 4) + 2; s =
[单片机]
详细讲解 移植Uboot到ARMer9开发系统上
首先了解ARMer9开发系统硬件设计上和三星原装SMDK2410之间的区别。让uboot在ARMer9开发系统上跑起来,目前只需要关注如下的硬件区别,解决了下面这个问题,uboot就可以在ARMer9开发系统上正常地从串口输出,进入提示符。很多命令都可以使用,当然有些命令需要做修改。 SMDK2410 : nor flash 是AMD的1M的; ARMer9: 是Intel E28F128J3A, 两片并联,一共32M Bytes. 下载一个uboot-1.1.1.tar.bz2.; tar jxvf uboot-1.1.1.tar.bz2; 在uboot 目录board/smdk2410 下的flash.
[单片机]
uboot 下S3C6410 的LCD 显示
cf_console.c中属于框架,基本不用改动,添加lcd,主要是通过video_hw_init()来实现lcd控制器的初始化。 具体工作: 1、smdk6410的修改 #if 1 //enable LCD display #define CONFIG_CMD_BMP #define CONFIG_VIDEO #define CONFIG_VIDEO_S3C64X0 #define CONFIG_VIDEO_LOGO //display Linux Logo in upper left corner #define VIDEO_FB_16BPP_WORD_SWAP //for BMP logo #def
[单片机]
移植uboot-支持yaffs烧写,打补丁
1. 修改uboot支持yaffs 首先,每个命令都会对应一个文件,比如nand命令对应的common/cmd_nand.c 而我们使用nand命令时,便会进入do_nand()函数,位于common/cmd_nand.c 1.1do_nand()函数代码如下所示: int do_nand(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv ) { ... ... if (strncmp(cmd, read , 4) == 0 || strncmp(cmd, write , 5) == 0) { ... ... #ifdef CONFIG_C
[单片机]
TQ210 —— s5pv210 board.c分析(uboot第二阶段)
/* * (C) Copyright 2002-2006 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * * (C) Copyright 2002 * Sysgo Real-Time Solutions, GmbH www.elinos.com * Marius Groeger mgroeger@sysgo.de * * See file CREDITS for list of people who contributed to this * project. * * This program is free software; you ca
[单片机]
uboot-2011.12移植到S3C2440(序四)—— uboot.lds分析与解析
OUTPUT_FORMAT( elf32-littlearm , elf32-littlearm , elf32-littlearm ) ;指定输出可执行文件是elf格式,32位ARM指令,小端 OUTPUT_ARCH(arm) ;指定输出可执行文件的平台为ARM ENTRY(_start) ;指定输出可执行文件的起始代码段为_start. SECTIONS { . = 0x00000000 ; 指明目标代码的起始地址从0x0位置开始, . 代表的是当前位置 . = ALIGN(4) ; 代码以4字节对齐 .text : ;指定代码段 { cpu/arm920t/start
[单片机]