uboot移植(九)——移植三星官方uboot(一)

在这里移植的uboot源码是三星官方提供的

1:移植前准备:

下载并解压uboot源代码,并创建Source Insight工程,注意linux源代码不能在

共享文件中直接解压,原因是linux中采用了很多链接功能,而这个功能在windows

里面是没有的,所以在共享文件夹中编译会出错,解压代码

tar -jxvf name

2:查看Makefile

在编译之前要看Makefile中的交叉编译工具链的设置是否和我们虚拟机中交叉编译工具链的配置相同(主要是安装路径和版本)

ifeq ($(ARCH),arm)
#CROSS_COMPILE = arm-linux-
#CROSS_COMPILE = /usr/local/arm/4.4.1-eabi-cortex-a8/usr/bin/arm-linux-
#CROSS_COMPILE = /usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-
CROSS_COMPILE = /usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-
endif

3:编译、烧录

使用make smdkv210single_config,对应include/configs/smdkv210single.h头文件

运行的现象为:SD checksun Error,开发板供电锁存开启

分析:

(1)打印的第一个SD CHECKSUM ERROR可以理解,因为那是SD0通道的iNand校验失败,

(2)开发板供电锁存是在uboot启动的第一阶段的lowlevel_init.S中完成的,开发板供电锁存但没有打印OK说明错误发生在开发板供电锁存与DDR初始化之间,分析可知开发板是没有PMIC(电源管理模块)的,所以当uboot跳转到PMIC_InitIp这个函数时就会发生死循环,所以这行代码应该屏蔽掉

//bl PMIC_InitIp

4: uboot成功启动,并打印出如下信息

SD checksum Error
OK

U-Boot 1.3.4 (Aug  5 2016 - 15:08:57) for SMDKV210

CPU:  [email protected](OK)
APLL = 1000MHz, HclkMsys = 200MHz, PclkMsys = 100MHz
MPLL = 667MHz, EPLL = 80MHz
HclkDsys = 166MHz, PclkDsys = 83MHz
HclkPsys = 133MHz, PclkPsys = 66MHz
SCLKA2M  = 200MHz
Serial = CLKUART
Board:   SMDKV210
DRAM:     1 GB
Flash:   8 MB
SD/MMC:  unrecognised EXT_CSD structure version 6
unrecognised EXT_CSD structure version 6
Card init fail!
0 MB
NAND:    0 MB
The input address don‘t need a virtual-to-physical translation : 23e9c008
*** Warning - using default environment

In:      serial
Out:     serial
Err:     serial
checking mode for fastboot ...
Hit any key to stop autoboot:  0

no devices available

no devices available
get_format
-------- 0 --------
Wrong Image Format for bootm command
ERROR: can‘t get kernel image!
SMDKV210 #

至此说明uboot已经成功启动,只是uboot启动第二阶段的配置有不正确,需要进一步修改

时间: 2024-12-20 02:45:16

uboot移植(九)——移植三星官方uboot(一)的相关文章

嵌入式linux开发uboot移植(七)——三星官方uboot的移植

嵌入式linux开发uboot移植(七)--三星官方uboot的移植 友善之臂Smart210开发板是基于三星SMDKV210评估板裁剪.调整而来的.因此三星官方发布的基于SMDKV210评估板的uboot是移植uboot到Smart210开发板的最合适uboot版本.本文将SMDKV210的uboot移植到Smart210开发板.Smart210开发板的配置如下: SoC:Samsung S5PV210 SDRAM:512MB DDR2 RAM FLASH存储:2G MLC NAND Flas

uboot移植(十)——移植三星官方uboot(二)

通过第一阶段的移植串口2打印了如下信息 SD checksum Error OK U-Boot 1.3.4 (Aug  5 2016 - 15:08:57) for SMDKV210 CPU:  [email protected](OK) APLL = 1000MHz, HclkMsys = 200MHz, PclkMsys = 100MHz MPLL = 667MHz, EPLL = 80MHz HclkDsys = 166MHz, PclkDsys = 83MHz HclkPsys = 13

S5PV210-kernel-从三星官方的内核开始移植

1.拿到三星官方移植过的内核 2.在Linux下解压一份在共享目录下,解压一份在Linux的源生目录下.一份编辑,一份编译 3.建立SI工程,添加kernel源代码 4.在Linux下先看makefile中的CROSS_COMPINE交叉编译工具链和ARCH的架构对不对 5.在arch/arm/configs这个目录下找到和我们开发板最接近的一个配置,用这个配置文件,我们在kernel根目录下,make xx_defconfig这个配置文件,得到一个将这个配置文件的内容复制到.config的这个

uboot移植之九鼎提供的uboot的文件夹分析

文件夹分析 (1)api:提供了uboot在执行时用到的一些函数,这些函数都是硬件无关的,所以和我们的移植没多大关系 (2)api_examples:api的示例代码 (3)board:开发板相关的文件夹,这个文件夹里面存放的一个文件夹对应一款开发板或者是一个芯片厂商.我们在config配置的时候就是根据这个文件夹下面的子文件夹来选择开发板信息.需要注意一点,由于历史原因,一开始开发板种类比较少,所以board存放的子文件夹就是对应的开发板,但是随着电子信息的发展,开发板越来越多,所以就在ubo

2.uboot和系统移植-第5部分-2.5.uboot源码分析1-启动第一阶段

第一部分.章节目录 2.5.1.start.S引入 2.5.2.start.S解析1 2.5.3.start.S解析2 2.5.4.start.S解析3 2.5.5.start.S解析4 2.5.6.start.S解析5 2.5.7.start.S解析6 2.5.8.start.S解析7 2.5.9.uboot重定位详解 2.5.10.start.S解析8 2.5.11.start.S解析9 2.5.12.start.S解析10 2.5.13.start.S解析11 第二部分.章节介绍 2.5.

Linux之uboot分析与移植20160601

说一下uboot分析与移植: 1.下载.建立source insight工程.编译.烧写.如果无运行分析原因 tar xjf u-boot-2012.04.01.tar.bz2 cd u-boot-2012.04.01 make smdk2410_config make 2. 分析u-boot: 通过链接命令分析组成文件.阅读代码分析启动过程 a. 初始化硬件:关看门狗.设置时钟.设置SDRAM.初始化NAND FLASH b. 如果bootloader比较大,要把它重定位到SDRAM c. 把

U-Boot移植_DDR3移植

疯雨-版权所有,转载请注明[http://blog.csdn.net/u010346967] U-Boot移植_DDR3移植:首先在这里感谢网友fengtian的整理,没有你就没有这篇文章 在系统上电后,CPU并不知道外部的RAM是什么类型的存储器,因此U-Boot需要对CPU进行RAM初始化设置,然后将程序拷贝到RAM中运行. 本系统采用的RAM是DDR3类型存储芯片,容量是4GB,频率是1066KHz:系统从eMMC中启动.采用的是U-Boot-2009版,linux3.0.35系统内核,U

【课程分享】深入浅出嵌入式linux系统移植开发 (环境搭建、uboot的移植、嵌入式内核的配置与编译)

深入浅出嵌入式linux系统移植开发 (环境搭建.uboot的移植.嵌入式内核的配置与编译) 亲爱的网友,我这里有套课程想和大家分享,如果对这个课程有兴趣的,可以加我的QQ2059055336和我联系. 课程内容简介 本课程重点是给大家讲解嵌入式linux系统移植的开发方法,采用理论与实践,硬件与软件相结合的方法. 1.在每节开始之前先简单回顾上一节所讲的主要内容,并对本节所讲的内容先进行概述,讲解概念.技术要点,设计实现思路等内容,最后总结本次课程的要掌握的要点. 2.在讲课的过程中对关键技术

解决三星官方移植的内核默认是没有打开支持V4L USB devices

在linux比较新的kernel,都标配了各类摄像头的驱动支持,不用我们自己移植驱动,只需通过make menuconfig配置内核支持我们所需的摄像头类型即可.以下是在三星官方内核中配置V4L类型摄像头的方法. 三星官方的内核默认是没有V4L USB devices 这个选项的,但是实际是只是被[屏蔽了] 1.通过 grep "V4L USB devices" -r -n   得到以下信息: arch/ia64/configs/zx1_defconfig:909:# V4L USB