文章分类 - boot
摘要:below describes u-boot do_bootm flow: do_bootm ->do_bootm_states ->bootm_start /bootm_find_os /bootm_find_other ->bootm_load_os ->boot_fn = bootm_os_g
阅读全文
摘要:u-boot source code site: git clone git://git.denx.de/u-boot.gitgit clone https://git.toradex.com/u-boot-toradex.gitgit clone git://git.jdl.com/softwar
阅读全文
摘要:VERSION = 2016PATCHLEVEL = 01SUBLEVEL =EXTRAVERSION = -rc3NAME =Now, I will describle the u-boot fdt init draft flow.board_f.c-->init_sequence_f-->fdt...
阅读全文
摘要:一、uboot eMMC commandmmc infommc erasemmc readmmc writemmc rescanmmcfor example: Use tftp load data to DRAM 0x85000000 Then, mmc write 0x85000000 16 ...
阅读全文
摘要:这里主要介绍的是ARM芯片。 整个Flow如下: 1 设置域的权限 mcr p15, 0, r5, c3, c0, 0 2 设置TTB register, mcr p15, 0, r1, c2, c0, 将mmu table的地址赋值给r1。 有时候这里需要你提前设置TTB的control regi
阅读全文
摘要:一、调用流程。env_init()int env_init(void){gd->env_addr = (ulong)&default_environment[0];gd->env_valid = 0;return 0;}==>env_relocate();void env_relocat...
阅读全文
摘要:在uboot for mips start.S中有这样一段代码:bal 1f nop PTR _gp1: PTR_L gp, 0(ra)以此来获取gp指针,但是在mips4.4交叉编译会出错,拿不到争取的值;但是mips4.7.3确可以正常编译。
阅读全文
摘要:一、ARMARM 中 MMU 由SCTLR 的bit[0]控制;MRC p15, 0, , c1, c0, 0 ; Read SCTLR into Rtorr/bic 写 bit[0]MCR p15, 0, , c1, c0, 0 ; Write Rt to SCTLR二、...
阅读全文
摘要:一、在uboot ARM版本的start.S中你常常会看到下面的代码:mrc p15, 0, r0, c1, c0, 0 @ Read CP15 SCTRL Registerbic r0, r0, #0x1 @clear bit[0],disable MMU mcr p15, 0, r...
阅读全文
摘要:一、make xxxx_defconfigmake -f ./scripts/Makefile.build obj=scripts/basic cc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wstrict-prototypes -O2 -fomit-frame...
阅读全文
摘要:一、比如要加一个mips的board; 1.1 在board目录增加demo_mips, 并在其中添加对应的文件; 1.2./arch/mips/Kconfig 中增加 make menuconfig选项; config TARGET_DEMO_MIPS bool "Support ...
阅读全文
摘要:1 stack2 interrupt3 DRAM4 SP5 GP6 cache7 timer8 MMU体系结构有关,可以打开也可以不打开。一般uboot代码很少,为了简化设计,都是不使用mmu,如果不能绕开mmu的,通过最简单的逻辑地址==物理地址映射方式就可以了。链接 的时候会指定代码段,数据段的...
阅读全文
摘要:http://blog.csdn.net/hlchou/article/details/6581289
阅读全文
摘要:初步入门uboot,看着1000多行的makefile你可能会有种无从下手的感觉。这里介绍下我的方法,希望对你有所帮助:编译的时候make xxx_config然后make V=1把所有的log截取出来。然后搜索出ld的行数,如下图所示:好了,通过上面的图片,你就能很快的知道整个编译过程下编译的那个...
阅读全文
摘要:SPL是uboot之前运行的一段代码,代码流程:BootRom --> SPL --> u-boot --> kernel --> fs --> APP简单来讲SPL所做工作是:一些硬件的初始化,然后读取u-boot,最后调转至u-boot。在SPL截断还可以做一些芯片的校验,u-boot的校验,加...
阅读全文
摘要:1、wildcard : 扩展通配符SRC = $(wildcard *.c)等于指定编译当前目录下所有.c文件,如果还有子目录,比如子目录为inc,则再增加一个wildcard函数,象这样:SRC = $(wildcard *.c) $(wildcard inc/*.c)也可以指定汇编源程序:AS...
阅读全文
摘要:新版本:u-boot-2015.04旧版本:u-boot-2012.04.01一、编译方法1.1 其中最不同的就是我们所熟悉的在u-boot-2014.04中的boards.cfg和mkconfig没有了,而同时又在u-boot-2015.01的顶层目录下多出了一个configs目录,还有一个Kco...
阅读全文
摘要:源码版本:u-boot-2012.04.01 官网下载版本。#include #include #include #include .globl _start_start: b reset ldr pc, _undefined_instruction //设置arm的异常...
阅读全文
摘要:OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")OUTPUT_ARCH(arm) //elf 32位ARM指令,小端ENTRY(_start) //可执行文件的起始代码...
阅读全文
摘要:上流程图,方便看代码:最后的thekernel函数就会直接call到head.S里面的kernel_entry。下面有一段参看文章,将如何将uboot的参数传递到内核的:《如何实现uboot和linux之间的参数传递》来自:http://www.myext.cn/other/a_26189.html
阅读全文