随笔分类 - uboot
摘要:uboot 环境变量实现原理: 首先我们先要搞清楚uboot中环境变量的作用,uboot中环境变量的作用就是在不改变源码、不用重新编译的情况下,可以使我们通过 设置环境变量的值来改变uboot的一些设置,如bootdelay时间、机器码的值等等。 下面我们来具体看一下uboot中环境变量如何实现 首
        阅读全文
            
摘要:1:做好上一章的准备工作,下面我们开始移植uboot 首先修改交叉编译工具链:在主Makefile文件中的交叉编译工具链修改为: 下面把烧录文件移植到uboot中; 把三星移植好的uboot中的sd_fusing 复制到新的uboot的根目录中,烧录sd卡 输出信息如下,说明校验头失败; 分析sd_
        阅读全文
            
摘要:1:uboot下载地址:ftp://ftp.denx.de/pub/u-boot/ 我们下载的版本是:u-boot-2013.10.tar.bz2; 2:下载好以后,删除里面的相关文件 因为三星是的s5pv1XX这个cpu做了很多个板子,我们在移植的时候虽然与三星的开发板不同但是用的cpu是相同的,
        阅读全文
            
摘要:1:选择三星移植好的uboot,首先进行配置 因为我们用的是210的cpu所以选择三星的210开发板的配置: 在开始移植之前我们首先要把不相关的cpu、board、lib目录删除 首先来看board目录下:把不相关的开发板的文件全部删除只保留:board->samsung->common文件夹以及b
        阅读全文
            
摘要:一:NAT方式上网: (1):菜单栏中虚拟机-》设置-》网络适配器-》NAT模式 (2):/etc/network/interfaces文件修改为: 之前这个文件中为: auto lo iface lo inet loopback 加上上面那些内容 把这段删除 (3):ifdown ens33 //
        阅读全文
            
摘要:1:DM9000原理分析 s5pv210接DM9000 底板图: 重要的引脚有:IOR、IOW、AEN、CMD、INT、RST 以及数据引脚 SD0-SD15 看数据手册这些引脚的作用: IOR:读选择引脚,低电平有效,即低电平是读; IOW:写选择引脚,低电平有效,即低电平写; CS (chip 
        阅读全文
            
摘要:1:MMC驱动初始化是在start_armboot函数中 setup_hsmmc_cfg_gpio:初始化相关GPIO可以对数据手册来看比较简单; 下面来看一下smdk_s3c_hsmmc_init函数 这个函数实际是调用的s3c_hsmmc_initialize 这个函数 s3c_hsmmc_in
        阅读全文
            
摘要:1:什么是UBOOT,为什么要有UBOOT? UBOOT的主要作用是用来启动linux内核,因为CPU不能直接从块设备中执行代码,需要把块设备中的程序复制到内存中,而复制之前还需要进行很多初始化工作,如时钟、串口、dram等; 如要想让CPU启动linux内核,只能通过另外的程序,进行必要的初始化工
        阅读全文
            
摘要:uboot中命令行的实现原理: uboot中设备的输入输出是通过串口来作为标准输入输出的,我们可以通过securecrt软件来接受设备从串口发出的信息,也可以通过securecrt软件写入串口向设备中发送命令; 所以在设备调试的时候通常都是通过打印串口信息调试的; 第一步:在主函中设置一个死循环用来
        阅读全文
            
摘要:恢复内容开始 1:初始化堆管理器 malloc的初始化只设置了堆的start地址和end地址、以及一个malloc_brk,uboot的堆内存管理机制重新开一个章节详解介绍; 2:SD/MMC的初始化:输出SD/MMC:真正执行硬件初始化的函数是 cpu_mmc_init(bis); 3:env_r
        阅读全文
            
摘要:1:上一节讲到start.S中进行了一系列的SoC相关硬件初始化以后进行了长跳转到start_armboot 函数中; start_armboot进一步初始化board中硬件,并设置了uboot下的命令行、环境变量、基本命令、跳转到kernel 下面详细介绍start_armboot中的代码: 第一
        阅读全文
            
摘要:uboot中start.S文件详解 1:第一段代码 头文件包含config.h在mkconfig脚本中生成,内容为#include <configs/x210.h> 头文件包含version.h文件中的内容是#include "version_autogenerated.h" version_aut
        阅读全文
            
摘要:1:经过之前的分析我们知道Makefile主要做的事情有: (1):首先配置makefile make x210_sd_config 配置时实际上执行的是:./mkconfig xd_210 arm s5pc11x x210 samsung s5pc110 ./mkconfig 为一个shell脚本
        阅读全文
            
摘要:autoconf.mk uboot的顶层Makefile中有如下的一段代码 [plain] view plaincopy # # Auto-generate the autoconf.mk file (which is included by all makefiles) # # This targ
        阅读全文
            
摘要:Makefile生成自动依赖的方法有两种: 1. 将所有.o文件的依赖关系写入单独文件,然后在Makefile中调用该文件 2. 每个.c文件对应一个.d文件,将依赖关系写入.d文件中 一、对于第一种方法,Makefile的写法如下: #file start CC = gcc SRCS := $(w
        阅读全文
            
摘要:1:timer计时器原理 计时器内部实质是一个计数器,计数器工作在一定的时钟频率下,比如200KHz(每秒计数200 000下),计时器内部有一个TCNT寄存器,这是一个down-counter(减计数器) 每个时钟频率减1,我们可以设置TCNT里的数字(比如200 000)当TCNT中的数值减为0
        阅读全文
            
摘要:1:经过上一节的分析,如果采用SECTION虚拟地址映射的话; 程序员只需要做的事情: (1) 建立转换表,Tanslation Table; (2) 将TTB(转换表基地址Tanslation Table Base)写入协处理器CP15的C2寄存器,这里要注意转换表 基地址为16K对齐的(因为40
        阅读全文
            
 
                     
                    
                 
                    
                
 
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号